Earlier this week (http://lists.wikimedia.org/pipermail/wikitech-l/2012-January/057638.html), I wrote about the upcoming 1.19 release and the changes that need to be made on-wiki to provide a consistent experience.
I've been thinking about this and getting input from on-wiki administrators, but I'm interested in your thoughts,
I have talked to Krinkle and I realize his concerns -- javascript dependencies really should be enumerated. Still, I'm concerned about the experience for users who have installed several gadgets (which we can test in Krinkle's "Tour de Wiki") as well as possible UserScripts (which we really can't test, at least not at as easily or as quickly).
I adjusted the [[MediaWiki:Gadgets-definition]] on enwiki.beta and let the people on enwiki know what I had found, but I think this sort of adjustment will be needed in more places. For proof, just look at http://de.wikipedia.beta.wmflabs.org/wiki/Wikipedia:Hauptseite?debug=true in FireBug.
You'll see (or, at least, I see) two un-fulfilled dependencies on mw.util.
Some sort of dependency needs to be added on mw.util -- either just preload it or make it log a message when there is an unenumerated dependency on it (and other necessary js dependencies).
This, plus a message on WP:VPT or the like, would be a way for users and gadget authors to update their javascript. It be a great way to notify users of the deprecation from 1.18 to 1.20 (or 1.21) without providing a horribly shocking experience after we upgrade the cluster.
Let's ensure that the Wiki* experience is consistent. We can avoid some of the mistakes like those that happened when we introduced ResourceLoader. Backwards compatibility is important. If we upgrade MediaWiki and we know that people are going to complain because a widespread dependency (like mw.util) disappeared, let's eliminate that "experience gap".
Mark.