-
Notifications
You must be signed in to change notification settings - Fork 28.7k
[canvaskit] Manually trigger input
event in text editing tests for Safari
#170022
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
[canvaskit] Manually trigger input
event in text editing tests for Safari
#170022
Conversation
autosubmit label was removed for flutter/flutter/170022, because - The status or check suite Google testing has failed. Please fix the issues identified (or deflake) before re-applying this label. |
<!-- start_original_pr_link --> Reverts: #169273 <!-- end_original_pr_link --> <!-- start_initiating_author --> Initiated by: jason-simmons <!-- end_initiating_author --> <!-- start_revert_reason --> Reason for reverting: seeing flakes of `dart_data_asset_test.dart` CI runs for various PRs got errors in the `tool_integration_tests` shards. The errors occurred on multiple platforms (Linux, Mac, and Windows). Affected PRs include: #170022, #169995 LUCI log of an error: https://ci.chromium.org/ui/p/flutter/builders/try/Windows%20t <!-- end_revert_reason --> <!-- start_original_pr_author --> Original PR Author: mosuem <!-- end_original_pr_author --> <!-- start_reviewers --> Reviewed By: {bkonyi} <!-- end_reviewers --> <!-- start_revert_body --> This change reverts the following previous change: Refiling of #164094, which itself is a rebase of #159675 This PR adds bundling support for the experimental dart data asset feature: Dart packages with hooks can now emit data assets which the flutter tool will bundle. It relies on flutter's existing asset bundling mechanism (e.g. entries in AssetManifest.json, DevFS syncing in reload/restart, ...). The support is added under an experimental flag (similar to the existing native assets experimental flag). Also, kNativeAssets is removed to also bundle data assets on flutter build bundle. The chrome sandbox is disabled as per #165664. ## 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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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]. <!-- 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 <!-- end_revert_body --> Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com>
CI had a failure that stopped further tests from running. We need to investigate to determine the root cause. SHA at time of execution: be1cb94. Possible causes:
A blank commit, or merging to head, will be required to resume running CI for this PR. Error Details:
Stack trace:
|
commit 1b9502b007d01e1cc79dd86fc3300061522803a5 Author: Kostia Sokolovskyi <sokolovskyi.konstantin@gmail.com> Date: Mon Jun 9 17:01:53 2025 +0200 Add debugOverridePlatformViewRegistry to HtmlElementView test. (#170163) - Adds `debugOverridePlatformViewRegistry` usage to `HtmlElementView` tests - Removes private `debugOverridePlatformViewRegistry` from `_html_element_view_web.dart` - [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]. - [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]. <!-- 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 commit e9e989bef3de34cd8d2b24215f76bfb660aa544a Author: engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Date: Sat Jun 7 07:45:31 2025 -0400 Roll Dart SDK from f8e88f6ce02a to c26e7ca44805 (1 revision) (#170198) https://dart.googlesource.com/sdk.git/+log/f8e88f6ce02a..c26e7ca44805 2025-06-07 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-211.0.dev If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/dart-sdk-flutter Please CC chinmaygarde@google.com,dart-vm-team@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: 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 commit 2eec076321fb4ea99a461fd18e540e7ed110eb2c Author: engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Date: Fri Jun 6 19:40:24 2025 -0400 Roll Dart SDK from 239174405ad0 to f8e88f6ce02a (14 revisions) (#170182) https://dart.googlesource.com/sdk.git/+log/239174405ad0..f8e88f6ce02a 2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-210.0.dev 2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-209.0.dev 2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-208.0.dev 2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-207.0.dev 2025-06-06 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-206.0.dev 2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-205.0.dev 2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-204.0.dev 2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-203.0.dev 2025-06-05 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-202.0.dev 2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-201.0.dev 2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-200.0.dev 2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-199.0.dev 2025-06-04 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-198.0.dev 2025-06-03 dart-internal-merge@dart-ci-internal.iam.gserviceaccount.com Version 3.9.0-197.0.dev If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/dart-sdk-flutter Please CC chinmaygarde@google.com,dart-vm-team@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: 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 commit f4bd508c28a92f2e85422f454cf1a393eebed843 Author: Koji Wakamiya <koji.wakamiya@gmail.com> Date: Sat Jun 7 08:36:16 2025 +0900 Dispose ImmutableBuffer at web_ui.instantiateImageCodecFromBuffer and web_ui.instantiateImageCodecWithSize (#161488) fix https://github.com/flutter/flutter/issues/150016 Fixed `instantiateImageCodecFromBuffer` and `instantiateImageCodecWithSize` and added tests. doc > The buffer will be disposed by this method once the codec has been created, so the caller must relinquish ownership of the buffer when they call this method. * https://api.flutter.dev/flutter/dart-ui/instantiateImageCodecFromBuffer.html * https://api.flutter.dev/flutter/dart-ui/instantiateImageCodecWithSize.html ui https://github.com/flutter/flutter/blob/bd1ebf2e1498bd022808f8b237654ce42ae537be/engine/src/flutter/lib/ui/painting.dart#L2484-L2504 https://github.com/flutter/flutter/blob/bd1ebf2e1498bd022808f8b237654ce42ae537be/engine/src/flutter/lib/ui/painting.dart#L2541-L2558 web_ui https://github.com/flutter/flutter/blob/bd1ebf2e1498bd022808f8b237654ce42ae537be/engine/src/flutter/lib/web_ui/lib/painting.dart#L640-L679 - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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]. <!-- 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 --------- Co-authored-by: Mouad Debbar <mdebbar@google.com> commit 7769f98c33c5858bd7fca6f914374f2d01bd4e9b Author: Hannah Jin <jhy03261997@gmail.com> Date: Fri Jun 6 16:17:20 2025 -0700 [a11y] Semanctis flag refactor step 4: web and updateNode (#168852) issue: https://github.com/flutter/flutter/issues/166101, overall goal is to update semantics flag to be a struct/class to support more than 32 flags. step 1: https://github.com/flutter/flutter/pull/167421 Update semantics_node.h and dart:ui step 2: https://github.com/flutter/flutter/pull/167738 Update Embedder part to use a struct instead of a int bit mask. step 3: https://github.com/flutter/flutter/pull/167771 Update Framework use the SemanticsFlags class instead of bitmask step 4 (this PR) Update web engine to use the new class and update SemanticsUpdateBuilder.updateNode to pass a list of bools instead of bitmask TODO: flutter_tester use the SemanticsFlags class instead of bitmask [apicheck_test.dart](https://github.com/flutter/flutter/pull/167421/files#diff-69aefaacf1041f639974044962123bfae0756ce86032ac1f26256099425d7a5a) Add this test back - [ ] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [ ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [ ] 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 commit 14472b4aed42a9ab23a8ee640323448d4dc8d89d Author: Zachary Anderson <zanderso@users.noreply.github.com> Date: Fri Jun 6 15:57:26 2025 -0700 Reland workflow cache (#170111) Put the Android SDK and pub cache under the workflow's workspace directory instead of the worker's `$HOME` directory. In order to avoid the pub cache and Android SDK being nested inside of the Flutter checkout, this change also moves the Flutter checkout to a subdirectory of the workspace directory called `flutter`. --------- Co-authored-by: John "codefu" McDole <codefu@google.com> commit ea83a6a072990acc34c482d8e90f4d2bef713344 Author: zhongliugo <zhongliu88889@gmail.com> Date: Fri Jun 6 15:15:18 2025 -0700 Fix VoiceOver tab activation by adding tappable behavior to SemanticTab (#170076) This pull request fixes VoiceOver tab activation by adding tappable behavior to the SemanticTab class in the Flutter web engine. The fix ensures that tabs can be properly activated using assistive technology commands like VoiceOver's ctrl-option-space, making tab navigation fully accessible for screen reader users. When using VoiceOver to navigate tabs in a Flutter web app, users were unable to activate tabs using the standard VoiceOver activation command (ctrl-option-space). The SemanticTab class was missing the Tappable semantic behavior that enables assistive technology interaction, causing screen readers to treat tabs as non-interactive elements despite having tap handlers in the Flutter framework. **Before behavior:** https://tab-0605-before.web.app/ - Navigate to a tab using VoiceOver (ctrl-option-arrow) - Attempt to activate the tab with ctrl-option-space - Tab does not respond to activation command - Users cannot switch between tabs using assistive technology VoiceOver and other screen reader users can now properly activate tabs using standard assistive technology commands. Tabs respond correctly to ctrl-option-space and other activation gestures, providing full keyboard accessibility for tab navigation. **After behavior:** https://tab-0605-after.web.app/ - Navigate to a tab using VoiceOver (ctrl-option-arrow) - Activate the tab with ctrl-option-space - Tab switches correctly, displaying the associated tab panel - Consistent behavior across all assistive technologies - Added `addTappable()` call to `SemanticTab` constructor in `tabs.dart` - Added test case "tab with tap action" to verify DOM elements receive the `flt-tappable` attribute - Ensures tabs with `hasTap: true` are properly marked as interactive for assistive technologies Added unit test that verifies: - Tabs with tap actions receive the `flt-tappable` DOM attribute - SemanticTab properly integrates with the existing tappable behavior system This PR addresses GitHub Issue #169279, which reports that VoiceOver doesn't allow users to click tabs in Flutter web applications. - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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. commit 8caedde6cc2cc847ee31f98b9d394d97aa2ae968 Author: Jason Simmons <jason-simmons@users.noreply.github.com> Date: Fri Jun 6 15:12:09 2025 -0700 Redirect the output of the "pub upgrade" command run by bin/flutter to stderr (#170174) The dev/bots/analyze.dart script is now running "flutter pub deps --json" to query packages in the Flutter workspace (see https://github.com/flutter/flutter/pull/169556) analyze.dart is capturing the stdout of that bin/flutter command and expecting the output to contain only JSON. If the flutter_tools snapshot needs to be rebuilt, then the output of the pub command invoked by the rebuild should not show up in stdout. commit 39ce6155300cec9808570b8dc7fd5df5f1635a1a Author: Qun Cheng <36861262+QuncCccccc@users.noreply.github.com> Date: Fri Jun 6 14:51:08 2025 -0700 Add landmark roles (#168931) This PR is to add ARIA landmark roles to `SemanticsRole`: complementary, contentInfo, main, navigation and region. I skipped `sectionhead` because it is an abstract role based on the [MDN docs](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Reference/Roles/sectionhead_role#:~:text=The%20structural%20sectionhead%20role%20is%20an%20abstract%20role%20for%20the%20subclass%20roles%20that%20identify%20the%20labels%20or%20summaries%20of%20the%20sections%20they%20label.%20The%20role%20must%20not%20be%20used.) . Fixes https://github.com/flutter/flutter/issues/162138 - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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. commit ce058e0be0d82198227c3d2adeb8881c4e763059 Author: Alex Medinsh <alex.medinsh@gmail.com> Date: Sat Jun 7 00:21:15 2025 +0300 Trigger `CupertinoPicker` haptics in the middle of the item (#169670) Towards https://github.com/flutter/flutter/issues/169606 This PR only fixes the haptic behaviour of `CupertinoPicker`, which now triggers only when passing the middle of the item. Haptic feedback is now also not trigger when tapping on an item to scroll to. - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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. commit 631ab1729ada1835fc61037da06c54f4a50af0db Author: engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Date: Fri Jun 6 15:49:35 2025 -0400 Roll Skia from c810c9ba87fe to 910070084066 (29 revisions) (#170165) https://skia.googlesource.com/skia.git/+log/c810c9ba87fe..910070084066 2025-06-06 mike@reedtribe.org use SkSpan in SkMatrix API 2025-06-06 syoussefi@google.com [graphite][vulkan] Minimize graphics pipeline key 2025-06-06 syoussefi@google.com [graphite][vulkan] Use vertex input dynamic state 2025-06-06 mike@reedtribe.org don't define SK_SUPPORT_UNSPANNED_API: it is in SkTypes.h 2025-06-06 mike@reedtribe.org static bounds methods 2025-06-06 syoussefi@google.com [vulkan] Fix feature checks for YCbCr's chroma filter 2025-06-06 syoussefi@google.com [vulkan] Apply RelaxedPrecision to texture/atomic intrinsics 2025-06-06 thomsmit@google.com Revert "[graphite] Fix clamping bug on Intel UHD 630." 2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from ef31b3ed1c0e to db9624073324 (8 revisions) 2025-06-06 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 8b4c1b14163e to 3bbfa4528971 (9 revisions) 2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from b62ac8aa106b to 11dc1b167af4 (2 revisions) 2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from f8d7c6eea2f0 to 63ca6919b752 (19 revisions) 2025-06-06 syoussefi@google.com [graphite][vulkan] Optimize sample-count-support check 2025-06-06 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from e12ef7c0da42 to 1915b4d7ccd3 (1 revision) 2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 0dbc05833984 to 1c3b39ad6dc0 (3 revisions) 2025-06-05 syoussefi@google.com Replace bug ids with mapped ids in the new issue tracker 2025-06-05 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-05 bungeman@google.com Revert "[graphite] Use HW blends for kPlus on unorm texture formats" 2025-06-05 bungeman@google.com Remove support for iOS12 2025-06-05 aswolfers@google.com Revert "Support GL texture for BGRA8 format" 2025-06-05 thomsmit@google.com [graphite] Fix clamping bug on Intel UHD 630. 2025-06-05 thomsmit@google.com [graphite] Disable DynamicVerticesPaddingTest 2025-06-05 nicolettep@google.com Recommend persistent default install location for Android NDK 2025-06-05 danieldilan@google.com Revert "[png] Simplify extra endian transform for SkPngEncode" 2025-06-05 danieldilan@google.com Implement drawCoverageMask for SkBitmapDevice 2025-06-05 syoussefi@google.com Fix resource loading in Android apks 2025-06-05 borenet@google.com [infra] Add jobs for MacOS 11 2025-06-05 mike@reedtribe.org Use SkSpan in pathbuilder API If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/skia-flutter-autoroll Please CC brettos@google.com,chinmaygarde@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: 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 commit b5c1bbef587a7d02290301357b7ef89d11028ba1 Author: Victor Sanni <victorsanniay@gmail.com> Date: Fri Jun 6 12:18:19 2025 -0700 Align persistent nav bar leading widget (#170095) | Before | After | | --- | --- | | <img width="381" alt="before leading" src="https://github.com/user-attachments/assets/ffd22324-75a4-4ff8-a06c-87f9148c198c" /> | <img width="381" alt="after leading" src="https://github.com/user-attachments/assets/36a1cd49-856b-462f-b321-6a016ffed382" /> | Fixes [CupertinoNavigationBar leading is too high](https://github.com/flutter/flutter/issues/18536) commit 8a41339418df9943583e72029813ea76d33587bf Author: Kevin Moore <kevmoo@users.noreply.github.com> Date: Fri Jun 6 14:10:51 2025 -0500 [engine/web] Migrate many things to switch expressions (#170096) commit c958e8313c782ea1df62b384a5dc85a2db5f747b Author: auto-submit[bot] <98614782+auto-submit[bot]@users.noreply.github.com> Date: Fri Jun 6 17:58:16 2025 +0000 Reverts "Lazy paths and frame object arenas (#168996)" (#170164) <!-- start_original_pr_link --> Reverts: flutter/flutter#168996 <!-- end_original_pr_link --> <!-- start_initiating_author --> Initiated by: zanderso <!-- end_initiating_author --> <!-- start_revert_reason --> Reason for reverting: Failing in post submit on web_long_running_tests_3_5 <!-- end_revert_reason --> <!-- start_original_pr_author --> Original PR Author: eyebrowsoffire <!-- end_original_pr_author --> <!-- start_reviewers --> Reviewed By: {mdebbar} <!-- end_reviewers --> <!-- start_revert_body --> This change reverts the following previous change: The lifecycle of `Path` objects are currently not managed by the user. That is to say, there is no `dispose` method on path objects and therefore no explicit way to detect when the user is done with the path object and the native-side object can be exposed. As of right now, we use `FinalizationRegistry` to clean up the native-side objects when the dart-side objects are garbage collected. However, this has a number of issues: * Adding objects to the finalization registry actually ends up prolonging their lifetime in V8, since the V8 garbage collector will only collect them in a major GC and not a minor GC once they are registered with the finalization registry. See the following Chrome bug: https://issues.chromium.org/issues/340777103 * We can run into OOM issues where the linear memory of canvaskit/skwasm exceeds 2GB if the collection of paths go on too long. * Even if the paths do get collected by the GC, they often happen infrequently enough that paths over many frames have accumulated and are being collected all at once. This gap can often be dozens or hundreds of frames long, and when collection does occur it is freeing a lot of paths at once, which causes a janky frame. I have seen this take upwards of 800ms on my M1 Macbook Pro. There are some more details in https://github.com/flutter/flutter/issues/153678 This PR alleviates this issue by creating a `LazyPath` object. This object is added to an arena that explicitly collects the underlying native objects at the end of each frame. The object also tracks the API calls made to it so that if it is actually used across a frame boundary that we can recreate the native object if it was freed. Running our benchmarks, this has a non-trivial performance cost to building and using these paths (30-50% in a microbenchmark, 3-6% in a broader full app benchmark). However, as a team we've decided that this cost is worth it to avoid OOM issues as well as the non-deterministic jank associated with large collections of these objects. <!-- end_revert_body --> Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com> commit 894fbf6d5323bf0e6fcd3b1170eef932f646cec5 Author: Daco Harkes <dacoharkes@google.com> Date: Fri Jun 6 19:30:54 2025 +0200 [native assets] Roll dependencies (#169920) Roll to deps published today. commit 48c6ef247df6150059b058b28212ccb4138eaf78 Author: Mouad Debbar <mdebbar@google.com> Date: Fri Jun 6 13:16:11 2025 -0400 Make DDC tests run on linux only (#170155) I had previously allowed these tests to run on Mac and Windows (https://github.com/flutter/flutter/pull/169860). But it turns out they are flaky on those platforms too. So let's mark them back as linux-only. commit d3170f4a966431cd74ada0f57f205e41c72b058f Author: Jenn Magder <magder@google.com> Date: Fri Jun 6 09:58:09 2025 -0700 Remove deprecated Objective-C iOS app create template (#169547) Remove Objective-C template for new apps. Existing apps won't be impacted. Keep Objective-C templates for plugins, though their example apps will be Swift instead. See https://github.com/flutter/flutter/issues/148586#issuecomment-2121323676 Move `templates/app/ios-swift.tmpl` to `templates/app/ios.tmpl`. Fixes https://github.com/flutter/flutter/issues/148586 - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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]. <!-- 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 commit a11524896eaecaa2a6a44c14cdb65aa31492e479 Author: Jackson Gardner <jacksongardner@google.com> Date: Fri Jun 6 09:27:08 2025 -0700 Lazy paths and frame object arenas (#168996) The lifecycle of `Path` objects are currently not managed by the user. That is to say, there is no `dispose` method on path objects and therefore no explicit way to detect when the user is done with the path object and the native-side object can be exposed. As of right now, we use `FinalizationRegistry` to clean up the native-side objects when the dart-side objects are garbage collected. However, this has a number of issues: * Adding objects to the finalization registry actually ends up prolonging their lifetime in V8, since the V8 garbage collector will only collect them in a major GC and not a minor GC once they are registered with the finalization registry. See the following Chrome bug: https://issues.chromium.org/issues/340777103 * We can run into OOM issues where the linear memory of canvaskit/skwasm exceeds 2GB if the collection of paths go on too long. * Even if the paths do get collected by the GC, they often happen infrequently enough that paths over many frames have accumulated and are being collected all at once. This gap can often be dozens or hundreds of frames long, and when collection does occur it is freeing a lot of paths at once, which causes a janky frame. I have seen this take upwards of 800ms on my M1 Macbook Pro. There are some more details in https://github.com/flutter/flutter/issues/153678 This PR alleviates this issue by creating a `LazyPath` object. This object is added to an arena that explicitly collects the underlying native objects at the end of each frame. The object also tracks the API calls made to it so that if it is actually used across a frame boundary that we can recreate the native object if it was freed. Running our benchmarks, this has a non-trivial performance cost to building and using these paths (30-50% in a microbenchmark, 3-6% in a broader full app benchmark). However, as a team we've decided that this cost is worth it to avoid OOM issues as well as the non-deterministic jank associated with large collections of these objects. commit ed275039e174b0916816a2889f21bad54a61af56 Author: Kostia Sokolovskyi <sokolovskyi.konstantin@gmail.com> Date: Fri Jun 6 18:14:19 2025 +0200 [web] Allow overriding platformViewRegistry for testing. (#170144) Closes https://github.com/flutter/flutter/issues/170143 - Adds `debugOverridePlatformViewRegistry` function to allow `platformViewRegistry` overriding in tests - Adds tests for the new functionality - [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]. - [X] I listed at least one issue that this PR fixes in the description above. - [X] I updated/added relevant documentation (doc comments with `///`). - [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]. <!-- 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 commit 4ffa9852f9f07f0279fc3da0a1b7dfea184226fd Author: engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Date: Fri Jun 6 11:42:25 2025 -0400 Roll Packages from ecba2dbf07ee to 974f1522ee03 (6 revisions) (#170146) https://github.com/flutter/packages/compare/ecba2dbf07ee...974f1522ee03 2025-06-06 robert.odrowaz@leancode.pl [camera_avfoundation] Implementation swift migration - part 4 (flutter/packages#9219) 2025-06-05 stevenmagdy92@gmail.com [go_router_builder] Use a mixin instead of an extension (flutter/packages#9275) 2025-06-05 stuartmorgan@google.com Roll Flutter master to 8b18dde7 (flutter/packages#9387) 2025-06-05 10687576+bparrishMines@users.noreply.github.com [camera_android_camerax] Fixes premature garbage collection of native objects when app is under memory pressure (flutter/packages#9287) 2025-06-05 22373191+Hari-07@users.noreply.github.com [google_maps_flutter_platform_interface] Add a new zIndexInt param to marker and deprecate zIndex (flutter/packages#9372) 2025-06-05 43054281+camsim99@users.noreply.github.com [camera_android_camerax] Java style improvements (flutter/packages#9234) 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-flutter-autoroll Please CC flutter-ecosystem@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: 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 commit 09405e87d819691e787ae95cc7f4297338e5f6d2 Author: auto-submit[bot] <98614782+auto-submit[bot]@users.noreply.github.com> Date: Thu Jun 5 23:40:26 2025 +0000 Reverts "Add caching to the tool test workflow (#169858)" (#170100) <!-- start_original_pr_link --> Reverts: flutter/flutter#169858 <!-- end_original_pr_link --> <!-- start_initiating_author --> Initiated by: jtmcdole <!-- end_initiating_author --> <!-- start_revert_reason --> Reason for reverting: https://github.com/flutter/flutter/issues/170099 Apparently the cache isn't restored correctly? <!-- end_revert_reason --> <!-- start_original_pr_author --> Original PR Author: zanderso <!-- end_original_pr_author --> <!-- start_reviewers --> Reviewed By: {jtmcdole} <!-- end_reviewers --> <!-- start_revert_body --> This change reverts the following previous change: No description provided. <!-- end_revert_body --> Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com> commit de805531741f9b9a56b7ee65bafa37b502be788d Author: Koji Wakamiya <koji.wakamiya@gmail.com> Date: Fri Jun 6 07:07:24 2025 +0900 Remove AlarmClock from BrowserImageDecoder (#161481) PR derived from https://github.com/flutter/flutter/pull/159945. Since `ui.Codec` is now disposed of externally, the close processing of the resource by AlarmClock is no longer necessary. This fix works in combination with #159945 and is stabilized by #161132. - [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. - [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] 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]. <!-- 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 --------- Co-authored-by: Mouad Debbar <mdebbar@google.com> commit 317be1f6813ee420b916a57a1cc08a85fcc9ab27 Author: Zachary Anderson <zanderso@users.noreply.github.com> Date: Thu Jun 5 15:03:56 2025 -0700 Add caching to the tool test workflow (#169858) Co-authored-by: John "codefu" McDole <codefu@google.com> commit cfc9e3e1be24bd1cda836c3248681c9b2cb08a3d Author: Kate Lovett <katelovett@google.com> Date: Thu Jun 5 15:31:24 2025 -0500 Update triage page (#170084) This PR reflects the rolling of go_router triage into framework triage: - removes go_router team from triage docs - Updates the framework triage links - The incoming issue link was broken, pulling the wrong subset due to `p: go_router` - Added PR link for framework owned PRs in flutter/packages I am following up with the triage team to remove the team-go_router labels and reroute them to team-framework. - [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. - [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] 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]. <!-- 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 commit 2c9d898e2f01ccea157d559181d4acaa82388200 Author: Koji Wakamiya <koji.wakamiya@gmail.com> Date: Fri Jun 6 04:58:50 2025 +0900 [Engine][Web] Fixed fallback font loading process (#166212) fix https://github.com/flutter/flutter/issues/165299 Fixes a problem where the drawing does not render as expected if the value of `maxCodePointsCovered` is greater for an unsuitable language than for a font suitable for that language. | before | after | | :---: | :---: | | <img src="https://github.com/user-attachments/assets/137dc021-31ce-41a7-b7a9-843abd88b738" width="300" /> | <img src="https://github.com/user-attachments/assets/fbfcc982-623a-4fe9-87a6-bf5bd7c88ebd" width="300" /> | - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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]. <!-- 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 --------- Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com> commit 7f26571eb13a0e4a8a2d4a36b4038ed71d34ce70 Author: Srujan Gaddam <58529443+srujzs@users.noreply.github.com> Date: Thu Jun 5 10:24:08 2025 -0700 Add connectedApps listener before we launch the browser (#170010) Related to https://github.com/flutter/flutter/issues/169574 There's a race condition where we currently might listen for the connected app after the stream has already sent the app. That would make the app wait forever. This avoids that by registering the listener before the browser even launches to make sure that the stream can't possibly send a connected app before we get to listen to it. - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [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] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. --------- Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com> commit 63980cb25ba5b70122f2814406989eb5fa8ef5a1 Author: flutter-pub-roller-bot <137456488+flutter-pub-roller-bot@users.noreply.github.com> Date: Thu Jun 5 09:34:27 2025 -0700 Roll pub packages (#170066) This PR was generated by `flutter update-packages --force-upgrade`. commit 4469c5e4db3e6203c0bab2ad0b1b44df4cdc0d07 Author: Matan Lurey <matanlurey@users.noreply.github.com> Date: Thu Jun 5 09:33:45 2025 -0700 Release validation: Check `bin/internal/engine.version` in presubmit (#170018) Closes https://github.com/flutter/flutter/issues/170012. Note that this won't immediately apply to 3.32, but only for future branches from `master`. commit 92c55f06e01ecd2b7dd46f9a6bbae5d5f418f394 Author: engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Date: Thu Jun 5 12:29:41 2025 -0400 Roll Skia from 14bdc9e0a8ee to c810c9ba87fe (28 revisions) (#170064) https://skia.googlesource.com/skia.git/+log/14bdc9e0a8ee..c810c9ba87fe 2025-06-05 fmalita@google.com Fix typo in legacy SkPath::Polygon 2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from f14d47636e83 to 0dbc05833984 (4 revisions) 2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 88ea74bfbc55 to ef31b3ed1c0e (4 revisions) 2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Skia Infra from 1a29d4378c5a to 8b4c1b14163e (4 revisions) 2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from a8133cbb3c89 to b62ac8aa106b (2 revisions) 2025-06-05 skia-autoroll@skia-public.iam.gserviceaccount.com Roll Dawn from 0b7011542a20 to f8d7c6eea2f0 (19 revisions) 2025-06-05 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-05 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-05 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-05 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-05 syoussefi@google.com [graphite][vulkan] Use extended dynamic state 2025-06-05 mike@reedtribe.org Use SkSpan in SkDevice/SkDraw drawPoints 2025-06-04 michaelludwig@google.com [graphite] Use HW blends for kPlus on unorm texture formats 2025-06-04 kjlubick@google.com Fix IWYU enforcement on Graphite standalone headers 2025-06-04 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-04 syoussefi@google.com [vulkan] Fix minFilter vs chromaFilter matching for YCbCr 2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from a6136634622e to f14d47636e83 (6 revisions) 2025-06-04 mike@reedtribe.org Use SkSpan in Path API 2025-06-04 thomsmit@google.com [graphite] Add padding test for drawPass-time vertices uploads 2025-06-04 danieldilan@google.com [png] Simplify extra endian transform for SkPngEncode 2025-06-04 kjlubick@google.com Add missing include 2025-06-04 thomsmit@google.com [graphite] Add missing string include 2025-06-04 bungeman@google.com No longer claim support for macOS 10.15 2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll skcms from df82c365f7be to e12ef7c0da42 (1 revision) 2025-06-04 mike@reedtribe.org Use SkSpan in SkRect::setBounds 2025-06-04 kjlubick@google.com Get CPU Recorder from all recorders 2025-06-04 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial). 2025-06-04 skia-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 8c75960e034a to 88ea74bfbc55 (7 revisions) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/skia-flutter-autoroll Please CC brettos@google.com,chinmaygarde@google.com,kjlubick@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry To file a bug in Flutter: 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 commit 817fa9701467feaa8ac7bb4d4446548b983fcaba Author: Mouad Debbar <mdebbar@google.com> Date: Thu Jun 5 12:10:14 2025 -0400 Combine expression evaluation tests to reduce testing time (#169860) Each `flutter run` invocation is expensive (time- and memory-wise). Each invocation also launches its own Chrome instance. This PR is attempting to minimize the number of launches by combining tests that need the same `flutter run` configuration into a single test. That way, we are reusing a single instance to do many checks, instead of launching a new instance for each check. Currently, I did this for expression evaluation tests, which cut their runtime in half on my local machine. This PR aims to help with issues like https://github.com/flutter/flutter/issues/169574 and https://github.com/flutter/flutter/issues/169304. Closes https://github.com/flutter/flutter/issues/110879 commit 736053538b14ed730d5c9937cb794983afef2f4f Author: engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Date: Thu Jun 5 11:53:21 2025 -0400 Roll Packages from 2bac766c5853 to ecba2dbf07ee (1 revision) (#170061) https://github.com/flutter/packages/compare/2bac766c5853...ecba2dbf07ee 2025-06-04 jessiewong401@gmail.com Bump create_all_packages_command CompileSdk to 36 (flutter/packages#9293) 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-flutter-autoroll Please CC flutter-ecosystem@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: 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 commit 121caa68d6c1326e75fd4e42f8c5ad5e318311c7 Author: Jason Simmons <jason-simmons@users.noreply.github.com> Date: Thu Jun 5 07:41:16 2025 -0700 Make ImageFilter::equals a static method and fix the name in its FFI annotation (#170023) Fixes https://github.com/flutter/flutter/issues/169936 commit 6e738ee3929f60e3fd373a06eb9fe6f6da4eb4cb Author: flutter-pub-roller-bot <137456488+flutter-pub-roller-bot@users.noreply.github.com> Date: Wed Jun 4 20:53:33 2025 -0700 Roll pub packages (#170042) This PR was generated by `flutter update-packages --force-upgrade`. commit 6be019ba259ee6e97a62b8d25cabc2077755554d Author: flutter-pub-roller-bot <137456488+flutter-pub-roller-bot@users.noreply.github.com> Date: Wed Jun 4 19:03:10 2025 -0700 Roll pub packages (#170040) This PR was generated by `flutter update-packages --force-upgrade`. commit ad585c1e8d85841ace73c7ccc0e4d3f1b4b5c4da Author: engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Date: Wed Jun 4 21:57:35 2025 -0400 Roll Fuchsia Linux SDK from XalPPr5CNvZXHPo6O... to Dueykg3VpLT5D_jSG... (#170035) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter Please CC chinmaygarde@google.com,zra@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: 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 commit 1af0c06704a04fb338e3f9e7fee51ddfe542b7b1 Author: Jason Simmons <jason-simmons@users.noreply.github.com> Date: Wed Jun 4 17:36:07 2025 -0700 Move the check for Git in the PATH into the top level Windows flutter.bat script (#169794) The check for Git was originally in flutter.bat but was removed by https://github.com/flutter/flutter/commit/b84bfa35264385a897e6d85d039eae0ea6ba90ab in order to improve performance. It was later brought back in https://github.com/flutter/flutter/commit/bc4fc5ffb98478340b53c097d83245582b776940. However, that change added it to a subroutine in shared.bat. If Git is not found then shared.bat would exit the shell process to stop retries of the subroutine. This PR moves the check back into flutter.bat and exits the script without quitting the shell. Fixes https://github.com/flutter/flutter/issues/169784 commit 824868f5d1e6c091a5df23d3628407e75149e1da Author: auto-submit[bot] <98614782+auto-submit[bot]@users.noreply.github.com> Date: Wed Jun 4 23:15:26 2025 +0000 Reverts "Data assets (#169273)" (#170034) <!-- start_original_pr_link --> Reverts: flutter/flutter#169273 <!-- end_original_pr_link --> <!-- start_initiating_author --> Initiated by: jason-simmons <!-- end_initiating_author --> <!-- start_revert_reason --> Reason for reverting: seeing flakes of `dart_data_asset_test.dart` CI runs for various PRs got errors in the `tool_integration_tests` shards. The errors occurred on multiple platforms (Linux, Mac, and Windows). Affected PRs include: https://github.com/flutter/flutter/pull/170022, https://github.com/flutter/flutter/pull/169995 LUCI log of an error: https://ci.chromium.org/ui/p/flutter/builders/try/Windows%20t <!-- end_revert_reason --> <!-- start_original_pr_author --> Original PR Author: mosuem <!-- end_original_pr_author --> <!-- start_reviewers --> Reviewed By: {bkonyi} <!-- end_reviewers --> <!-- start_revert_body --> This change reverts the following previous change: Refiling of #164094, which itself is a rebase of #159675 This PR adds bundling support for the experimental dart data asset feature: Dart packages with hooks can now emit data assets which the flutter tool will bundle. It relies on flutter's existing asset bundling mechanism (e.g. entries in AssetManifest.json, DevFS syncing in reload/restart, ...). The support is added under an experimental flag (similar to the existing native assets experimental flag). Also, kNativeAssets is removed to also bundle data assets on flutter build bundle. The chrome sandbox is disabled as per #165664. - [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]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [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]. <!-- 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 <!-- end_revert_body --> Co-authored-by: auto-submit[bot] <flutter-engprod-team@google.com> commit e094c18882ad0e3382351a1e906cc928611ba4de Author: Camille Simon <43054281+camsim99@users.noreply.github.com> Date: Wed Jun 4 15:21:22 2025 -0700 Merge `CHANGELOG` from 3.32.2 (#170028) Adds `CHANGELOG` updates from the 3.32.2 stable hotfix release. - [ ] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [ ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [ ] 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 commit 27d9c0ff2beee1f9005fc2d8a7f5702267470094 Author: Ben Konyi <bkonyi@google.com> Date: Wed Jun 4 16:21:20 2025 -0400 [ Widget Previews ] Add support for localizations in widget previews (#169229) This change adds a new `localizations` property to the `Preview` annotation, which takes a callback that returns a `PreviewLocalizationsData` object. This class contains the same localization properties that can be provided to `WidgetsApp` and other similar widgets. This change also refactors much of the localization resolution logic into a shared `LocalizationsResolver` class to allow for localization resolution to be done in the widget preview scaffold on a per-preview basis. Fixes https://github.com/flutter/flutter/issues/166433 commit 94e9a2ca8d1737ec9b79c00b9f2c003bb6926a4e Author: Ben Konyi <bkonyi@google.com> Date: Wed Jun 4 16:17:27 2025 -0400 [ Tool ] Fix failed VSCode version lookup on Linux (#169949) VSCode installations on Linux appear to place the packages.json file at `$VSCODE_INSTALL/resources/app/package.json` rather than at the expected `$VSCODE_INSTALL/Resources/app/package.json`, causing the VSCode version to not be reported correctly on Linux. Fixes https://github.com/flutter/flutter/issues/169812 commit d3e8dc3df9e81778c6d8db44d0dd095249fbf0d9 Author: LongCatIsLooong <31859944+LongCatIsLooong@users.noreply.github.com> Date: Wed Jun 4 13:09:33 2025 -0700 Make _layoutBoundary a boolean 2 (#169958) https://github.com/flutter/flutter/pull/169638, without the more risky changes. I'll try to fix the g3 failures and land #169638 later. - [ ] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [ ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [ ] 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 …
Manually trigger an
input
event to trigger thehandleChange
handler in the text input element. In Safari for MacOS 15.5, this workaround is now required.Fixes #169282
Pre-launch Checklist
///
).If you need help, consider asking for advice on the #hackers-new channel on Discord.