Illya Klymov (895baa2d) at 17 Mar 21:39
Fix fun vue-virtual-scroller-vue3 issue
Illya Klymov (1d1f6e03) at 17 Mar 19:16
Illya Klymov (bf643b68) at 17 Mar 19:15
Merge branch 'xanf-hybrid-harness-v2' into 'master'
... and 1 more commit
Introduces a Vite plugin that enables per-entrypoint iterative Vue 3 migration. By appending ?vue3 to a JS import specifier, the entire dependency subtree becomes "infected" — Vue ecosystem packages (vue, vuex, vue-router, vue-apollo, etc.) are redirected to their Vue 3 compat wrappers, while non-Vue imports get separate module instances to ensure isolation.
This allows migrating individual page entrypoints to Vue 3 one at a time without changing the global VUE_VERSION environment variable, enabling gradual adoption.
?vue3 to any JS entrypoint import, e.g.:
import initFeature from 'ee/some_feature/bundle?vue3';
gdk start and navigate to the page using that entrypoint?vue3= in their URLsvue3compat/ wrappersKnown issues:
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
This is a low-risk as anything non-prod
@markrian just curious where you saw that attribute fall-through issue? I would like to think how I can detect that
I have no strong preference on this one, so open to MR, just because version wobbling should be now way more rare
@markrian pushed fix for ~ alias - switched to relative paths. Bundling is hard (extremely hard, but that is spoilers for next 8 MRs in chain)
Illya Klymov (1d1f6e03) at 17 Mar 15:26
Switch to relative imports in vue.js compat file
@mrincon nope. VUE_COMPILER_VERSION=3 + VUE_VERSION=2 is invalid config, that will never work
@mrincon hybrid does not make sense. As soon as we opt-in there should be no way to disable ?vue3 imports in 2 mode
@markrian kinda proud to hear that
It's weird I'm breaking vue_version 3 mode, I shouldn't. I'll check - file ~/vue_shared/translate.js is not by any means touched by this plugin
Illya Klymov (4aa90c54) at 17 Mar 15:12
Proper infection chains
Illya Klymov (9651abd0) at 17 Mar 12:24
Temporary diff_row fix
Illya Klymov (30195848) at 17 Mar 09:57
Remove running pending timers in global afterEach
... and 1386 more commits
Illya Klymov (73f31987) at 16 Mar 20:03
Temporary fix virtual scroller stuff & pinia
Illya Klymov (1ccccc2c) at 16 Mar 16:19
Integrate infection scanner with webpack plugin
Let's keep it for now. Since this terminology (I hope) will not last long