Once the patch that upgrades MediaWiki's copy of Vue from 2.6 to the migration build of Vue 3.2 is ready, test that patch with each of the extensions below. Migration warnings can be ignored at this stage, but errors and other breakage should be fixed before the Vue 3 patch can be merged.
Extension/skin checklist:
- ContentTranslation T294470
- GlobalWatchlist T294471
- MachineVision T294472
- MediaSearch T294449
- NearbyPages T294473
- QuickSurveys T294475
- Vector T294476
- Wikibase (including wikibase-termbox, which is a submodule of Wikibase) T294465
- WikibaseLexeme T294465
- WikiLambda T294477
- WVUI T284707
Test plan:
- Change your initialization code to use Vue.createMwApp() instead of new Vue() (see T289020 for examples)
- Test that the Vue code in the extension still initializes correctly, and is attached to the DOM in the correct place
- Download this MW core change (git review -d 666434 in MW core)
- Test the Vue code in the extension, verifying that nothing breaks and there are no errors in the console (you may see warnings about deprecated things from Vue 2; that's fine, ignore those for now). Don't just load each Vue feature, but interact with it and test its functionality; some errors may only become apparent when a component is interacted with.
- Undo the changes you made in step 1 (e.g. by stashing your changes with git stash)
- Repeat step 2; if your extension uses Vuex or custom plugins, test those too
- (Optional) upload the changes you made in step 1 to Gerrit
Additional steps for extensions that use Vuex:
- Reapply the changes you made in step 1 (which you undid in step 5)
- Download this MW core change (git review -d 709125 in MW core)
- Test that features in the extension that use Vuex still work
- Change your initialization and store creation code to use the new Vuex 4 calling style described in T289103
- Repeat step 10