Page MenuHomePhabricator

Kartographer is broken by jQuery 3
Closed, ResolvedPublic

Description

Repro:

  • Have a wiki with jQuery 3 enabled (i.e. the default $wgUsejQueryThree = true; left alone)
  • Enable Kartographer
  • Add a map to some page, for example:
<mapframe text="India (80,20)" width=700 height=400 zoom=3 longitude="0" latitude="0">
{
  "type": "Feature",
  "geometry": { "type": "Point", "coordinates": [80,20] }
}
</mapframe>
  • Click on the maximize map button. #/map/0 gets added to the page URL, but the map never goes fullscreen.

After disabling jQuery 3, the map works.

Event Timeline

@MaxSem Do you have more information as to why it fails? It is unclear to me what the next action item is here. Should this block enabling jQuery 3 on Beta?

Currently there's very little I can do to move it forward, as enabling it on Beta is the next step to finding any remaining problems.

enabling it on Beta is the next step to finding any remaining problems

You can test it in Vagrant.

Do you have more information as to why it fails?

It emits an error that's cryptic due to T168086: jQuery 3 catches all exceptions within promises, however it's still present without JQ3 when Kartographer works.

Gilles triaged this task as High priority.
Gilles subscribed.

This is the only thing blocking jQuery 3 deployment to beta

FYI, Julien is not working on this stuff anymore, so assigning it to him will do nothing. @Krinkle, I think you can flip the switch on betalabs as long as discovered problems are addressed and the site remains a useful testing platform in the long run.

Who maintains Kartographer, then?

Same as Karthotherian - noone. I volunteer on occasion when I have some time at my new job, so does Max. A few more amazing individuals have volunteered their dev time to keep it afloat. @Pnorman is working on the new map style and fixes some data-related problems. @Gehel watches over the servers. This is what I have observed by watching the tickets & the public channels.

Gilles added a subscriber: JGirault.

Change 362420 had a related patch set uploaded (by Esanders; owner: Esanders):
[mediawiki/extensions/Kartographer@master] Fix jQuery3 deferred issues

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

Change 362420 merged by jenkins-bot:
[mediawiki/extensions/Kartographer@master] Fix jQuery3 deferred issues

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

Hi @Esanders, thanks for working on this issue. With the gerrit check-in that you've created, will there be any additional work that needs to be done to make Kartographer compatible with jQuery 3?

Krinkle claimed this task.

I've deployed the jQuery 3 upgrade to Beta cluster and verified verified that the example from this bug report, when saved at https://en.wikipedia.beta.wmflabs.org/w/index.php?title=Sandbox&oldid=363309, works without issue now.

Thanks, @Krinkle - we'll let the patch ride the train and we should be all good sometime during the week of July 11, 2017. :)