Historical source · 2021–2022
Original package changelog
The complete preserved early release history, covering the original project APIs.
On this page
Changelog
3.0.1
- pass along the error to the
navigatorBuilderto allow for different implementations based on the presence of an error
3.0.0
- breaking change: added
GoRouterStatetonavigatorBuilderfunction - breaking change: removed
BuildContextfromGoRouter.pop()to remove the need to usecontextparameter when calling theGoRouterAPI; this changes the behavior ofGoRouter.pop()to only pop what's on theGoRouterpage stack and no longer callsNavigator.pop() - new Migrating to 3.0 section in the docs to describe the details of the breaking changes and how to update your code
- added a new shared scaffold sample to show how to use the
navigatorBuilderfunction to build a custom shared scaffold outside of the animations provided by go_router
2.5.7
- PR 262: add support for
Router.neglect; thanks to nullrocket! - PR 265: add Japanese translation of the docs; thanks to toshi-kuji! Unfortunately I don't yet know how to properly display them via docs.page, but I'm working on it
- updated the examples using the
fromquery parameter to be completely self-contained in theredirectfunction, simplifying usage - updated the async data example to be simpler
- added a new example to show how to implement a loading page
- renamed the navigator_integration example to user_input and added an example of
WillPopScopefor go_router apps
2.5.6
- PR 259: remove a hack for notifying the router of a route change that was no longer needed; thanks to nullrocket!
- improved async example to handle the case that the data has been returned but the page is no longer there by checking the
mountedproperty of the screen
2.5.5
- updated implementation to use logging package for debug diagnostics; thanks to johnpryan
2.5.4
- fixed up the
GoRouterRefreshStreamimplementation with an export, an example and some docs
2.5.3
- added
GoRouterRefreshStreamfrom jopmiddelkamp to easily map from aStreamto aListenablefor use withrefreshListenable; very useful when combined with stream-based state management like flutter_bloc - dartdocs fixups from mehade369
- example link fixes from ben-milanko
2.5.2
- pass additional information to the
NavigatorObservervia default args toMaterialPage, etc.
2.5.1
- fix 205: hack around a failed assertion in Flutter when using
Duration.zeroin theNoTransitionPage
2.5.0
- provide default implementation of
GoRoute.pageBuilderto provide a simpler way to build pages via theGoRouter.buildmethod - provide default implementation of
GoRouter.errorPageBuilderto provide a simpler way to build error pages via theGoRouter.errorBuildermethod - provide default implementation of
GoRouter.errorBuilderto provide an error page without the need to implement a custom error page builder - new Migrating to 2.5 section in the docs to show how to take advantage of the new
builderand default error page builder - removed
launch.jsonas VSCode-centric and unnecessary for discovery or easy launching - added a new custom error screen sample
- added a new WidgetsApp sample
- added a new
NoTransitionPageclass - updated docs to explain why the browser's Back button doesn't work with the
extraparam - updated README to point to new docs site: gorouter.dev
2.3.1
- fix 191: handle several kinds of trailing / in the location, e.g.
/foo/should be the same as/foo
2.3.0
- fix a misleading error message when using redirect functions with sub-routes
2.2.9
- fix 182: fixes a regression in the nested navigation caused by the fix for #163; thanks to lulupointu for the fix!
2.2.8
- reformatted CHANGELOG file; lets see if pub.dev is still ok with it...
- staged an in-progress doc site at https://docs.page/csells/go_router
- tightened up a test that was silently failing
- fixed a bug that dropped parent params in sub-route redirects
2.2.7
- fix 163: avoids unnecessary page rebuilds
- fix 139: avoids unnecessary page flashes on deep linking
- fix 158: shows exception info in the debug output even during a top-level redirect coded w/ an anonymous function, i.e. what the samples all use
- fix 151: exposes
Navigator.pop()viaGoRouter.pop()to make it easy to find
2.2.6
- fix 127: updated the docs to add a video overview of the project for people that prefer that media style over long-form text when approaching a new topic
- fix 108: updated the description of the
stateparameter to clarfy that not all properties will be set at every usage
2.2.5
- fix 120 again: found the bug in my tests that was masking the real bug; changed two characters to implement the actual fix (sigh)
2.2.4
- fix 116: work-around for auto-import of the
context.gofamily of extension methods
2.2.3
- fix 132: route names are stored as case insensitive and are now matched in a case insensitive manner
2.2.2
- fix 120: encoding and decoding of params and query params
2.2.1
- fix 114: give a better error message when the
GoRouterisn't found in the widget tree viaGoRouter.of(context); thanks aoatmon for the excellent bug report!
2.2.0
- added a new
navigatorBuilderargument to theGoRouterconstructor; thanks to andyduke! - also from andyduke is an update to improve state restoration
- refactor from kevmoo for easier maintenance
- added a new Navigator Integration section of the docs
2.1.2
- fix 61 again: enable images and file links to work on pub.dev/documentation
- fix 62 re-tested; fixed w/ earlier Android system Back button fix (using navigation key)
- fix 91: fix a regression w/ the
errorPageBuilder - fix 92: fix an edge case w/ named sub-routes
- fix 89: enable queryParams and extra object param w/
push - refactored tests for greater coverage and fewer methods
@visibleForTesting
2.1.1
- fix 86: add
nametoGoRouterStateto complete support for URI-free navigation knowledge in your code - fix 83: fix for
nullextraobject
2.1.0
- fix 80: adding a redirect limit to catch too many redirects error
- fix 81: allow an
extraobject to pass through for navigation
2.0.1
- add badges to the README and codecov to the GitHub commit action; thanks to rydmike for both
2.0.0
- BREAKING CHANGE and fix #50: split
paramsintoparamsandqueryParams; see the Migrating to 2.0 section of the docs for instructions on how to migrate your code from 1.x to 2.0 - fix 69: exposed named location lookup for redirection
- fix 57: enable the Android system Back button to behave exactly like the
AppBarBack button; thanks to SunlightBro for the one-line fix that I had no idea about until he pointed it out - fix 59: add query params to top-level redirect
- fix 44: show how to use the
AutomaticKeepAliveClientMixinwith nested navigation to keep widget state between navigations; thanks to rydmike for this update
1.1.3
- enable case-insensitive path matching while still preserving path and query parameter cases
- change a lifetime of habit to sort constructors first as per sort_constructors_first. Thanks for the PR, Abhishek01039!
- set the initial transition example route to
/noneto make pushing the 'fade transition' button on the first run through more fun - fixed an error in the async data example
1.1.2
- Thanks, Mikes!
- updated dartdocs from rydmike
- also shoutout to https://github.com/Salakar for the CI action on GitHub
- this is turning into a real community effort...
1.1.1
- now showing routing exceptions in the debug log
- updated the docs to make it clear that it will be called until it returns
null
1.1.0
- added support
NavigatorObserverobjects to receive change notifications
1.0.1
- docs updates based on user feedback for clarity
- fix for setting URL path strategy in
main() - fix for
push()disablesAppBarBack button
1.0.0
- updated version for initial release
- some renaming for clarify and consistency with transitions
GoRoute.builder=>GoRoute.pageBuilderGoRoute.error=>GoRoute.errorPageBuilder- added diagnostic logging for
pushandpushNamed
0.9.6
- added support for
pushas well asgo - added 'none' to transitions example app
- updated animation example to use no transition and added an animated gif to the docs
0.9.5
- added support for custom transitions between routes
0.9.4
- updated API docs
- updated docs for
GoRouterState
0.9.3
- updated API docs
0.9.2
- updated named route lookup to O(1)
- updated diagnostics output to show known named routes
0.9.1
- updated diagnostics output to show named route lookup
- docs updates
0.9.0
- added support for named routes
0.8.8
- fix to make
GoRouternotify on pop
0.8.7
- made
GoRouteraChangeNotifierso you can listen forlocationchanges
0.8.6
- books sample bug fix
0.8.5
- added Cupertino sample
- added example of async data lookup
0.8.4
- added state restoration sample
0.8.3
- changed
debugOutputFullPathstodebugLogDiagnosticsand added add'l debugging logging - parameterized redirect
0.8.2
- updated docs for
Linkwidget support
0.8.1
- added Books sample; fixed some issues it revealed
0.8.0
- breaking build to refactor the API for simplicity and capability
- move to fixed routing from conditional routing; simplies API, allows for redirection at the route level and there scenario was sketchy anyway
- add redirection at the route level
- replace guard objects w/ redirect functions
- add
refreshmethod andrefreshListener - removed
.builderctor fromGoRouter(not reasonable to implement) - add Dynamic linking section to the docs
- replaced Books sample with Nested Navigation sample
- add ability to dump the known full paths to your routes to debug output
0.7.1
- update to pageKey to take sub-routes into account
0.7.0
- BREAK: rename
patterntopathfor consistency w/ other routers in the world - added the
GoRouterLoginGuardfor the common redirect-to-login-page pattern
0.6.2
- fixed issue showing home page for a second before redirecting (if needed)
0.6.1
- added
GoRouterState.pageKey - removed
cupertino_iconsfrom mainpubspec.yaml
0.6.0
- refactor to support sub-routes to build a stack of pages instead of matching multiple routes
- added unit tests for building the stack of pages
- some renaming of the types, e.g.
Four04PageandFamiliesPagetoErrorPageandHomePagerespectively - fix a redirection error shown in the debug output
0.5.2
- add
urlPathStrategyargument toGoRouterctor
0.5.1
- docs and description updates
0.5.0
- moved redirect to top-level instead of per route for simplicity
0.4.1
- fixed CHANGELOG formatting
0.4.0
- bundled various useful route handling variables into the
GoRouterStatefor use when building pages and error pages - updated URL Strategy section of docs to reference
flutter run
0.3.2
- formatting update to appease the pub.dev gods...
0.3.1
- updated the CHANGELOG
0.3.0
- moved redirection into a
GoRoutector arg - forgot to update the CHANGELOG
0.2.3
- move outstanding issues to issue tracker
- added explanation of Deep Linking to docs
- reformatting to meet pub.dev scoring guidelines
0.2.2
- docs updates
0.2.1
- messing with the CHANGELOG formatting
0.2.0
- initial useful release
- added support for declarative routes via
GoRouteinstances - added support for imperative routing via
GoRoute.builder - added support for setting the URL path strategy
- added support for conditional routing
- added support for redirection
- added support for optional query parameters as well as positional parameters in route names
0.1.0
- squatting on the package name (I'm not too proud to admit it)
Sources & version context
GoRouter.dev documentation edition. The preserved text describes the original package APIs. Follow the current guide before using it in a new project.