Notes on the New YUI Library Update

I hope you already saw the good news over on the YUI Blog: We just released a new version of the YUI Library, bringing it to v0.12. We’ve been releasing updates about monthly, but this is a substantial one with several changes, and moves us beyond the v0.11 branch after several rounds of dot releases at that level.

What’s new in YUI v0.12? Thanks for asking:

  1. Matt Sweeney has contributed a potent new control, TabView, built with the same high-quality thinking obvious in his Dom and Animation utilities. Want to progressively enhance existing markup with useful but unobtrusive JavaScript? Us too. Prefer completely built-from-script controls? No problem. Want the tabs on the top, right, bottom, or left? All supported out of the box. You can populate the tabs with static on-the-page content, or, of course, pull it down on-demand with Ajax. It’s all good.
  2. Adam Moore has completely reworked our generated-docs API documentation system (see the API docs for Dom), and it’s pretty damn slick. It’s much smarter now, and provides richer information cross-linked in more usable ways. Don’t miss the autocomplete-powered search on the API Docs main page. I was happy to read Carson’s comment on the YUIBlog: “[the] new documentation about brought a tear to my eye.”
  3. Steven Peterson revisited his Calendar control in a serious way, and the results are great. In addition to the new and improved multi-calendar interface, he created in-depth tutorial-style examples of YUI Calendar highlighting all the key features and use cases for Calendar (as well as for the entire Container family). There has been more than one question on the ydn-javascript mailing list about how to do this or that with Calendar of Container, and he’s taken many of those and answers them definitively in the new well-written tutorials.
  4. Eric Miraglia did selfless work, as always, to offer some key new features on the YUI site. Don’t miss the YUI Theater, with its ever-growing collection of video lectures and instruction (including great content from Yahoo!’s Douglas Crockford, and Firebug’s Joe Hewitt). On the home page itself, notice the piped-in live content from the mailing list and our blog; I hope that will bring even more people into the conversation. On each component’s landing page, notice one-click access to all the examples from the right column under the component’s cheat sheet. Eric has also brought all the cheat sheets up-to-date to this release; there’s a new cheat sheets for YUI’s CSS foundation files (Reset, Fonts, Grids), and for TabView.
  5. The rest of the team has been busy too. Our director, Thomas Sha, improved Connection so that when you’re uploading files via setForm() and the asyncRequest includes a POST data argument, the appendPostData() method will automagically create hidden input fields for each postData label/value and append each field to the form object. Niiice. Jenny Han modified AutoComplete so that it’s a bit more efficient (always-on container don’t send show and hide events), and a bit more powerful (minQueryLength now supports zero and negative numbers). If the zillion options weren’t enough before, now you’ve got a zillion plus two. Todd Kloots didn’t rest either, and Menu now has more elegant internals, and a bit more functionality exposed.
  6. For my part, I completed a pretty substantial rewiring of YUI Grids. The most exciting change is that Grids now offers Liquid/Fluid Layouts out of the box. At what cost? Just seven-tenths of a kb of new page weight. In addition, there’s more power, more stability, and more flexibility across the board. I’m a big fan of fluid layouts, but if Fluid isn’t your thing this release also has 950px page widths baked in, in addition to the original 750px width. Best of all, if you don’t want to use Fluid or the two preset sizes, it’s super easy to set your own custom width. The Template Presets and Nesting Grids offer the same functionality as always, but they’re a bit more bulletproof now, and they now enjoy spreading their wings within the new page widths. As before, the entire system is in ems and percents, so it breathes with the user’s font size – a favorite accessibility and usability feature of mine. The new system is fully backward-compatible, so give it a shot and let me know how it goes.

I hope you enjoy all the new features in this release. I’d love to hear your feedback in the comments below, or straight on the ydn-javascript mailing list.

Thanks,
Nate