Implementing control flow collections#146601
Implementing control flow collections#146601auto-submit[bot] merged 8 commits intoflutter:masterfrom
Conversation
|
auto label is removed for flutter/flutter/146601, due to Pull request flutter/flutter/146601 is not in a mergeable state. |
justinmc
left a comment
There was a problem hiding this comment.
LGTM 👍 Thanks for making the codebase more readable as always.
dev/bots/test.dart
Outdated
| final List<String> allExpectedFiles = binariesWithEntitlements(flutterRoot) + binariesWithoutEntitlements(flutterRoot); | ||
| final Set<String> foundFiles = <String>{ | ||
| for (final String binaryPath in binaryPaths) | ||
| if (allExpectedFiles.contains(binaryPath)) binaryPath |
There was a problem hiding this comment.
I had to double check the styleguide but looks like this is right. It should be on one line like this (as long as it fits in the line length). https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#prefer-single-line-for-short-collection-if-and-collection-for
| device.deviceId, | ||
| benchmarkPath, | ||
| ]; | ||
| options.add(benchmarkPath); |
| return convertedActions; | ||
| return <AndroidSemanticsAction>[ | ||
| for (final int id in actions) | ||
| if (AndroidSemanticsAction.deserialize(id) case final AndroidSemanticsAction action) |
There was a problem hiding this comment.
I didn't know about this case syntax.
| return <String?>[ | ||
| for (final List<String?> slice in _chain) ...slice, | ||
| ..._slice.sublist(0, _pointer), | ||
| ].cast<String>(); |
There was a problem hiding this comment.
Avoid .cast.
The result checks the value on every read and write, rather than once in constructing the list.
This kind of inefficiency should be avoided in the foundation.
Instead, nest a for-in in the control flow collection to make it equivalent to the original code.
There was a problem hiding this comment.
I had no idea that .cast worked that way, thank you!
| return result; | ||
| return <String?>[ | ||
| for (final List<String?> slice in _chain) ...slice, | ||
| ..._slice.sublist(0, _pointer), |
There was a problem hiding this comment.
..._slice.sublist(...) is creating an extra temporary list.
Presumably the original code avoided result.addAll(_slice.sublist(0, _pointer)) for some reason.
I would make this more like the original, i.e.
for (int i = 0; i < _pointer; i++) _slice[i]!,
|
Thank you all very much! It looks like a merge conflict popped up and |
Manual roll requested by [email protected] flutter/flutter@53cba24...2e748e8 2024-04-15 [email protected] Implementing control flow collections (flutter/flutter#146601) 2024-04-15 [email protected] Roll Packages from 78f684c to 6698b2d (3 revisions) (flutter/flutter#146761) 2024-04-15 [email protected] test: Fix memory leak in transitions test (flutter/flutter#146747) 2024-04-15 [email protected] Fix filled text field active indicator overflows container bounds (flutter/flutter#146637) 2024-04-14 [email protected] - Fixes _DropdownMenuState leaking text controller (flutter/flutter#146571) 2024-04-13 [email protected] Fix memory leaks in `FloatingActionButton` (flutter/flutter#146711) 2024-04-12 [email protected] Roll Flutter Engine from 0e56e3dffe43 to 1a13c7d1f40e (2 revisions) (flutter/flutter#146703) 2024-04-12 [email protected] Roll pub packages (flutter/flutter#146704) 2024-04-12 49699333+dependabot[bot]@users.noreply.github.com Bump peter-evans/create-pull-request from 6.0.2 to 6.0.3 (flutter/flutter#146702) 2024-04-12 [email protected] Avoid forwarding the data after socket is disconnected. (flutter/flutter#146665) 2024-04-12 [email protected] [flutter_tools] Fix conductor for package args roll (flutter/flutter#146646) 2024-04-12 [email protected] Roll Flutter Engine from 6b37b170998e to 0e56e3dffe43 (4 revisions) (flutter/flutter#146698) 2024-04-12 [email protected] Light sliver clean up before SliverTree (flutter/flutter#146696) 2024-04-12 [email protected] Fix label text color is wrong for a focused and hovered TextField (flutter/flutter#146572) 2024-04-12 [email protected] Fix `getOffsetForCaret` crash (flutter/flutter#146669) 2024-04-12 [email protected] Update gen_keycodes templates (flutter/flutter#146481) 2024-04-12 [email protected] Support `flutter run --wasm` and `flutter drive --wasm`. (flutter/flutter#146231) 2024-04-12 [email protected] Fix curved animation memory leak for scrollbar (flutter/flutter#146670) 2024-04-12 [email protected] Roll Packages from e98839a to 78f684c (6 revisions) (flutter/flutter#146691) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
This pull request aims for improved readability, based on issue flutter#146600. ```dart // before Set<Color> _distinctVisibleColors() { final Set<Color> distinctVisibleColors = <Color>{}; if (top.style != BorderStyle.none) { distinctVisibleColors.add(top.color); } if (right.style != BorderStyle.none) { distinctVisibleColors.add(right.color); } if (bottom.style != BorderStyle.none) { distinctVisibleColors.add(bottom.color); } if (left.style != BorderStyle.none) { distinctVisibleColors.add(left.color); } return distinctVisibleColors; } // after Set<Color> _distinctVisibleColors() { return <Color>{ if (top.style != BorderStyle.none) top.color, if (right.style != BorderStyle.none) right.color, if (bottom.style != BorderStyle.none) bottom.color, if (left.style != BorderStyle.none) left.color, }; } ``` Most of the repo should be covered in this PR (aside from `flutter_tools/`, since there was a lot going on in there).
) Manual roll requested by [email protected] flutter/flutter@53cba24...2e748e8 2024-04-15 [email protected] Implementing control flow collections (flutter/flutter#146601) 2024-04-15 [email protected] Roll Packages from 78f684c to 6698b2d (3 revisions) (flutter/flutter#146761) 2024-04-15 [email protected] test: Fix memory leak in transitions test (flutter/flutter#146747) 2024-04-15 [email protected] Fix filled text field active indicator overflows container bounds (flutter/flutter#146637) 2024-04-14 [email protected] - Fixes _DropdownMenuState leaking text controller (flutter/flutter#146571) 2024-04-13 [email protected] Fix memory leaks in `FloatingActionButton` (flutter/flutter#146711) 2024-04-12 [email protected] Roll Flutter Engine from 0e56e3dffe43 to 1a13c7d1f40e (2 revisions) (flutter/flutter#146703) 2024-04-12 [email protected] Roll pub packages (flutter/flutter#146704) 2024-04-12 49699333+dependabot[bot]@users.noreply.github.com Bump peter-evans/create-pull-request from 6.0.2 to 6.0.3 (flutter/flutter#146702) 2024-04-12 [email protected] Avoid forwarding the data after socket is disconnected. (flutter/flutter#146665) 2024-04-12 [email protected] [flutter_tools] Fix conductor for package args roll (flutter/flutter#146646) 2024-04-12 [email protected] Roll Flutter Engine from 6b37b170998e to 0e56e3dffe43 (4 revisions) (flutter/flutter#146698) 2024-04-12 [email protected] Light sliver clean up before SliverTree (flutter/flutter#146696) 2024-04-12 [email protected] Fix label text color is wrong for a focused and hovered TextField (flutter/flutter#146572) 2024-04-12 [email protected] Fix `getOffsetForCaret` crash (flutter/flutter#146669) 2024-04-12 [email protected] Update gen_keycodes templates (flutter/flutter#146481) 2024-04-12 [email protected] Support `flutter run --wasm` and `flutter drive --wasm`. (flutter/flutter#146231) 2024-04-12 [email protected] Fix curved animation memory leak for scrollbar (flutter/flutter#146670) 2024-04-12 [email protected] Roll Packages from e98839a to 78f684c (6 revisions) (flutter/flutter#146691) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

This pull request aims for improved readability, based on issue #146600.
Most of the repo should be covered in this PR (aside from
flutter_tools/, since there was a lot going on in there).Pre-launch Checklist
///).