The Wire · Showcase
Vue Core Fixes Template Caching Regression, Slot Props Nullish Handling
By RepoJournal · Filed · About Vue.js
Three critical compiler fixes landed in vuejs/core overnight, closing gaps in SSR template analysis, teleport transitions, and slot v-bind edge cases.
The compiler-sfc template usage cache was evicting and recomputing results incorrectly after transformation, causing SSR passes to miss v-model identifiers and template-only imports [1]. In parallel, transitions to teleport component children now apply correctly instead of breaking on render [2]. A third fix handles the nullish case for slot v-bind expressions, which was throwing TypeError even though null is accepted everywhere else in Vue's prop merging logic [3]. Dependencies ticked forward across both repos: eslint bumped to 10.8.0 [4], @swc/core to 1.15.47 [5], and jsdom to 30.0.1 in test-utils [6]. All three compiler fixes address real production edge cases that hit developers building with SSR, dynamic components, or passing conditional slot props.
One email a day. Unsubscribe in one click.
Keep up with Vue.js in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Pull the latest vuejs/core - three critical fixes for SSR, transitions, and slots vuejs/core [immediate]
- → Test SSR builds and teleport-heavy component trees with the new transition fix vuejs/core [plan]
- → Review test-utils bump to jsdom 30.0.1 before next test run vuejs/test-utils [monitor]
References
- [1] fix(compiler-sfc): handle transformed template AST after cache invalidation ↗ vuejs/core
- [2] fix(transition): support transition to teleport component child ↗ vuejs/core
- [3] fix(slots): handle nullish v-bind slot props ↗ vuejs/core
- [4] chore(deps): update lint ↗ vuejs/core
- [5] chore(deps): update build ↗ vuejs/core
- [6] chore(deps): update all non-major dependencies ↗ vuejs/test-utils