152 wires and counting

$ follow Vue.js

Keep up with Vue.js in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

$ status

wire 2026-10-23
stories 7

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

language-tools drops a @ts-ignore for inline handler $event

By RepoJournal · Filed · About Vue.js · Composed from the cited sources · methodology

Vue's language tooling stopped suppressing types on the $event parameter of multi-statement and v-model inline handlers, typing it explicitly from the handler's own parameters instead, with one narrowing caveat for overloaded handlers.

fix(language-core): type the `$event` parameter of inline handlers explicitly vuejs/language-tools

by johnsoncodehk

Multi-statement inline handlers like `@foo="a(); b()"` and v-model handlers used to be generated under a `@ts-ignore` because their `$event` parameter could fail to type-check; it is now typed explicitly from the handler's parameters. The type stays the same except for overloaded handlers, where overloads with different parameters now yield `any`.

fix(language-core): map the whole hyphenated directive name in the auto-import access vuejs/language-tools

by Johnson Chu

The auto-import access for a hyphenated directive mapped its camelized name (`vOnClickOutside`) onto an equal-length source range, so the range fell short of `v-on-click-outside` by the number of hyphens. The access now keeps the source name and maps segment-wise like component tags, which should fix go-to-definition and rename on hyphenated directives.

test(language-core): cover the construct call of components and document its @ts-ignores vuejs/language-tools

by johnsoncodehk

Two `@ts-ignore`s around `new Comp({ ...props })` stay in place: that construct call is how overloaded and generic components such as Vuetify's get their types from props. The change documents why in a code comment and adds tests for the cases that broke when removal was attempted.

chore: bump @volar/* to 2.4.30 vuejs/language-tools

by Johnson Chu

An explicit `typescript` devDependency was added to packages depending on @volar packages with a typescript peer, so the workspace override to typescript-native-bridge wins instead of pnpm auto-installing a standalone TypeScript release. The @volar/* packages moved to 2.4.30.

chore(deps): update dependency oxfmt to v0.74.0 vuejs/test-utils

by renovate

Quiet elsewhere: test-utils took a Renovate bump of the oxfmt formatter from 0.73.0 to 0.74.0, with no test-facing behavior described.

Quick answers

What shipped in Vue.js on October 23, 2026?
Vue's language tooling stopped suppressing types on the $event parameter of multi-statement and v-model inline handlers, typing it explicitly from the handler's own parameters instead, with one narrowing caveat for overloaded handlers. In total, 4 commits and 3 pull requests landed.
Who contributed to Vue.js on October 23, 2026?
2 developers shipped this update, including johnsoncodehk and renovate.
What were the notable Vue.js updates?
fix(language-core): type the `$event` parameter of inline handlers explicitly, fix(language-core): map the whole hyphenated directive name in the auto-import access, and test(language-core): cover the construct call of components and document its @ts-ignores.