Multiple Prototype scripts loaded in the same project

Evgeny Goldin
Wed, 22 Aug 2007 11:25:21 -0000

Hello,

As more and more libraries are using a Prototype library - multiple
versions of it may be loaded in the same project without people even
noticing that.

For example, we''re developing a JSF application and use Ajax4jsf
library. We use a Prototype by ourselves (just upgraded to RC of 1.6)
but Ajax4jsf also comes with it''s own Prototype (version 1.5.0).
Ajax4jsf folks modified the file and added the following header to it:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/*
 * Prolog for avoid execute Prototype library twice.
 */

//if(!window.Prototype){
...
/*
* final trail for ajax jsf library
*/
// }
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

So how about Prototype will do so my itself, I mean it''ll check if any
other version is already loaded and behave accordingly (throw an
error, do nothing if other version is more recent, override if other
version is older).
I''m sure this will help to prevent lot''s of situations where
Prototype
is loaded more than once by different libraries each one brining it''s
own (and probably conflicting at some point) Prototype version.

The situation is very similar when, say, different Java third-party
libraries bring different versions of other libraries they depend on
(like Log4j). Today Maven helps to solve it but it''s still a very well
known issue.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Spinoffs" group.
To post to this group, send email to
rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-spinoffs?hl=en
-~----------~----~----~----~------~----~------~--~---