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
[ ] GlobalWatchlist
[ ] MachineVision
[ ] MediaSearch
[ ] NearbyPages
[ ] QuickSurveys
[ ] Vector
[ ] Wikibase (including wikibase-termbox, which is a submodule of Wikibase)
[ ] WikibaseLexeme
[ ] WikiLambda
Test plan:
1. Download [[https://gerrit.wikimedia.org/r/c/mediawiki/core/+/666460|this MW core change]] (`git review -d 666460` in MW core)
2. Change your initialization code to use `Vue.createMwApp()` instead of `new Vue()` (see T289020 for examples)
3. Test that the Vue code in the extension still initializes correctly, and is attached to the DOM in the correct place
4. Download [[https://gerrit.wikimedia.org/r/c/mediawiki/core/+/666434|this MW core change]] (`git review -d 666434` in MW core)
5. 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.
6. Undo the changes you made in step 2 (e.g. by stashing your changes with `git stash`)
7. Repeat step 3; if your extension uses Vuex or custom plugins, test those too
8. (Optional) upload the changes you made in step 2 to Gerrit, with `Depends-On: Ib3ef9b88547b43c566abb007cde08a27baf2b7a4` at the bottom of the commit message
Additional steps for extensions that use Vuex:
9. Reapply the changes you made in step 2 (which you undid in step 6)
10. Download [[https://gerrit.wikimedia.org/r/c/mediawiki/core/+/709125|this MW core change]] (`git review -d 709125` in MW core)
11. Test that features in the extension that use Vuex still work
12. Change your initialization and store creation code to use the new Vuex 4 calling style described in T289103
13. Repeat step 11