Two weeks ago we released YUI 3.7.0pr1, today we’re releasing the second and final preview release for the current development sprint. YUI 3.7.0pr2 is now available to the developer community for feedback and testing on the Yahoo! CDN (and as a download), and our Staging website has the updated documentation.
To reiterate the importance of testing our preview releases: we rely on your feedback from testing these preview releases in your real world applications, this gives us the final vote of confidence in the stability of the code, beyond what our automated and manual testing provides.
Next week, on September 18, 2012, we will be cutting the next production-ready release of YUI. We are planning for this release to be 3.7.0 GA and be based on what’s currently in our 3.x branch. If there are any critical issues or breaking changes discovered in 3.7.0pr2 that cannot be resolved before Tuesday, our backup plan is to release 3.6.1 from our master branch.
For this release, all modules have been minified using UglifyJS! We have removed all of the old Ant build files from our 3.x branch, and rebuilt all of our modules using the latest version of Shifter, our new build tool, which uses UglifyJS by default.
We’ve rigorously tested the rebuilt modules on 20+ devices using Yeti and have not seen any differences with the minified files using UglifyJS compared to YUI Compressor, besides being ~5% smaller in file size.
If you notice something not working right with the new minified files, please don’t hesitate to file a ticket.
A bunch of lower-level work has went into Graphics and Charts recently, and we are encouraging anyone who’s using the Graphics library, and/or Charts to test 3.7.0pr2 in their applications.
toBack()methods for managing a shape’s depth.
strokeattributes using the newly created
shape-animsubmodule. The submodule also allows for animating transforms (formally
event-move) are now supported on IE 10 (Windows 8 tablets and desktops), and they feel pretty snappy too!
"tap" event normalizes user interactions across touch and mouse or pointer based input devices. This can be used by developers to build input device agnostic components which behave the same in response to either touch or mouse based interaction.
On a touchscreen,
"tap" is like
"click", only it requires much less finger-down time since it listens to touch events, but reverts to mouse events if touch is not supported.
Thanks to Andres Garza and Christopher Bartz for the original implementation, and Michael for the gallery module!
node-scroll-info plugin is now available. This
Y.Node plugin provides convenient events and methods related to scrolling. This could be used, for example, to implement infinite scrolling, or to lazy-load content based on the current scroll position.
Ryan extracted this module from his work on improving the infinite scrolling on SmugMug’s search results page and contributed back to YUI. You can read more about how this module is used in his post: Speeding Up SmugMug’s Search.
After reviewing the ScrollView changes in 3.7.0pr1, the following the larger changes introduced in this preview release:
axisattribute. When possible, it’s best to define each of these
The work that has gone into improving event performance is just the beginning; you can expect more performance tweaks for events as we move into the next development sprint. The next area we wanted to focus on is to reduce the amount of code we execute for the non-bubbling, non-broadcasting, no-subscribers use case. To stay up to date with the ongoing event performance changes and benchmark numbers, CC yourself on Ticket #2532411.
The two major additions to the App Framework for 3.7.0, server rendered views support and route-specific middleware, appear to be very solid and useful to people. These will be the only major changes to the App Framework for 3.7.0, as the other planned changes will happen in the next development sprint.
For a complete list of changes since 3.6.0, please refer to the change history rollup for this release.
If you find a bug, or want to suggest an enhancement, please don’t hesitate to file a ticket. Thanks, and happy testing!