]> git.ipfire.org Git - thirdparty/vuejs/router.git/log
thirdparty/vuejs/router.git
10 days agobuild: support git worktrees in verifyCommit script main
Eduardo San Martin Morote [Mon, 30 Mar 2026 13:27:10 +0000 (15:27 +0200)] 
build: support git worktrees in verifyCommit script

10 days agofix: track definePage imports per-file to fix named view race condition
Eduardo San Martin Morote [Mon, 30 Mar 2026 13:26:14 +0000 (15:26 +0200)] 
fix: track definePage imports per-file to fix named view race condition

Fix #2670

10 days agostyle: avoid worktrees
Eduardo San Martin Morote [Mon, 30 Mar 2026 13:10:07 +0000 (15:10 +0200)] 
style: avoid worktrees

2 weeks agochore: disable no-this-alias rule and remove inline suppression comments
Eduardo San Martin Morote [Fri, 27 Mar 2026 00:39:43 +0000 (17:39 -0700)] 
chore: disable no-this-alias rule and remove inline suppression comments

2 weeks agochore: disable no-unused-expressions and triple-slash-reference rules
Eduardo San Martin Morote [Fri, 27 Mar 2026 00:33:49 +0000 (17:33 -0700)] 
chore: disable no-unused-expressions and triple-slash-reference rules

2 weeks agochore: suppress intentional lint warnings with inline comments
Eduardo San Martin Morote [Fri, 27 Mar 2026 00:33:41 +0000 (17:33 -0700)] 
chore: suppress intentional lint warnings with inline comments

2 weeks agochore: disable no-unused-expressions lint rule
Eduardo San Martin Morote [Wed, 25 Mar 2026 17:20:02 +0000 (10:20 -0700)] 
chore: disable no-unused-expressions lint rule

2 weeks agochore: prefix remaining unused parameters
Eduardo San Martin Morote [Wed, 25 Mar 2026 17:13:50 +0000 (10:13 -0700)] 
chore: prefix remaining unused parameters

2 weeks agochore: prefix unused params and remove unused imports
Eduardo San Martin Morote [Wed, 25 Mar 2026 17:10:13 +0000 (10:10 -0700)] 
chore: prefix unused params and remove unused imports

2 weeks agochore: separate type imports from value imports
Eduardo San Martin Morote [Wed, 25 Mar 2026 17:10:04 +0000 (10:10 -0700)] 
chore: separate type imports from value imports

2 weeks agobuild: add oxlint to lint pipeline
Eduardo San Martin Morote [Wed, 25 Mar 2026 17:09:35 +0000 (10:09 -0700)] 
build: add oxlint to lint pipeline

2 weeks agochore: jsonc
Eduardo San Martin Morote [Tue, 24 Mar 2026 22:15:27 +0000 (23:15 +0100)] 
chore: jsonc

2 weeks agofeat: normalize param parsers once
Eduardo San Martin Morote [Mon, 23 Mar 2026 14:40:00 +0000 (15:40 +0100)] 
feat: normalize param parsers once

2 weeks agochore: demo in playground
Eduardo San Martin Morote [Mon, 23 Mar 2026 08:55:25 +0000 (09:55 +0100)] 
chore: demo in playground

2 weeks agodocs: beforeEnter in definePage
Eduardo San Martin Morote [Mon, 23 Mar 2026 08:54:37 +0000 (09:54 +0100)] 
docs: beforeEnter in definePage

See #2655

2 weeks agofeat: enable standard schema param parsers
Eduardo San Martin Morote [Fri, 20 Mar 2026 15:19:48 +0000 (16:19 +0100)] 
feat: enable standard schema param parsers

Close https://github.com/vuejs/router/discussions/2660

Only works if the param can be implicitly casted to a String

3 weeks agorelease: vue-router@5.0.4 v5.0.4
Eduardo San Martin Morote [Thu, 19 Mar 2026 15:05:00 +0000 (16:05 +0100)] 
release: vue-router@5.0.4

3 weeks agodocs: typos (#2651)
Duncan Lock [Wed, 18 Mar 2026 17:43:58 +0000 (17:43 +0000)] 
docs: typos (#2651)

* Small English grammar/pluralization fixes

* docs: fix grammar in data-loaders intro

- Split comma splice into two sentences
- Remove extra comma after "A more efficient one"

* docs: fix 'needs' -> 'need' pluralization regression

---------

Co-authored-by: Eduardo San Martin Morote <posva13@gmail.com>
4 weeks agofix: allow pushing to auto routes
Eduardo San Martin Morote [Fri, 13 Mar 2026 10:33:59 +0000 (11:33 +0100)] 
fix: allow pushing to auto routes

Fix #2656

4 weeks agodocs: no auto import section
Eduardo San Martin Morote [Tue, 10 Mar 2026 14:00:37 +0000 (15:00 +0100)] 
docs: no auto import section

4 weeks agobuild: include link and view in size computation
Eduardo San Martin Morote [Tue, 10 Mar 2026 13:13:02 +0000 (14:13 +0100)] 
build: include link and view in size computation

4 weeks agofix(loaders): restore context in sequential awaits
Eduardo San Martin Morote [Sun, 8 Mar 2026 12:45:00 +0000 (13:45 +0100)] 
fix(loaders): restore context in sequential awaits

Close https://github.com/vuejs/router/discussions/2653
Close #2652

4 weeks agorefactor: rename var
Eduardo San Martin Morote [Sun, 8 Mar 2026 12:39:42 +0000 (13:39 +0100)] 
refactor: rename var

4 weeks agochore: playground
Eduardo San Martin Morote [Sun, 8 Mar 2026 12:14:50 +0000 (13:14 +0100)] 
chore: playground

5 weeks agodocs(zh): add file-based routing related configuration documentation (#2643)
Hoo Ray [Thu, 5 Mar 2026 08:26:26 +0000 (16:26 +0800)] 
docs(zh): add file-based routing related configuration documentation (#2643)

* docs(zh): add file-based routing related configuration documentation

* docs(zh): 修正文件约定文档中的不当用词

* Apply suggestions from code review

Co-authored-by: edison <daiwei521@126.com>
* docs(zh): fix

---------

Co-authored-by: edison <daiwei521@126.com>
5 weeks agochore: hide route details in playground
Eduardo San Martin Morote [Tue, 3 Mar 2026 14:41:30 +0000 (15:41 +0100)] 
chore: hide route details in playground

5 weeks agorefactor: indent custom param parsers
Eduardo San Martin Morote [Tue, 3 Mar 2026 14:27:01 +0000 (15:27 +0100)] 
refactor: indent custom param parsers

5 weeks agochore: playground semver testing
Eduardo San Martin Morote [Tue, 3 Mar 2026 14:20:58 +0000 (15:20 +0100)] 
chore: playground semver testing

5 weeks agochore: playground minor
Eduardo San Martin Morote [Tue, 3 Mar 2026 13:18:57 +0000 (14:18 +0100)] 
chore: playground minor

5 weeks agofix: avoid false duplicate route warning for named views
Eduardo San Martin Morote [Tue, 3 Mar 2026 12:40:59 +0000 (13:40 +0100)] 
fix: avoid false duplicate route warning for named views

Closes #2648

5 weeks agodocs: updates
Eduardo San Martin Morote [Sat, 28 Feb 2026 07:37:37 +0000 (08:37 +0100)] 
docs: updates

6 weeks agochore: ignore [skip ci]
Eduardo San Martin Morote [Fri, 27 Feb 2026 10:06:50 +0000 (11:06 +0100)] 
chore: ignore [skip ci]

6 weeks agochore: playground
Eduardo San Martin Morote [Fri, 27 Feb 2026 09:53:10 +0000 (10:53 +0100)] 
chore: playground

6 weeks agofix: escape backslahes in string literals
Eduardo San Martin Morote [Fri, 27 Feb 2026 09:43:03 +0000 (10:43 +0100)] 
fix: escape backslahes in string literals

Fix #2640

6 weeks agochore: npm badge [skip ci]
Eduardo San Martin Morote [Thu, 26 Feb 2026 10:39:01 +0000 (11:39 +0100)] 
chore: npm badge [skip ci]

6 weeks agodocs: fix incorrect import path for VueRouterAutoImports (#2636)
Yuki [Wed, 25 Feb 2026 08:28:02 +0000 (16:28 +0800)] 
docs: fix incorrect import path for VueRouterAutoImports (#2636)

6 weeks agofix: avoid iterator helpers for Node 20 compat (#2635)
Charlie Wang [Tue, 24 Feb 2026 16:54:31 +0000 (00:54 +0800)] 
fix: avoid iterator helpers for Node 20 compat (#2635)

Fix #2633

6 weeks agodocs: protect vitepress comments
Eduardo San Martin Morote [Sat, 21 Feb 2026 08:19:14 +0000 (09:19 +0100)] 
docs: protect vitepress comments

6 weeks agodocs: file based routing
Eduardo San Martin Morote [Sat, 21 Feb 2026 08:15:15 +0000 (09:15 +0100)] 
docs: file based routing

6 weeks agodocs: grammar update to data-loaders/index.md (#2632)
Duncan Lock [Fri, 20 Feb 2026 19:45:09 +0000 (19:45 +0000)] 
docs: grammar update to data-loaders/index.md (#2632)

7 weeks agorelease: vue-router@5.0.3 v5.0.3
Eduardo San Martin Morote [Thu, 19 Feb 2026 20:07:05 +0000 (21:07 +0100)] 
release: vue-router@5.0.3

7 weeks agofeat: deprecate new NavigationResult(to) in favor of reroute(to)
Eduardo San Martin Morote [Thu, 19 Feb 2026 20:05:24 +0000 (21:05 +0100)] 
feat: deprecate new NavigationResult(to) in favor of reroute(to)

7 weeks agotest: deleting file with same name as folder keeps children
Eduardo San Martin Morote [Thu, 19 Feb 2026 19:54:45 +0000 (20:54 +0100)] 
test: deleting file with same name as folder keeps children

Closes #2615

7 weeks agochore: note
Eduardo San Martin Morote [Thu, 19 Feb 2026 19:37:45 +0000 (20:37 +0100)] 
chore: note

7 weeks agochore: pnpm
Eduardo San Martin Morote [Thu, 19 Feb 2026 18:27:49 +0000 (19:27 +0100)] 
chore: pnpm

7 weeks agofix(volar): use `ts.getTokenPosOfNode` instead of `node.getStart` (#2630)
山吹色御守 [Tue, 17 Feb 2026 12:11:50 +0000 (20:11 +0800)] 
fix(volar): use `ts.getTokenPosOfNode` instead of `node.getStart` (#2630)

* fix: use `ts.getTokenPosOfNode` instead of `node.getStart`

* refactor: extract `getStartEnd`

7 weeks agodocs: Fix route-map.d.ts path (#2625)
Bruno Perel [Sat, 14 Feb 2026 16:14:56 +0000 (17:14 +0100)] 
docs: Fix route-map.d.ts path (#2625)

* docs: Fix route-map.d.ts path

* chore: review

---------

Co-authored-by: Eduardo San Martin Morote <posva13@gmail.com>
8 weeks agofix(types): relax RouteMapGeneric constraint for interface-based RouteNamedMap (...
YevheniiKotyrlo [Thu, 12 Feb 2026 20:34:03 +0000 (22:34 +0200)] 
fix(types): relax RouteMapGeneric constraint for interface-based RouteNamedMap (#2624)

Close https://github.com/posva/unplugin-vue-router/issues/756

8 weeks agochore: update security support table
Eduardo San Martin Morote [Wed, 11 Feb 2026 06:59:08 +0000 (07:59 +0100)] 
chore: update security support table

8 weeks agostyle: lint
Eduardo San Martin Morote [Wed, 11 Feb 2026 06:38:36 +0000 (07:38 +0100)] 
style: lint

8 weeks agofix(experimental): resolve TS errors in resolver/router type hierarchy
Eduardo San Martin Morote [Tue, 10 Feb 2026 17:03:33 +0000 (18:03 +0100)] 
fix(experimental): resolve TS errors in resolver/router type hierarchy

Widen parent/aliasOf in ResolverRecord_Base from the narrow union type
to the base interface, allowing router types to narrow them via standard
interface extension instead of incompatible overrides.

8 weeks agofeat(experimental): warn against non absolute aliases
Eduardo San Martin Morote [Tue, 10 Feb 2026 16:07:19 +0000 (17:07 +0100)] 
feat(experimental): warn against non absolute aliases

8 weeks agofix: remove name from _parent.vue files
Eduardo San Martin Morote [Tue, 10 Feb 2026 15:25:29 +0000 (16:25 +0100)] 
fix: remove name from _parent.vue files

8 weeks agotest: add alias tests to generateRouteRecords
Eduardo San Martin Morote [Tue, 10 Feb 2026 10:47:29 +0000 (11:47 +0100)] 
test: add alias tests to generateRouteRecords

Enable the todo test for merging alias properties and add tests for
single, multiple, and dynamic alias paths.

8 weeks agochore: remove old file
Eduardo San Martin Morote [Tue, 10 Feb 2026 10:37:34 +0000 (11:37 +0100)] 
chore: remove old file

8 weeks agofix: cleanup old route overrides
Eduardo San Martin Morote [Tue, 10 Feb 2026 10:03:14 +0000 (11:03 +0100)] 
fix: cleanup old route overrides

8 weeks agofeat: display aliases in logs
Eduardo San Martin Morote [Tue, 10 Feb 2026 09:56:16 +0000 (10:56 +0100)] 
feat: display aliases in logs

8 weeks agochore: note
Eduardo San Martin Morote [Tue, 10 Feb 2026 09:56:08 +0000 (10:56 +0100)] 
chore: note

8 weeks agoperf: avoid merging empty object in record
Eduardo San Martin Morote [Tue, 10 Feb 2026 09:55:49 +0000 (10:55 +0100)] 
perf: avoid merging empty object in record

8 weeks agofeat: extract alias from definePage
Eduardo San Martin Morote [Mon, 9 Feb 2026 21:42:08 +0000 (22:42 +0100)] 
feat: extract alias from definePage

8 weeks agofeat(experimental): generate aliases from override in resolver
Eduardo San Martin Morote [Mon, 9 Feb 2026 21:41:45 +0000 (22:41 +0100)] 
feat(experimental): generate aliases from override in resolver

8 weeks agofeat(experimental): handle aliasOf in resolvers
Eduardo San Martin Morote [Mon, 9 Feb 2026 21:40:44 +0000 (22:40 +0100)] 
feat(experimental): handle aliasOf in resolvers

8 weeks agochore(playground): upgrade to script setup syntax and TypeScript (#2490)
Curt Grimes [Mon, 9 Feb 2026 16:42:36 +0000 (10:42 -0600)] 
chore(playground): upgrade to script setup syntax and TypeScript (#2490)

Upgrade the playground package to use the `<script setup>` syntax and
TypeScript. This change makes the playground more consistent with recent
Vue.js practices and improves type safety.

Keep the purpose of each example identical to the original examples as
much as possible. Therefore, components using `beforeRouteEnter()`,
[which does not have a `<script setup>`
equivalent](https://github.com/vuejs/router/issues/1517), are not
converted to `<script setup>` syntax but are only converted to use
TypeScript for improved type safety (Home.vue and
ComponentWithData.vue). Converting these to use the [recommended data
loaders or
`defineMacro()`](https://github.com/vuejs/router/issues/1517#issuecomment-2263346429)
could be an option in the future.

Update `RouteNamedMap` in main.ts to improve type safety and better
demonstrate the newer typed routes feature (introduced in
vue-router@4.4.0) in LongView.vue, Nested.vue, and RepeatedParams.vue.

Fix type issue in AppLink.vue where `RouterLinkProps` replaces
`RouterLink.props`.

Remove the `name` option from the `defineComponent` calls that used it,
because this option is [only useful when the component recursively calls
itself](https://v2.vuejs.org/v2/api/#name),
but there are not components in this playground project that do so.

8 weeks agotest: rerouting only works in non lazy
Eduardo San Martin Morote [Mon, 9 Feb 2026 16:40:58 +0000 (17:40 +0100)] 
test: rerouting only works in non lazy

8 weeks agochore: comment
Eduardo San Martin Morote [Mon, 9 Feb 2026 16:39:56 +0000 (17:39 +0100)] 
chore: comment

8 weeks agotest: discard source errors in vitest runs
Eduardo San Martin Morote [Mon, 9 Feb 2026 16:30:27 +0000 (17:30 +0100)] 
test: discard source errors in vitest runs

8 weeks agotest: remove deprecated next usage
Eduardo San Martin Morote [Mon, 9 Feb 2026 16:30:03 +0000 (17:30 +0100)] 
test: remove deprecated next usage

8 weeks agorefactor: fix type issue
Eduardo San Martin Morote [Mon, 9 Feb 2026 15:52:44 +0000 (16:52 +0100)] 
refactor: fix type issue

8 weeks agorefactor: only throw result on navigation
Eduardo San Martin Morote [Mon, 9 Feb 2026 15:52:36 +0000 (16:52 +0100)] 
refactor: only throw result on navigation

8 weeks agorefactor(experimental)!: remove selectNavigationResult
Eduardo San Martin Morote [Mon, 9 Feb 2026 15:20:33 +0000 (16:20 +0100)] 
refactor(experimental)!: remove selectNavigationResult

BREAKING CHANGE: Remove the selectNavigationResult option and NAVIGATION_RESULTS_KEY since reroute() now throws immediately, making the collection and selection of navigation results unnecessary.

8 weeks agofeat(experimental)!: add reroute() and deprecate NavigationResult
Eduardo San Martin Morote [Mon, 9 Feb 2026 15:20:07 +0000 (16:20 +0100)] 
feat(experimental)!: add reroute() and deprecate NavigationResult

Introduce reroute() as the new API for changing navigation from within
data loaders. It throws a NavigationResult internally, which simplifies
the control flow and removes the need for stagedNavigationResult.
NavigationResult is deprecated in favor of reroute().

8 weeks agodocs: update Lazy Loading docs (#2618)
skirtle [Mon, 9 Feb 2026 14:12:37 +0000 (14:12 +0000)] 
docs: update Lazy Loading docs (#2618)

8 weeks agodocs: Update '钩子' to '守卫' in Router.md (#2619)
GeoDaoyu [Mon, 9 Feb 2026 14:10:14 +0000 (22:10 +0800)] 
docs: Update '钩子' to '守卫' in Router.md (#2619)

1. 统一'钩子' 和 '守卫'的叫法
2. 补充缺失的翻译

2 months agodocs: update Playground example (#2617)
skirtle [Sat, 7 Feb 2026 17:52:59 +0000 (17:52 +0000)] 
docs: update Playground example (#2617)

2 months agorefactor(experimental)!: make miss() throw internally and return never
Eduardo San Martin Morote [Fri, 6 Feb 2026 11:38:45 +0000 (12:38 +0100)] 
refactor(experimental)!: make miss() throw internally and return never

BREAKING CHANGE: `miss()` now throws the `MatchMiss` error internally
instead of returning it. If you were using `throw miss()`, replace it
with just `miss()`. This change prevents silently swallowing misses
when forgetting to `throw` and hides the fact that this is implemented
through a class, making it an implementation detail. **Most users won't be
affected as this only impacts custom matchers using the experimental
route resolver API. Also renames `MatchMiss` export to `_MatchMiss`
(internal).**

2 months agofix: correct route ordering for group nodes with inflated scores
Eduardo San Martin Morote [Fri, 6 Feb 2026 10:18:16 +0000 (11:18 +0100)] 
fix: correct route ordering for group nodes with inflated scores

Replace min/avg comparator with element-by-element score comparison
ported from pathParserRanker.ts. Add path depth tiebreaker so routes
like /:username/settings sort before /:username when group node
inflation makes their scores element-by-element equal.

2 months agofeat: add deprecation warning for next() callback in navigation guards
Eduardo San Martin Morote [Fri, 6 Feb 2026 09:11:48 +0000 (10:11 +0100)] 
feat: add deprecation warning for next() callback in navigation guards

2 months agotest: remove old usage of guard next
Eduardo San Martin Morote [Fri, 6 Feb 2026 09:04:53 +0000 (10:04 +0100)] 
test: remove old usage of guard next

2 months agochore: add coderabbit [skip ci]
Eduardo San Martin Morote [Fri, 6 Feb 2026 08:30:27 +0000 (09:30 +0100)] 
chore: add coderabbit [skip ci]

2 months agofix: stable route ordering for group folders with same path
Eduardo San Martin Morote [Fri, 6 Feb 2026 08:10:58 +0000 (09:10 +0100)] 
fix: stable route ordering for group folders with same path

Group folders like (user) and (user-home) both resolve to an empty path
segment, making TreeNode.compare return 0 and fall back to non-deterministic
insertion order. Use rawSegment as tiebreaker for stable sorting.

2 months agodocs: fix refs to vue-router
Eduardo San Martin Morote [Fri, 6 Feb 2026 06:59:09 +0000 (07:59 +0100)] 
docs: fix refs to vue-router

2 months agoci: parallelize
Eduardo San Martin Morote [Thu, 5 Feb 2026 21:49:10 +0000 (22:49 +0100)] 
ci: parallelize

2 months agotest: reactive hmr e2e tests
Eduardo San Martin Morote [Thu, 5 Feb 2026 21:48:42 +0000 (22:48 +0100)] 
test: reactive hmr e2e tests

2 months agofeat: use type module
Eduardo San Martin Morote [Thu, 5 Feb 2026 21:37:11 +0000 (22:37 +0100)] 
feat: use type module

This helps modernize the package without breaking changes and prepare for the next major which will be ESM only

2 months agochore: playground
Eduardo San Martin Morote [Thu, 5 Feb 2026 21:06:41 +0000 (22:06 +0100)] 
chore: playground

2 months agofix: handle nested groups
Eduardo San Martin Morote [Thu, 5 Feb 2026 21:06:08 +0000 (22:06 +0100)] 
fix: handle nested groups

2 months agochore: ignore erudita
Eduardo San Martin Morote [Thu, 5 Feb 2026 16:07:48 +0000 (17:07 +0100)] 
chore: ignore erudita

2 months agodocs: sitemap
Eduardo San Martin Morote [Thu, 5 Feb 2026 15:58:46 +0000 (16:58 +0100)] 
docs: sitemap

2 months agochore: todo
Eduardo San Martin Morote [Thu, 5 Feb 2026 15:53:14 +0000 (16:53 +0100)] 
chore: todo

2 months agochore: playground
Eduardo San Martin Morote [Thu, 5 Feb 2026 15:53:06 +0000 (16:53 +0100)] 
chore: playground

2 months agochore: titel
Eduardo San Martin Morote [Thu, 5 Feb 2026 14:22:13 +0000 (15:22 +0100)] 
chore: titel

2 months agochore: regen
Eduardo San Martin Morote [Thu, 5 Feb 2026 11:18:48 +0000 (12:18 +0100)] 
chore: regen

2 months agofix: avoid route entry in map for _parent
Eduardo San Martin Morote [Thu, 5 Feb 2026 11:18:42 +0000 (12:18 +0100)] 
fix: avoid route entry in map for _parent

2 months agofix: handle quotes in d.ts
Eduardo San Martin Morote [Thu, 5 Feb 2026 10:58:57 +0000 (11:58 +0100)] 
fix: handle quotes in d.ts

2 months agochore: log
Eduardo San Martin Morote [Thu, 5 Feb 2026 10:57:54 +0000 (11:57 +0100)] 
chore: log

2 months agofix: avoid non matchable routes in auto-routes
Eduardo San Martin Morote [Thu, 5 Feb 2026 10:55:27 +0000 (11:55 +0100)] 
fix: avoid non matchable routes in auto-routes

2 months agodocs: iteration comment
Eduardo San Martin Morote [Thu, 5 Feb 2026 10:45:44 +0000 (11:45 +0100)] 
docs: iteration comment

2 months agofeat: warn on conflicting components for routes
Eduardo San Martin Morote [Thu, 5 Feb 2026 10:39:42 +0000 (11:39 +0100)] 
feat: warn on conflicting components for routes

2 months agofeat: set _parent as non matchable by default
Eduardo San Martin Morote [Wed, 4 Feb 2026 18:07:24 +0000 (19:07 +0100)] 
feat: set _parent as non matchable by default

2 months agofeat: warn on _parent conflict
Eduardo San Martin Morote [Wed, 4 Feb 2026 18:01:57 +0000 (19:01 +0100)] 
feat: warn on _parent conflict