Draft: DO NOT MERGE: Side-effects-free vue file modules
What does this MR do and why?
Adds tree-shake-ability to side-effect free .vue files.
Some of our files still have side-effects, so we exclude them from tree shaking.
To get the list of .vue files with side-effects — we add a eslint rule to forbid top-level side-effects and export the list of files that violate that. Then we use that list in the webpack config.
Webpack docs on tree shaking: https://webpack.js.org/configuration/module/#rulesideeffects
References
Screenshots or screen recordings
N/A
How to set up and validate locally
TBD
Q: how to run production-like webpack locally?
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Kos Palchyk