Prototype 1.6.0.2: Bug fixes, performance improvements, and security
Today we’re releasing Prototype 1.6.0.2 to address several compatibility and performance issues and to protect against a potential security issue for developers using Prototype outside of a web browser environment.
Prototype 1.6.0.2 is a backwards-compatible, drop-in replacement recommended for all 1.6.0 users. We’ve fixed 28 bugs and made over a dozen improvements to the code base, including performance improvements for CSS selectors in Safari 3 and for the Element#up/#down/#next/#previous and Event#findElement methods in all browsers. We’re also now officially supporting the Opera browser, version 9.25 and higher. You can get the full scoop on all the changes in the 1.6.0.2 CHANGELOG.
Among the numerous bug fixes is a change to the way Ajax.Request handles automatic JavaScript response evaluation. Previous versions of Prototype relied on the browser’s XMLHttpRequest same-origin policy to ensure that response bodies with a content type of text/javascript were safe to evaluate. Alexey Feldgendler from Opera kindly alerted us to the possibility that certain non-browser environments (like Opera’s widget system) do not enforce the same-origin policy and as such may be subject to cross-domain script exploits. To combat this we’ve added an Ajax.Request#isSameOrigin method which returns true when a request is being made to the same domain, port, and protocol as the document. Furthermore, Prototype will no longer automatically evaulate JavaScript response bodies when this method returns false.
We’ve also backported the aforementioned security fix for those of you still using Prototype 1.5. Prototype 1.5.1.2 is a backwards-compatible, drop-in replacement recommended for all 1.5.1 and 1.5.1.1 users.
Download, report bugs, and get help
- Download Prototype 1.6.0.2
- Submit bug reports to Rails Trac
- Get Prototype help on the rails-spinoffs mailing list or #prototype IRC channel
- Interact with the Core Team on the prototype-core mailing list
As always, thanks to the core team and the many users who contributed bug reports and well-tested patches for this release.
Sorry, comments are closed for this article.


Comments
Form.serialize() still doesn’t recognize multiple submit buttons, it recognizes only the first submit-button.
thx for reading
ps. in either case prototype.js is a wonderfull framwork.
Nice work, -28 bugs :) BTW bought the Bungee book… Very good reading indeed, recommended to everyone even remotely connected to Prototype. Peace!
Good job! Trying it out. Is it me or did it actually go down in size a little?
Should we expect an updated scriptaculous in the near future as well?
Thanks for this great work !
Sebastian
Great project. Dates on your archives on the download page are swapped about.
Concerning the backport of Prototype 1.5.1.2, is script.aculo.us 1.7.3 beta 3 the only version that will work with it?
Thanks for your work, I appreciate the official support for Opera 9! ^^
Thanks especially for Opera support (finally, yay!)... Whole Internet seems to neglect Opera, like Google O_O
“We’re also now officially supporting the Opera browser, version 9.25 and higher.”
three words : about. damn. time. :)
Opera’s a teriffic browser that deserves far more recognition and support than it’s been getting, and this is a great step in that direction.
Best framwork ever. But can’t you guys make some costum frameworks? Like only ajax functions ecc. It is not cool having 100KBs of js where I only use 2KB of it’s code xD
Anyways I have compressed the packet and now it’s only 18KB. But..
cool thanks for supporting opera browser
Best framework ever I have seen, thanks to every one who have done a great job for Web world http://www.w3answers.com
Many thanks for an excellent javascript library. I have been developing web applications for 7 years, and there is nothing out there as neat, perfect and cool as Prototype.
i have a problem in method readAttribute
that’s not work in IE 7.
please help me.
Hi Hwang,
For assistance requests, please use our mailing list... and if you found a bug, please file a bug report. Thanks.