RepoJournal
Vue.js

@vuejs

Vue + the surrounding frontend ecosystem

Pick a date

The Wire · Showcase

VUE CORE PLUGS ASYNC COMPONENT LEAK, FIXES MODEL SYNC EDGE CASE

By RepoJournal · Filed · About Vue.js

Vue's runtime now cancels async component callbacks after unmount, stopping false timeout errors from polluting error tracking in production.

The big fix lands in vuejs/core: async components that unmount before their timeout fires no longer report errors to your global error handler or Sentry [1]. This solves a real production problem where users navigate away mid-load and the app still screams about timeouts for components that are already gone. In parallel, a defineModel fix addresses Firefox behavior where rapid input changes weren't syncing correctly with parent updates [2], keeping local state consistent during aggressive typing or form submission. Over in the toolchain, create-vue picked up npm-run-all2 v9 [6], while core dependencies continue their steady march: eslint to 10.4.1 [3], Rollup's CommonJS plugin to 29.0.3 [4], and Vitest coverage tools to 4.1.8 [5]. The template repo also fixed a packaging bug where eslint-plugin-vue's peer dependency on vue-eslint-parser wasn't being included in scaffolded projects [7], which would have caused silent linting failures for new apps. Vapor compiler picked up two performance optimizations from core: reactive event binding helpers and inlined DOM lookup placeholders [ref:11, ref:12].

Action items

References

  1. [1] fix(runtime-core): skip async component callbacks after unmount ↗ vuejs/core
  2. [2] fix(runtime-core): force model update when reverted before sync (fix #13524) ↗ vuejs/core
  3. [3] chore(deps): update lint ↗ vuejs/core
  4. [4] chore(deps): update build ↗ vuejs/core
  5. [5] chore(deps): update test ↗ vuejs/core
  6. [6] chore(deps): update dependency npm-run-all2 to v9 ↗ vuejs/create-vue
  7. [7] fix: add missing dependency ↗ vuejs/create-vue
  8. [8] perf(compiler/vapor): use onBinding helper for reactive events vuejs/vue-jsx-vapor
  9. [9] perf(compiler/vapor): inline single-use DOM lookup placeholders vuejs/vue-jsx-vapor

FAQ

What changed in Vue.js on June 11, 2026?
Vue's runtime now cancels async component callbacks after unmount, stopping false timeout errors from polluting error tracking in production.
What should Vue.js teams do about it?
Pull the async component unmount fix into your next release if you use defineAsyncComponent with timeouts • Regenerate create-vue projects or manually add vue-eslint-parser if using eslint-plugin-vue • Update npm-run-all2 to v9 when convenient in create-vue scaffolds
Which Vue.js repositories shipped on June 11, 2026?
vuejs/core, vuejs/create-vue, vuejs/vue-jsx-vapor

Related across the cluster

For your repos

The showcase is a teaser.
Your wire is the product.

Same engine. Different stack. Below: what changes when the wire is yours.

Showcase wire

  • 14 famous open source orgs
  • One wire per day
  • Public, generic
  • Read on the web, when you remember

Your wire

  • Up to 1,500 of your repos - orgs, deps, vendors
  • Morning and evening briefs
  • Action items routed to your team
  • Slack delivery, email, breaking-news CVE alerts

Want a hands-on demo first? Ask a current user for an invite link.