Page MenuHomePhabricator

[Regression wmf.25] VE is not loading for pages with music score, shows error " Uncaught Error: No class registered by that name: mwScore"
Closed, ResolvedPublic

Description

VE is not loading for pages with music score, shows error " Uncaught Error: No class registered by that name: mwScore"

It shows the progress bar but does not complete the loading.

Example page:https://en.wikipedia.beta.wmflabs.org/wiki/User:RYasmeen_(WMF)

This is still on Beta cluster.

Event Timeline

The option to add musical notation itself is missing from the menu.

Ryasmeen renamed this task from [Regression pre-wmf.23] VE is not loading for pages with music score, shows error " Uncaught Error: No class registered by that name: mwScore" to [Regression wmf.25] VE is not loading for pages with music score, shows error " Uncaught Error: No class registered by that name: mwScore".Apr 9 2019, 11:18 PM

This bug is now on test.wiki, changed the title to reflect that.

Schnark subscribed.

Did rESCRb3a898135dd7: ScoreHooks: Bundle configuration vars into JS that needs it change something in the execution order / scope / whatever, that code for score nodes isn't accessible yet when needed?

Hmmm... I'm not sure I can reproduce this on beta cluster. I don't have this problem, the VE loads to completion;

Screen Shot 2019-04-10 at 11.55.18.png (500×1 px, 86 KB)

Maybe a caching issue? I'm not sure but I did a hard refresh (force refresh) to clear browser cache before testing this!

I can reproduce locally and bisect blames that patch.

Change 502787 had a related patch set uploaded (by Esanders; owner: Esanders):
[mediawiki/extensions/Score@master] Revert "ScoreHooks: Bundle configuration vars into JS that needs it"

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

Hmmm... I'm not sure I can reproduce this on beta cluster. I don't have this problem, the VE loads to completion;

Your screenshot is showing source mode, which will load fine without the score plugin. Load the visual editor on a page that has a score element on it.

According to https://www.mediawiki.org/wiki/ResourceLoader/Package_modules only the first file in a package is invoked immediately (the "main" file). VE needs all of these files to be invoked immediately. We could just make an "index.js" that invokes the other files, but doing that for every VE module going forward just means duplicating our file manifests and sending useless extra data to the client.

CC'ing @Catrope

Esanders triaged this task as Unbreak Now! priority.Apr 10 2019, 1:12 PM

Change 502787 merged by jenkins-bot:
[mediawiki/extensions/Score@master] Revert "ScoreHooks: Bundle configuration vars into JS that needs it"

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

Change 502811 had a related patch set uploaded (by Jforrester; owner: Esanders):
[mediawiki/extensions/Score@wmf/1.33.0-wmf.25] Revert "ScoreHooks: Bundle configuration vars into JS that needs it"

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

Change 502811 merged by jenkins-bot:
[mediawiki/extensions/Score@wmf/1.33.0-wmf.25] Revert "ScoreHooks: Bundle configuration vars into JS that needs it"

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

Mentioned in SAL (#wikimedia-operations) [2019-04-10T15:24:12Z] <jforrester@deploy1001> Synchronized php-1.33.0-wmf.25/extensions/Score/: UBN Revert Score changes that broke VE T220465 (duration: 01m 01s)