Migrate dashboard, explore & root entrypoints to Vue 3

What does this MR do and why?

Rolls out Vue 3 in @vue/compat compatibility mode (Option 1 of the Vue 3 migration guide) for the dashboard, explore and root page entrypoints. This is a rollout-mechanism change only — it adds a feature-flag definition plus one vue3_migration.yml per entrypoint directory. No Vue components are rewritten.

Migrated entrypoints

  • app/assets/javascripts/pages/dashboard/groups/index
  • app/assets/javascripts/pages/dashboard/projects
  • app/assets/javascripts/pages/explore/groups
  • app/assets/javascripts/pages/explore/projects
  • app/assets/javascripts/pages/root
  • ee/app/assets/javascripts/pages/root (EE shadow that wraps the CE root entrypoint)

Feature flag

Gated behind vue3_migrate_dashboard_explore_pages (default_enabled: false). When the flag is off, Rails continues to serve the Vue 2 bundle.

Notes

  • Supersedes the stale draft MR !249550 (closed) (branch 608128-vue3-migrate-dashboard-explore-pages), which used a different flag name and was never merged.
  • The vue3_init_vue_app codemod reports "No residual sites" for all touched entrypoints — no mechanical conversions required. No genuine logic regressions found.

Closes #608128 (closed)

Edited by Shane Maglangit

Merge request reports

Loading
Loading