Background
Since MW v1.41.0 'mediawiki.skin.variables.less' features Codex design tokens. These are providing a themeable, scalable nomenclature and are following mediwiki.ui variables Wikimedia's stylesheet variable naming convention.
Goal
Replace 'mediawiki.ui/variables.less' @imports with 'mediawiki.skin.variables.less' and on the course also replace deprecated T319381 vars and static values where easily identifiable.
Benefits
- Reduce design debt
- Reduce technical debt
- Ensure that single source of truth is clarified and established with Codex design tokens via skin variables
- Extension developers benefit from skin aware tokens (vars). Extensions magically adapt to MW skins. The extent is still on extension author (for example only color tokens used, or everything)
Risks
- The change requires MW v1.41, if your extension is required to be further backwards-compatible, please reach out to find intermediate solutions
- As with every code change, there's a minimal chance of human error in token application. The patches provided should not result in visual change aside of a few major extension, where the known small changes are flagged.
Acceptance criteria for done
- Replace all references of @import 'mediawiki.ui/variables.less' with 'mediawiki.skin.variables.less'
- MediaWiki core
- mediawiki.special stylesheets
- mediawiki.widgets, mediawiki.ui
- Other core stylesheets
- skins/MinervaNeue https://gerrit.wikimedia.org/r/c/mediawiki/skins/MinervaNeue/+/906791
- skins/Vector (legacy skin)/Desktop Improvements (Vector 2022) https://gerrit.wikimedia.org/r/910865
- Page-Previews (Popups)
- MobileFrontend https://gerrit.wikimedia.org/r/c/mediawiki/extensions/MobileFrontend/+/900811
- StructuredDiscussions (Flow)
- DiscussionTools
- Notifications
- WikiEditor (2010)
- GrowthExperiments
- ContentTranslation
- UniversalLanguageSelector (MW 1.38 compatibility needed)
- MediaWiki-extensions-Translate (MW 1.38 compatibility needed)
- Maps (Kartographer)
- MediaWiki-extensions-MsUpload
- EntitySchema (EntitySchema)
- IP Info
- MediaWiki-extensions-TemplateWizard
-
GettingStarted[not updated; no longer maintained] - Wikidata-Page-Banner
- RelatedArticles – https://gerrit.wikimedia.org/r/c/mediawiki/extensions/RelatedArticles/+/909724
- QuickSurveys
- Advanced-Search
- ExternalGuidance
- MSUpload
- CirrusSearch
- MediaWiki-extensions-InputBox
- Inbox
- Wikibase-Quality-Constraints
- Wikidata Lexicographical data
- Move-Files-To-Commons
- Wikistories
- Wikimedia OCR
- MediaViewer
- SDAW-SearchVue
- CampaignEvents
- CheckUser
- MediaWiki-extensions-CentralNotice
- Collection
- External repos
- ProfessionalWiki/WikibaseRDF
- femiwiki/FemiwikiSkin
- MediaWiki core
Related for mediawiki.skin.variables becoming single source of truth is T334934: [EPIC] Replace WikimediaUI Base variables with Codex design tokens (mediawiki.skin.variables)
The final step for mediawiki.ui/variables is tackled in T335822: Deprecate and remove mediawiki.ui variables