Page MenuHomePhabricator

Remove 'mediawiki.ui.input' module
Closed, ResolvedPublic

Description

Background & Goal

Remove all blocking calls to use 'mediawiki.ui.input' module and remove module itself. It has been deprecated since MediaWiki 1.41.

Alongside

Developer notes

  • DiscussionTools and services/mobileapps (1 occurrence) only features parser tests, ignorable.
  • ContentTranslation uses its own derived mw-ui-input CSS and doesn't need attention.
  • Note that a number of outdated extensions and skins –not deployed, that are not set their goal for MediaWiki 1.46 or any of the latest version are not reasonably to be considered here: SemanticMediaWiki "1.43", Wikifab/GroupsPage (more than 10years old in last significant update), Skin:Mask, Skin:Poncho ">= 1.40.0", AWikia/SkinEvelution ">= 1.39.0" – filed https://github.com/AWikia/SkinEvelution/issues/122, femiwiki/FemiwikiSkin, PCGamingWiki/overclocked (not updated in 3 years) are "stuck" on an older MediaWiki version and don't need change.
  • Note that a small number of gadgets and user scripts (less than 50 globally) still make use of the module.

Acceptance criteria for done

Event Timeline

Change #1252084 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/core@master] styles: remove remaining deprecated `mw-ui-input` classes

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

Change #1252085 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/skins/MinervaNeue@master] styles, docs: Remove deprecated `mw-ui-*` classes and mentions

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

Change #1252250 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/extensions/InputBox@master] docs: Remove remaining mentions of mw-ui-input

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

Volker_E updated the task description. (Show Details)

Change #1252250 merged by jenkins-bot:

[mediawiki/extensions/InputBox@master] docs: Remove remaining mentions of mw-ui-input

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

AlexisJazz added subscribers: AnneT, Masumrezarock100, taavi and 13 others.

@Lens0021
@Aklapper (Andre Klapper (WMF))
@Nikerabbit (Niklas Laxström)
@Jdlrobson (Jon Robson)
@gerritbot (Gerrit)
@Masumrezarock100 (Masum Reza)
@Schnark (Michael M.)
@AnneT (Anne Tomasevich)
@egardner (Eric Gardner)
@Iniquity
@Tacsipacsi
@MJL (MJL)
@Daimona
@taavi (Taavi Väänänen)
@Krinkle (Timo Tijhof)
@Volker_E

Volker_E updated the task description. (Show Details)

Change #1252084 merged by jenkins-bot:

[mediawiki/core@master] styles: remove remaining deprecated `mw-ui-input` classes

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

Change #1252085 merged by jenkins-bot:

[mediawiki/skins/MinervaNeue@master] styles, docs: Remove deprecated `mw-ui-*` classes and mentions

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

Change #987868 had a related patch set uploaded (by VolkerE; author: Jdlrobson):

[mediawiki/extensions/Flow@master] Flow should maintain a local version of MediaWiki UI

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

Change #987868 abandoned by Jdlrobson:

[mediawiki/extensions/Flow@master] Flow should maintain a local version of MediaWiki UI

Reason:

Volker I don't have bandwidth for this any more - if you want to continue down this road would you mind re-posting it under your account?

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

Change #1273251 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/extensions/Flow@master] Flow should maintain a local version of mediawiki.ui

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

Change #1273251 merged by jenkins-bot:

[mediawiki/extensions/Flow@master] Flow should maintain a local version of mediawiki.ui

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

Change #1277217 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/core@master] Remove unused 'mediawiki.ui.checkbox' module

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

Change #1278731 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/extensions/Flow@master] Flow should maintain a local version of mediawiki.ui, part II

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

Change #1278731 merged by jenkins-bot:

[mediawiki/extensions/Flow@master] Flow should maintain a local version of mediawiki.ui, part II

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

Change #1279353 had a related patch set uploaded (by Bartosz Dziewoński; author: VolkerE):

[mediawiki/extensions/Flow@REL1_46] Flow should maintain a local version of mediawiki.ui, part II

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

Change #1279353 merged by jenkins-bot:

[mediawiki/extensions/Flow@REL1_46] Flow should maintain a local version of mediawiki.ui, part II

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

Change #1279484 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/extensions/Flow@master] Flow should maintain a local version of mediawiki.ui, part III

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

Change #1279484 merged by jenkins-bot:

[mediawiki/extensions/Flow@master] Flow should maintain a local version of mediawiki.ui, part III

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

Change #1279497 had a related patch set uploaded (by Bartosz Dziewoński; author: VolkerE):

[mediawiki/extensions/Flow@REL1_46] Flow should maintain a local version of mediawiki.ui, part III

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

Change #1279497 merged by jenkins-bot:

[mediawiki/extensions/Flow@REL1_46] Flow should maintain a local version of mediawiki.ui, part III

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

Change #1277217 merged by jenkins-bot:

[mediawiki/core@master] Remove unused 'mediawiki.ui.input' module

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

Change #1283091 had a related patch set uploaded (by Bartosz Dziewoński; author: VolkerE):

[mediawiki/core@REL1_46] Remove unused 'mediawiki.ui.input' module

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

Change #1283091 merged by jenkins-bot:

[mediawiki/core@REL1_46] Remove unused 'mediawiki.ui.input' module

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

matmarex assigned this task to Volker_E.
matmarex removed a project: Patch-For-Review.
matmarex updated the task description. (Show Details)

https://global-search.toolforge.org/?q=%22mediawiki.ui.input%27%22&namespaces=&title=

I'm sorry, but this is an insufficient search. Try something closer to this which has many more uses just on English Wikipedia.

Global count is ~200 and that's just the JS.

If a script uses the mw-ui-input CSS class without loading the mediawiki.ui.input module, then it won't be affected by its removal – it is either already broken, or already works perfectly. We stopped loading the mediawiki.ui.* modules on normal page views years ago.

Just as an example, I picked a script from your search that could be easily tested: User:Enterprisey/cv-revdel.js. Here's how its interface looks today:

image.png (1,263×596 px, 49 KB)

It attempts to style the inputs and buttons using MediaWiki UI, but it never loads the styles, so the classes have no effect. Here's how it would look like if the styles were loaded:

image.png (1,263×596 px, 47 KB)

Many of the scripts that load the mediawiki.ui.input module will also "gracefully degrade" in a similar way. (Some users will probably consider this to be an improvement.)

Only the scripts that load it via mw.loader.using will require changes, and that can be as simple as removing that dependency to unbreak them.


There is however a mistake in that search (I see you got it from the task description): there is a stray apostrophe in the search field, so it only returns single-quoted references to the module, and not double-quoted ones. I am sorry, I overlooked this when reviewing the task, although I am pretty sure I used the correct search when trying to judge the impact of this change. Here's the correct search: https://global-search.toolforge.org/?q="mediawiki.ui.input"&namespaces=2%2C4%2C8&title=(Gadgets-definition|.*\.(js|css|json))

The correct number of results is 123, rather than 58. Many results are copies of the same few scripts, and as I noted above, many won't be too badly affected. I think this is an acceptable removal.