tree b3d605a217c30e97edeb60e8e20b1b742e107341
parent 534b250a562c9a90bc0f5d7119a2e8c973695b8d
author Damiano Ferrari <34270884+ferraridamiano@users.noreply.github.com> 1747848573 +0200
committer GitHub <noreply@github.com> 1747848573 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJoLg2MCRC1aQ7uu5UhlAAAyAEQABIQ7jHW2ss0Moelbm+w9+ej
 qxqO1pmj4dKbgxmJXssqucK7Be5V4T3eWQoZnDczL5sRBqRxQjKylxBicvPNxqWY
 +v/Fb8R2CKymLY3kqneW8GwM8eJNuMIzHEcLctaDC6NZmBaQA1/eGrl+Sfcv8/2A
 y13uMxaRpiNFNwaPS/2vl81VgVx5dTepuVdjX2eC9mCNICFAXwVV9j9FPUeQzeXs
 unJCI8xEmVx84qeXzQiTQPp1IKse0KzLu1ecGyFmgcHyluOZbNYB5msqcRb9jyJh
 2AUm9YfKLqrxlUr39euma/g7HCFMCJlMR/jyr73rs53H9zDAzLOcbM712yYUL673
 JLosuh9csRNXf6efDO/ImBn/tkDOj1ZVQIl6hkq+NMPvRlfD2t0uf8LYl0ZzdjuO
 TjRPOr1uld4htYBndP9Ae6O4eH+OA1754LRqMfm9NHbL8Eu/is2rIKcdWO1R1B8D
 iWsDk4Mjb7NS9D86eAf5AOFNvG7u4jno9Wrl/OWvZm88h3OtolXehEVE0PhVU9rk
 4VC4kQwcisVzOq9RQ9bVPMh5LG18jCMUIrJdKuw4nnl8q6MOZI5H9aMqg2C7WbJL
 aLQ8gtflKN+8iUGiJwkMpJDjgqMiwAmCJQMGwH9T2JEboIIJ9DFlGmwSHHu0Upt9
 9O+4zuIvRnFg/hRXBupu
 =/V3L
 -----END PGP SIGNATURE-----
 

Removed repeated entry in `CHANGELOG.md` (#165273)

<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

Just removed a repeated entry in the changelog of the latest release
(3.29.2)

## 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 [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] 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].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [ ] 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/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[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
[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