[ https://issues.apache.org/jira/browse/TAP5-486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12668931#action_12668931 ]
Robert Zeigler commented on TAP5-486: ------------------------------------- I'm with Dan. This is a major change. The @PrototypeSupport is a nice idea, except that it requires more than minor amounts of work for authors of complex applications; backwards compatibility, to me, means that if I absolutely have to make changes, those changes should take less than 30 minutes for a single developer to make for a complex app. For example, I recently upgraded a dependency in a complex application from cayenne 2.0.4 to cayenne 3.0M5. Although the change resulted in various "deprecated" warnings, the application still functioned correctly without any further changes on my part, meaning that I could fix the warnings at my leisure. So if we were going to change the default js library, the change /has/ to be done in such a way as to make the burden of the change shouldered by tapestry, and not the end-developer. I think @PrototypeSupport is an /interesting/ idea, but it's one that requires too high an "activation energy": too much effort. If you're going to make the change, then I think that you should spend time developing a tapestry js api into which various framework can be plugged. This idea has been proposed before; I never much cared for it; more cruft on top of cruft. But if you want to switch the default js library to jquery, then this is the way to go. That way, previously written applications can override the default library contributions and contribute prototype, instead. There could even be a small "t5prototype" library that does this contributing for you, so all you have to do as a user to maintain the previous behavior is include the extra dependency. That's my $0.02. > Switch Tapestry's built-in JavaScript support from Prototype to jQuery > ---------------------------------------------------------------------- > > Key: TAP5-486 > URL: https://issues.apache.org/jira/browse/TAP5-486 > Project: Tapestry 5 > Issue Type: Improvement > Components: tapestry-core > Affects Versions: 5.1.0.0 > Reporter: Howard M. Lewis Ship > > Like rats deserting a sinking ship ... > This is not a definitive requirement; I've created this issue to promote > discussion. > It's quite likely that a move like this could be accomplished quite smoothly > for users who are meerly consumers of JavaScript components; authors of > JavaScript components would have to make some changes. > Possibly we should code the jQuery stack from the get-go to NOT use the $() > method, but instead use j$(). That extra character to type could make all the > difference is allowing a smooth upgrade, where jQuery becomes the default, > but prototype/scriptaculous can still be used. > Possibly a new annotation, @PrototypeSupport for components to ensure that > the Prototype libraries are available for compatibility? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.