tree 614386078aca8002384e34519d510e681e66071f
parent bd103b835f2fc72d16ac0658808cf545e66ebb55
author Kate Lovett <katelovett@google.com> 1790721926 +0000
committer GitHub <noreply@github.com> 1790721926 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJqvD+XCRC1aQ7uu5UhlAAA8xUQAC8duCPkjUZE0aTbqI36MBHz
 xhe8u299FOkpi3j5vFKBPFEapyAqbyeMwE1Th1OVbb+qT3SWzDdWmgAPzc3ddQ8w
 aMSpO7WQds8K1goz2DMkMRKL/CCvLUrRMeGQyw99U/l6Cpm/DEOt0mpe9Ij1EYO0
 y2MSlF/JqrlzsMeYSz1RNgZm63zAGg2mwR+S/dQGKTJs6I6QV4kaPzOyCCUhnEXt
 NyB2Uq5yk9tokbdaDp6xvKH2io+isd3UXyuywFGrH/aR6DaDky2bXbDBxxJR2rhW
 LOanqJ2lY98mctCHKimX5cYbaIFyBGBG1URHzIp+K0JXgcKbJ8shr/D512GRz8AL
 IsGAq1WSLSSerCedfKniHd6xUeh25b4qg75NBtQh6zVGF+tGHrds2nNLJeKW6F07
 EiXh8DoSuzWfo+Vo0+Vg8tOpd8wnuI1XOks9jP/SFk9tIo48YqRSvFYmQ/bjdpgl
 ACfEpBZnLMevsfPtDkqcS/FN9eg6t7AMXykSu5qD32dAri8RoHnpjhNjKCoSdhGL
 d045TV2UjjzccrGiaV7X2ZdOG1I0cLVfXLwxkdozmt0BG5zFdL8A0OoJEYfefo2J
 OM2ok/dt1b29QZmi781HbNsVnfaBjBrnEIJU5GYEbc6JjkE1hThHIIxiJs/Uxmko
 p/RgrayYCA9cONm3MacP
 =LXxM
 -----END PGP SIGNATURE-----
 

Update guidance on bumping Dart (#193131)

Adds important context about LSC and aligning with the release process

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [AI contribution guidelines] and understand my
responsibilities, or I am not using AI tools.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant in-code documentation (doc comments with
`///`).
- [x] If this PR introduces a new feature or capability, I created and
linked a website documentation issue or PR in [flutter/website] (or
verified none is needed).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

If this change needs to override an active code freeze, provide a
comment explaining why. The code freeze workflow can be overridden by
code reviewers. See pinned issues for any active code freezes with
guidance.

**Note**: The Flutter team is currently trialing the use of [Gemini Code
Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
Comments from the `gemini-code-assist` bot should not be taken as
authoritative feedback from the Flutter team. If you find its comments
useful you can update your code accordingly, but if you are unsure or
disagree with the feedback, please feel free to wait for a Flutter team
member's review for guidance on which automated comments should be
addressed.

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[AI contribution guidelines]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[flutter/website]: https://github.com/flutter/website
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md