Page MenuHomePhabricator

Upgrade jQuery from 1.8.x to 1.11.x
Closed, ResolvedPublic

Description

There were a lot of changes in 1.9, so upgrading broke a lot of stuff..

Now 1.10 is out (hey, they're following our number sequencing), it sounds like it's going to get even worse: "Several APIs were deprecated in 1.9.0 and have now been removed."

I'm not sure if we should upgrade to 1.9 as an intermediatary, or just jump straight to 1.10, or something else.

Upgrade to jQuery 1.9.1 and the addition of jQuery Migrate are in https://gerrit.wikimedia.org/r/#/c/47844/


Version: 1.22.0
Severity: enhancement
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=47076

Details

Reference
bz44740

Related Objects

StatusSubtypeAssignedTask
ResolvedKrinkle
ResolvedNone
ResolvedRillke
DeclinedNone
Resolvedsanthosh
ResolvedEsanders
Resolved Gilles
Resolvedmatmarex
ResolvedTheDJ
ResolvedFoxtrott
ResolvedNone
ResolvedSe4598
Resolvedsanthosh
Resolvedsanthosh
ResolvedNone
Resolved Gilles
ResolvedKrinkle
ResolvedKrinkle
ResolvedNone
ResolvedNone
ResolvedRillke
ResolvedJdforrester-WMF
ResolvedFoxtrott
ResolvedTheDJ
ResolvedNone
ResolvedKrinkle
ResolvedKrinkle
DeclinedNone
Resolvedmatmarex
ResolvedNone
Resolved Mattflaschen-WMF
ResolvedKrenair
Resolved Mattflaschen-WMF
Resolved Mattflaschen-WMF
Resolved Mattflaschen-WMF
Resolved Mattflaschen-WMF
Resolved Mattflaschen-WMF

Event Timeline

bzimport raised the priority of this task from to High.Nov 22 2014, 1:39 AM
bzimport set Reference to bz44740.

Change-Id: Ia087bdbc7c120dd07134afcd9fc99a0accab7ab5

When I tried this locally I got several uncaught exceptions.

One of them highlighted here (consider this a blocker for upgrading to jquery 1.9):

Uncaught TypeError: Cannot read property 'style' of undefined
load.php:6946| curCSS
load.php:6895| jQuery.extend.css
load.php:7152| actualDisplay
load.php:7123| css_defaultDisplay
load.php:6704| showHide
load.php:6757| jQuery.fn.extend.show
load.php:9116| jQuery.each.jQuery.fn.(anonymous function)
jquery.ui.dialog.js:117| $.widget._create
jquery.ui.widget.js:168| $.Widget._createWidget
jquery.ui.widget.js:65 | $.(anonymous function).(anonymous function)
jquery.ui.widget.js:131| (anonymous function)
load.php:650| jQuery.extend.each
load.php:270| jQuery.fn.jQuery.each
jquery.ui.widget.js:126 | $.fn.(anonymous function)
mediawiki.feedback.js:138| mw.Feedback.setup
mediawiki.feedback.js:66 | mw.Feedback

Stack:

Looks like actualDisplay incorrectly assumes that .body is already initialised, as a result of the silently failed .appendTo() action the jquery collection is emptied and elem[0] is undefined and elem[0].style is illegal.

  • Bug 48895 has been marked as a duplicate of this bug. ***

1.10.2 is the current older stable release.

We can't really go to 2.0.3 for a while due to "but does not support Internet Explorer 6, 7, or 8" - we'd need to get that support dropped from core MW.

Should be getting this upgrade done be a higher priority? At least with a mix of 1.10 and jQuery Migrate...

Even with Migrate, there are breaking changes between our current version and the version that migrate patches to.

Nothing we can't handle, but we need to:

  • Fix core and all extensions (at least the wmf-deployed ones, and leave release notes for others)
  • Announce on wikitech-ambassadors (and elsewhere) about these changes and give them a bit of time to check their stuff and fixup where needed.

I'd like to take that on, but if someone else can be assigned that's fine to (I can consult where needed). 'til now I've been too busy elsewhere.

1.10 to 1.11 is minor. No need for a separate bug.

  • Bug 64433 has been marked as a duplicate of this bug. ***

Change 131494 had a related patch set uploaded by Krinkle:
Add jQuery Migrate

https://gerrit.wikimedia.org/r/131494

Change 131494 merged by jenkins-bot:
Add jQuery Migrate

https://gerrit.wikimedia.org/r/131494

Change 133084 had a related patch set uploaded by Krinkle:
Add jQuery Migrate

https://gerrit.wikimedia.org/r/133084

Change 133084 merged by jenkins-bot:
Add jQuery Migrate

https://gerrit.wikimedia.org/r/133084

(O Gerrit Bot, Where Art Thou?)

Changed merged by jenkins-bot:
Upgrade jQuery to 1.11.1
Change-Id: I097c9639e366eb394dcf2f3c3c62edfcc974155c

(In reply to Krinkle from comment #12)

(O Gerrit Bot, Where Art Thou?)

bug 65370

Related patch-set:

Remove jQuery.Migrate from default, moving to an optional module

https://gerrit.wikimedia.org/r/133719

Garr, please ignore the last comment. Was already covered in comment 12.

Change 134607 had a related patch set uploaded by Krinkle:
Remove jQuery Migrate

https://gerrit.wikimedia.org/r/134607

Change 134607 abandoned by Krinkle:
Remove jQuery Migrate

Reason:
Closing in favour of If1c9ab722c7ce.

https://gerrit.wikimedia.org/r/134607

Change 137053 had a related patch set uploaded by Krinkle:
Set $wgIncludejQueryMigrate = true; for all wikis

https://gerrit.wikimedia.org/r/137053

Change 133719 merged by jenkins-bot:
Disable jQuery Migrate by default (enable via $wgIncludejQueryMigrate)

https://gerrit.wikimedia.org/r/133719

Change 137053 merged by jenkins-bot:
Set $wgIncludejQueryMigrate = true; for all wikis

https://gerrit.wikimedia.org/r/137053

Change 177981 had a related patch set uploaded (by PleaseStand):
RELEASE-NOTES-1.25: bug 44740 -> T46740

https://gerrit.wikimedia.org/r/177981

Patch-For-Review

Change 177981 had a related patch set uploaded (by PleaseStand):
RELEASE-NOTES-1.25: bug 44740 -> T46740

https://gerrit.wikimedia.org/r/177981

Patch-For-Review

Change 177981 merged by jenkins-bot:
RELEASE-NOTES-1.25: bug 44740 -> T46740

https://gerrit.wikimedia.org/r/177981

Change 177981 merged by jenkins-bot:
RELEASE-NOTES-1.25: bug 44740 -> T46740

https://gerrit.wikimedia.org/r/177981

Note, the patch removing jQuery Migrate (and thus fully finalizing the upgrade) was c393f8747, merged on December 4.