Vue.js 3.5.39
Another Vue.js patch lands — 3.5.39 is out and it is all about polish. Let's break down the bits that matter.
Compiler Core Fixes
Filter rewrite recursion — A bug where nested filters in templates could blow the stack has been quashed. If you've been chaining filters like | uppercase | truncate | slugify in single-file components, this one is for you.
CDATA crash — Using CDATA sections at the document root in certain SSR setups no longer crashes the compiler. Niche, but painful if you hit it.
Compiler SFC Fixes
Variable shadowing in for loops — The SFC compiler now correctly handles variable shadowing inside v-for when using defineProps destructuring. Previously, a loop variable with the same name as a prop could produce incorrect output.
Indexed access types — declare props with indexed access types in TypeScript SFCs are now resolved properly. Fewer squiggly lines in your editor.
Performance Push
Minor compiler optimizations bundled in this patch keep build times lean. Every millisecond counts in large monorepos.
Full Changelog
See the official CHANGELOG for the complete list of fixes. As always, upgrade is a single npm update vue away.