Background
During Vector-2022's development, there was a product requirement to minimize impact on (ease the transition for) communities. To fulfill this, the Vector-2022 skin currently:
- loads both MediaWiki:Vector.(css,js) and MediaWiki:Vector-2022.(css,js) for sites using it as the default
- loads both User:<username>/vector.(css,js) and User:<username>/vector-2022.(css,js) for users
With T301212, this functionality can now be turned off early by a community if desired, by a configuration change to wgVectorShareUserScripts.
In late 2023 / early 2024 it will be turned off everywhere.
Detailed examples
Existing behaviour
- User Alice uses Vector (2010) skin, and can load scripts/styles with User:Alice/vector.js and User:Alice/vector.css
- User Bob uses Vector-2022 skin, and can load scripts/styles with User:Bob/vector-2022.js and User:Bob/vector-2022.css
- however Bob will also automatically load any code in their User:Bob/vector.js and User:Bob/vector.css
- Similarly, the Vector-2022 skin loads both MediaWiki:Vector.css and also MediaWiki:Vector-2022.css
Behaviour after site request, or at the end of 2023
- User Alice can load styles/scripts on the Vector (2010) skin using User:Alice/vector.js and User:Alice/vector.css
- User Bob can load styles/scripts on the Vector-2022 skin using User:Bob/vector-2022.js and User:Bob/vector-2022.css
- Vector 2022 skin does not load MediaWiki:Vector.css but instead only MediaWiki:Vector-2022.css
Impact if no action
In late 2023 / early 2024, users will suddenly see "Behaviour after site request". This means local site styles would stop loading (if those are being relied on) and many user scripts would stop loading unexpectedly.
Recommendation
It is recommended that communities:
- discuss this change and manage the timeline of this change themselves,
- notify any users it might affect, to avoid disruption or confusion,
- use this as a good opportunity to encourage housekeeping. E.g. deletion of local skin js/css that is no longer used.
A community can decide to do nothing, but this will eventually become the default behaviour, so delaying action here is likely to cause problems for users in the long term.
The old/existing behaviour will hopefully be removed by the end of 2023.
Before the switchover
Interface Administrators should:
- CSS: Copy any necessary content from MediaWiki:Vector.css into MediaWiki:Vector-2022.css
- JavaScript: Migrate any content from MediaWiki:Vector.js into MediaWiki:Common.js (NOT duplicating it, because that can cause errors, unless you know what you are doing)
- General cleanup, as needed
Users should:
- CSS: Copy or Migrate any necessary content from User:<username>/vector.css into User:<username>/vector-2022.css- OR - m:User:<username>/global.css
- JavaScript: Migrate any content from User:<username>/vector.js into User:<username>/common.js - OR - m:User:<username>/global.js (NOT duplicating it, because that can cause errors, unless you know what you are doing)
Request to communities
- Please decide if it's preferable for your community to change this configuration earlier than the end of the year. A conversation in your community portal may be sufficient.
If/When your community decides to do so:
- Please create a new task, tagged Wikimedia-Site-requests, that requests the disabling of VectorShareUserScripts
- For example: T332809: Please disable Vector js/css sharing on pl.wikipedia
- See Requesting wiki configuration changes for details.