Today we tagged the first public release candidate of Prototype 1.6.1. (What happened to RC1? Long story.) While there are more minor fixes we’d like to get into this release, we decided an interim release was necessary because of the final release of Internet Explorer 8 last week.

This is the first public release of Prototype that is fully compatible — and fully optimized for — Internet Explorer 8’s “super-standards” mode. In particular, Prototype now takes advantage of IE8’s support of the Selectors API and its ability to extend the prototypes of DOM elements.

What’s new?

  • Full compatibility with Internet Explorer 8. Juriy has spearheaded the effort to replace most of our IE “sniffs” into outright capability checks — making it far easier to support IE8 in both “super-standards” mode and compatibility mode.
  • Element storage, a feature announced previously. Safely associate complex metadata with individual elements.
  • mouseenter and mouseleave events — simulating the IE-proprietary events that tend to be far more useful than mouseover and mouseout.
  • An Element#clone method for cloning DOM nodes in a way that lets you perform “cleanup” on the new copies.

What’s been improved?

  • Better housekeeping on event handlers in order to prevent memory leaks.
  • Better performance in Function#bind, Element#down, and a number of other often-used methods.
  • A number of bug fixes.

Consult the CHANGELOG for more details.

In addition to the code itself, the 1.6.1 release features Prototype’s embrace of two other excellent projects we’ve been working on: Sprockets (JavaScript concatenation) and PDoc (inline documentation). Sprockets is now used to “build” Prototype into a single file for distribution. PDoc will be the way we document the framework from now on. The official API docs aren’t quite ready yet, but they’ll be ready for the final release of 1.6.1.

Download, Report Bugs, and Get Help

Thanks to the many contributors who made this release possible!