tree e78d0959b0e5ed3b463cc33df2580c2533407524
parent 082d9769f45964c22395e1c00ba085cef932dde0
author Sam Rawlins <srawlins@google.com> 1695752374 -0700
committer GitHub <noreply@github.com> 1695752374 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJlEyC2CRBK7hj4Ov3rIwAALTkIACSz5VgGgy7vGOPS6Y8ickaC
 RYDxMZ+fV/InTbcFUvhmljzp8872Iy5Pe0uD15hw9qcGx1kzRFI6Fe0h2j4NFGkR
 YIX6a1Djs5nwrKsJiWbXaKhb4fhVv/Z7SHKqmG/KlTIX8zWACtXjHiuiLkm1J8dm
 Jy/4MkMqGTrA8PJTf7/AIf5doYlDOB9mSM0gLtIWt7b6DFOW4mhs09nzu/L3iaue
 FyJTkhGSTrvWXtOAAcxqKNseFokOsklNKt1mMyyPOZyyQFA3RK8WDPbrI8CtNXVd
 D8GtNKXcelR5iDQJbdRtFCyRdx7XYXoLy3LCWLRy09AVlVRz1QrpITF9lmuL1X8=
 =iszl
 -----END PGP SIGNATURE-----
 

[go_router] Fix @tool directive with missing @end-tool (#4998)

Fixes
https://logs.chromium.org/logs/dart/buildbucket/cr-buildbucket/8768923225300611905/+/u/Run_flutter_plugins_tests/stdout

Each `{@tool}` tag must also have an `{@end-tool}` tag.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [relevant style guides] and ran the
auto-formatter. (Unlike the flutter/flutter repo, the flutter/packages
repo does use `dart format`.)
- [x] I signed the [CLA].
- [x] The title of the PR starts with the name of the package surrounded
by square brackets, e.g. `[shared_preferences]`
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated `pubspec.yaml` with an appropriate new version according
to the [pub versioning philosophy], or this PR is [exempt from version
changes].
- [ ] I updated `CHANGELOG.md` to add a description of the change,
[following repository CHANGELOG style].
- [x] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/packages/blob/main/CONTRIBUTING.md
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[relevant style guides]:
https://github.com/flutter/packages/blob/main/CONTRIBUTING.md#style
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
[pub versioning philosophy]: https://dart.dev/tools/pub/versioning
[exempt from version changes]:
https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#version-and-changelog-updates
[following repository CHANGELOG style]:
https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#changelog-style
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests