Page MenuHomePhabricator

[WtC-M1] Migrate Vue 2 to Vue 3
Closed, ResolvedPublic13 Estimated Story Points

Description

Problem

The Mismatch Finder tool is currently built using Vue 2. This makes it vulnerable to the consequences of Vue 2's end of life, and prevents us from replacing the WiKit components, used to compose its UI, with Codex components. This step is key to deprecate the former, legacy design system.

Solution

In order to ease the Mismatch Finder's code base away from Vue 2 and into Vue 3, and avoid the consequences of Vue 2's EOL, we'll use the Vue 3 migration build. This process requires updating various peer dependencies, such as Vue Banana and Inertia.

Acceptance criteria
  • Vue is updated to version 3 with @vue/compat enabled
  • All peer dependencies install without a problem
  • Build settings (webpack.mix.js) are updated
  • Blocking typescript incompatibilities are fixed
Notes

Event Timeline

Sarai-WMDE renamed this task from [WtC - M1] Migrate Vue 2 to Vue 3 to [WtC-M1] Migrate Vue 2 to Vue 3.Sep 12 2023, 11:39 AM
Sarai-WMDE moved this task from UX Backlog to Sprint-∞ on the [Archived]Wikidata Dev Team board.
Sarai-WMDE renamed this task from [WtC-M1] Migrate Vue 2 to Vue 3 to [SW] [WtC-M1] Migrate Vue 2 to Vue 3.Sep 26 2023, 4:36 PM
Sarai-WMDE renamed this task from [SW] [WtC-M1] Migrate Vue 2 to Vue 3 to [WtC-M1] Migrate Vue 2 to Vue 3.Sep 28 2023, 2:42 PM

Task Breakdown:

  • Please start from fresh, the POC branch is really just that and can be used for demonstration but not as a base of our work.
  • At each stage, try to get the state to be as error free as possible while keeping the commit small: no test errors, no console errors, functional application.
  • Essentially this task is about following the migration guide.

Just to clarify: This change should not include fixing all the deprecation warnings in the console, this can be handled by T346258: [SW] [WtC-M2] [EPIC] Gradually update relevant Mismatch Finder code to Vue 3. Once the update was successfully made, and the application is able to run locally, we can try and assess individual tasks for this epic (unless the number of deprecation is so low to the point of irrelevance).