Updates minimum supported SDK version to Flutter 3.38/Dart 3.10.
Adds hasOverriddenOnExit parameter to GoRouteData.$route and RelativeGoRouteData.$route helper methods for type-safe routes. When set to true, enables custom onExit callback invocation from route data classes extending GoRouteData or RelativeGoRouteData when the route is removed from the navigation stack.
Fixes Block.then() and Allow.then() navigation callbacks being silently lost when triggered by refreshListenable due to re-entrant route processing.
Adds encoder, decoder and compare parameters to TypedQueryParameter annotation for custom encoding, decoding and comparison of query parameters in TypedGoRoute constructors.
Bump major version for GoRouteData breaking changes.
(Previously 15.2.4) Fixes routing to treat URLs with different cases (e.g., /Home vs /home) as distinct routes.
(Previously 15.2.3) Updates Type-safe routes topic documentation to use the mixin from go_router_builder 3.0.0.
(Previously 15.2.2) Fixes calling PopScope.onPopInvokedWithResult in branch routes.
(Previously 15.2.1) Fixes Popping state and re-rendering scaffold at the same time doesn't update the URL on web.
(Previously 15.2.0) GoRouteData now defines .location, .go(context), .push(context), .pushReplacement(context), and replace(context) to be used for Type-safe routing. Requires go_router_builder >= 3.0.0.
Configuration
📅Schedule: (UTC)
Branch creation
At any time (no schedule defined)
Automerge
At any time (no schedule defined)
🚦Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕Ignore: Close this PR and you won't be reminded about this update again.
If you want to rebase/retry this PR, check this box
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [go_router](https://github.com/flutter/packages) ([source](https://github.com/flutter/packages/tree/HEAD/packages/go_router)) | dependencies | major | `^15.0.0` → `^17.0.0` |
---
> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/3) for more information.
---
### Release Notes
<details>
<summary>flutter/packages (go_router)</summary>
### [`v17.3.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1730)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v17.2.3...go_router-v17.3.0)
- Updates minimum supported SDK version to Flutter 3.38/Dart 3.10.
- Adds `hasOverriddenOnExit` parameter to `GoRouteData.$route` and `RelativeGoRouteData.$route` helper methods for type-safe routes. When set to `true`, enables custom `onExit` callback invocation from route data classes extending `GoRouteData` or `RelativeGoRouteData` when the route is removed from the navigation stack.
### [`v17.2.3`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1723)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v17.2.2...go_router-v17.2.3)
- Fixes an assertion failure when navigating to URLs with hash fragments missing a leading slash.
### [`v17.2.2`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1722)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v17.2.1...go_router-v17.2.2)
- Fixes `pop()` restoring stale configuration when route has `onExit`, which could cause the popped route to reappear with async redirects.
### [`v17.2.1`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1721)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v17.2.0...go_router-v17.2.1)
- Fixes chained top-level redirects not being fully resolved (e.g. `/ → /a → /b` stopping at `/a`).
- Fixes route-level redirects not triggering top-level redirect re-evaluation on the new location.
### [`v17.2.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1720)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v17.1.0...go_router-v17.2.0)
- Fixes `Block.then()` and `Allow.then()` navigation callbacks being silently lost when triggered by `refreshListenable` due to re-entrant route processing.
- Adds `encoder`, `decoder` and `compare` parameters to `TypedQueryParameter` annotation for custom encoding, decoding and comparison of query parameters in `TypedGoRoute` constructors.
### [`v17.1.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1710)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v17.0.1...go_router-v17.1.0)
- Adds `TypedQueryParameter` annotation to override parameter names in `TypedGoRoute` constructors.
### [`v17.0.1`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1701)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v17.0.0...go_router-v17.0.1)
- Fixes an issue where `onEnter` blocking causes navigation stack loss (stale state restoration).
- Updates minimum supported SDK version to Flutter 3.32/Dart 3.8.
### [`v17.0.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1700)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.3.0...go_router-v17.0.0)
- **BREAKING CHANGE**
- `ShellRoute`'s navigating changes notify `GoRouter`'s observers by default.
- Adds `notifyRootObserver` to `ShellRouteBase`, `ShellRoute`, `StatefulShellRoute`, `ShellRouteData.$route`, `TypedShellRoute`, `TypedStatefulShellRoute`.
### [`v16.3.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1630)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.2.5...go_router-v16.3.0)
- Adds a top-level `onEnter` callback with access to current and next route states.
### [`v16.2.5`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1625)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.2.4...go_router-v16.2.5)
- Fixes `GoRouter.of(context)` access inside redirect callbacks by providing router access through Zone-based context tracking.
- Adds support for using context extension methods (e.g., `context.namedLocation()`, `context.go()`) within redirect callbacks.
### [`v16.2.4`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1624)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.2.3...go_router-v16.2.4)
- Fix Android Cold Start deep link with empty path losing scheme and authority.
### [`v16.2.3`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1623)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.2.2...go_router-v16.2.3)
- Fixes an issue where iOS back gesture pops entire ShellRoute instead of the active sub-route.
### [`v16.2.2`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1622)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.2.1...go_router-v16.2.2)
- Fixes broken links in readme.
### [`v16.2.1`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1621)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.2.0...go_router-v16.2.1)
- Adds state restoration topic to documentation.
### [`v16.2.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1620)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.1.0...go_router-v16.2.0)
- Adds `RelativeGoRouteData` and `TypedRelativeGoRoute`.
- Updates minimum supported SDK version to Flutter 3.29/Dart 3.7.
### [`v16.1.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1610)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v16.0.0...go_router-v16.1.0)
- Adds annotation for go\_router\_builder that enable custom string encoder/decoder [#​110781](https://github.com/flutter/flutter/issues/110781). **Requires go\_router\_builder >= 3.1.0**.
### [`v16.0.0`](https://github.com/flutter/packages/blob/HEAD/packages/go_router/CHANGELOG.md#1600)
[Compare Source](https://github.com/flutter/packages/compare/go_router-v15.1.3...go_router-v16.0.0)
- **BREAKING CHANGE**
- Bump major version for `GoRouteData` breaking changes.
- (Previously 15.2.4) Fixes routing to treat URLs with different cases (e.g., `/Home` vs `/home`) as distinct routes.
- (Previously 15.2.3) Updates Type-safe routes topic documentation to use the mixin from `go_router_builder` 3.0.0.
- (Previously 15.2.2) Fixes calling `PopScope.onPopInvokedWithResult` in branch routes.
- (Previously 15.2.1) Fixes Popping state and re-rendering scaffold at the same time doesn't update the URL on web.
- (Previously 15.2.0) `GoRouteData` now defines `.location`, `.go(context)`, `.push(context)`, `.pushReplacement(context)`, and `replace(context)` to be used for [Type-safe routing](https://pub.dev/documentation/go_router/latest/topics/Type-safe%20routes-topic.html). **Requires go\_router\_builder >= 3.0.0**.
</details>
---
### Configuration
📅 **Schedule**: (UTC)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4wLjAiLCJ1cGRhdGVkSW5WZXIiOiI0NC40LjIiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImJvdCIsInVwZ3JhZGUiXX0=-->
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
any of the package files in this branch needs updating, or
the branch becomes conflicted, or
you click the rebase/retry checkbox if found above, or
you rename this PR's title to start with "rebase!" to trigger it manually
The artifact failure details are included below:
File name: pubspec.lock
spawn flutter ENOENT
### ⚠️ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
- any of the package files in this branch needs updating, or
- the branch becomes conflicted, or
- you click the rebase/retry checkbox if found above, or
- you rename this PR's title to start with "rebase!" to trigger it manually
The artifact failure details are included below:
##### File name: pubspec.lock
```
spawn flutter ENOENT
```
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
^15.0.0→^17.0.0Release Notes
flutter/packages (go_router)
v17.3.0Compare Source
hasOverriddenOnExitparameter toGoRouteData.$routeandRelativeGoRouteData.$routehelper methods for type-safe routes. When set totrue, enables customonExitcallback invocation from route data classes extendingGoRouteDataorRelativeGoRouteDatawhen the route is removed from the navigation stack.v17.2.3Compare Source
v17.2.2Compare Source
pop()restoring stale configuration when route hasonExit, which could cause the popped route to reappear with async redirects.v17.2.1Compare Source
/ → /a → /bstopping at/a).v17.2.0Compare Source
Block.then()andAllow.then()navigation callbacks being silently lost when triggered byrefreshListenabledue to re-entrant route processing.encoder,decoderandcompareparameters toTypedQueryParameterannotation for custom encoding, decoding and comparison of query parameters inTypedGoRouteconstructors.v17.1.0Compare Source
TypedQueryParameterannotation to override parameter names inTypedGoRouteconstructors.v17.0.1Compare Source
onEnterblocking causes navigation stack loss (stale state restoration).v17.0.0Compare Source
ShellRoute's navigating changes notifyGoRouter's observers by default.notifyRootObservertoShellRouteBase,ShellRoute,StatefulShellRoute,ShellRouteData.$route,TypedShellRoute,TypedStatefulShellRoute.v16.3.0Compare Source
onEntercallback with access to current and next route states.v16.2.5Compare Source
GoRouter.of(context)access inside redirect callbacks by providing router access through Zone-based context tracking.context.namedLocation(),context.go()) within redirect callbacks.v16.2.4Compare Source
v16.2.3Compare Source
v16.2.2Compare Source
v16.2.1Compare Source
v16.2.0Compare Source
RelativeGoRouteDataandTypedRelativeGoRoute.v16.1.0Compare Source
v16.0.0Compare Source
GoRouteDatabreaking changes./Homevs/home) as distinct routes.go_router_builder3.0.0.PopScope.onPopInvokedWithResultin branch routes.GoRouteDatanow defines.location,.go(context),.push(context),.pushReplacement(context), andreplace(context)to be used for Type-safe routing. Requires go_router_builder >= 3.0.0.Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate CLI.
⚠️ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
The artifact failure details are included below:
File name: pubspec.lock
f58ca41bebto9d04d892adView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.