Repository navigation
Comparing changes
Open a pull request
base repository: flutter/flutter
base: d3b14c876900
head repository: flutter/flutter
compare: 9584c6713b32
- 15 commits
- 50 files changed
- 4 contributors
Commits on Sep 1, 2026
-
[CP-stable]Denylists b-series powervr from vulkan (#191903)
This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: What is the link to the issue this cherry-pick is addressing? - #181315 - #191457 - #191351 ### Impact Description: What is the impact (ex. visual jank on Samsung phones, app crash, cannot ship an iOS app)? Does it impact development (ex. flutter doctor crashes when Android Studio is installed), or the shipping of production apps (the app crashes on launch). This information is for domain experts and release engineers to understand the consequences of saying yes or no to the cherry pick. There are a slew of oddities associated with this GPU, graphical glitches and suboptimal performance. ### Changelog Description: Explain this cherry pick: * In one line that is accessible to most Flutter developers. * That describes the state prior to the fix. * That includes which platforms are impacted. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples. [flutter/181315] When using Impeller on Android devices with B-Series PowerVR GPUs, visual oddities and performance drops can be experienced. ### Workaround: Is there a workaround for this issue? No. ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: What are the steps to validate that this fix works? This just reverts us to a preexisting state and sends these devices down a well known path.
Configuration menu - View commit details
-
Copy full SHA for ad4b29a - Browse repository at this point
Copy the full SHA ad4b29aView commit details -
[stable] [flutter_tools] Handle missing Xcode gracefully in getInfo a…
…nd buildMacOS (#191902) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: #191176 ### Impact Description: When running `flutter build macos` or `flutter build ios` on systems where Xcode is uninstalled, incomplete (e.g. Command Line Tools only), or misconfigured, `XcodeProjectInterpreter.getInfo` invokes `xcrun xcodebuild -list` which exits with code 72 (`unable to find utility "xcodebuild"`). Because code 72 was not in the allowed exit codes, `flutter_tools` crashes with an unhandled `ProcessException`. In Flutter 3.47.1 telemetry, this was a top crash with 320 crashes (15.2% share of top 10 crashes). This impacts development workflows on macOS. **Conflict Resolution Note**: Resolved a minor merge conflict in `packages/flutter_tools/lib/src/macos/build_macos.dart` by ordering the Xcode installation pre-flight check ahead of workspace validation. ### Changelog Description: [flutter/191176] When building for macOS or iOS on machines with missing or incomplete Xcode installations, flutter_tools displays an actionable error message instead of crashing with an unhandled ProcessException. ### Workaround: Install Xcode or configure the active developer directory via: `sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer` ### Risk: ### Test Coverage: ### Validation Steps: 1. On a macOS machine, switch `xcode-select` to Command Line Tools: `sudo xcode-select -s /Library/Developer/CommandLineTools`. 2. Run `flutter build macos` in a Flutter project. 3. Verify `flutter_tools` displays a clean `ToolExit` instructing the user to install or configure Xcode, rather than crashing with an unhandled `ProcessException` and stack trace. 4. Run automated test suite: `dart test test/general.shard/ios/xcodeproj_test.dart` and `dart test test/commands.shard/hermetic/build_macos_test.dart`.
Configuration menu - View commit details
-
Copy full SHA for 115c53d - Browse repository at this point
Copy the full SHA 115c53dView commit details
Commits on Sep 2, 2026
-
[CP-stable]Fix Android license detection for cmdline-tools 23.0+ (#19…
…2133) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: #191487 ### Impact Description: Android SDK Command-line Tools 23.0 deprecated `sdkmanager --licenses` in favor of the new `android` CLI. When invoked, `sdkmanager --licenses` now only outputs a deprecation notice (`Warning: The --licenses option is no longer needed.`) rather than the parseable license summary `flutter doctor` previously depended on. As a result, `flutter doctor` fails to parse license status and reports `✗ Android license status unknown.` while prompting users to run `flutter doctor --android-licenses`, which fails to resolve the issue. ### Changelog Description: [flutter/191487] When using Android SDK Command-line Tools 23.0+ for Android, flutter doctor incorrectly reports "Android license status unknown". ### Workaround: 1. Downgrade Android SDK Command-line Tools to version 22.0 via the Android Studio SDK Manager or CLI. 2. If licenses have already been accepted on disk in `<Android-SDK>/licenses/`, Android Gradle builds still succeed and the `flutter doctor` warning can be safely ignored (if the user knows to ignore). ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: 1. Ensure Android SDK Command-line Tools 23.0 is installed (verify in `$ANDROID_HOME/cmdline-tools/latest/source.properties` that `Pkg.Revision=23.0`). 2. Run `flutter doctor -v`. 3. Verify that under `Android toolchain`, it reports `• All Android licenses accepted.` instead of `✗ Android license status unknown.` 4. (Optional negative check) Temporarily rename the `$ANDROID_HOME/licenses` directory, run `flutter doctor -v`, and verify it reports `Android licenses not accepted`. Restore the directory.
Configuration menu - View commit details
-
Copy full SHA for 383b332 - Browse repository at this point
Copy the full SHA 383b332View commit details -
[CP-stable]Fix Actions.handler to forward the intent type to maybeFind (
#192203) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: What is the link to the issue this cherry-pick is addressing? #191045 ### Impact Description: What is the impact (ex. visual jank on Samsung phones, app crash, cannot ship an iOS app)? Does it impact development (ex. flutter doctor crashes when Android Studio is installed), or the shipping of production apps (the app crashes on launch). This information is for domain experts and release engineers to understand the consequences of saying yes or no to the cherry pick. All users of the `Actions.handler` API on all platforms are broken by this bug. ### Changelog Description: Explain this cherry pick: * In one line that is accessible to most Flutter developers. * That describes the state prior to the fix. * That includes which platforms are impacted. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples. [flutter/191045] When `calling Actions.handler` on all platforms, `null` was always returned. ### Workaround: Is there a workaround for this issue? End users would need to reimplement Actions.handler and Action._isEnabled, or switch to master/main channel, or revert to 3.44 ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: What are the steps to validate that this fix works? Compare use of Actions.handler on Flutter 3.47 (broken) vs 3.44. ```dart final callback = Actions.handler(context, MyIntent(...)); ``` When broken, `callback` is always null. When fixed it is the VoidCallback that has been set up to handle the given intent.
Configuration menu - View commit details
-
Copy full SHA for 75a5dd9 - Browse repository at this point
Copy the full SHA 75a5dd9View commit details -
[flutter-3.47-candidate.0] Sync engine.version to ad4b29a (#192211)
Updates the engine.version file from `a804b261645ef8c13eb3d5c44a5c2fb0340c5539` to `ad4b29ad6eb09fbfc827fa7defe115aedbe1e347`.
Configuration menu - View commit details
-
Copy full SHA for b29eb3f - Browse repository at this point
Copy the full SHA b29eb3fView commit details
Commits on Sep 3, 2026
-
[flutter-3.47-candidate.0] Update Flutter DEPS to Dart 1d1a730ef918d6…
…02aedafc939a4cf5940e7589ab (#192210) This PR updates the transitive dependencies in the engine `DEPS` file based on Dart SDK hash `1d1a730ef918d602aedafc939a4cf5940e7589ab`.
Configuration menu - View commit details
-
Copy full SHA for 06a2e2a - Browse repository at this point
Copy the full SHA 06a2e2aView commit details -
Changelog entries from all CPs (#192214)
This PR contains the changelog entries for stable hotfix 3.47.3 (#192086).
Configuration menu - View commit details
-
Copy full SHA for 858dc66 - Browse repository at this point
Copy the full SHA 858dc66View commit details
Commits on Sep 4, 2026
-
[flutter-3.47-candidate.0] Sync engine.version to 06a2e2a (#192312)
Updates the engine.version file from `ad4b29ad6eb09fbfc827fa7defe115aedbe1e347` to `06a2e2a110089dff50fe635cffd2a61e1b24fbcd`.
Configuration menu - View commit details
-
Copy full SHA for e8113bf - Browse repository at this point
Copy the full SHA e8113bfView commit details
Commits on Sep 9, 2026
-
[stable] [flutter_tools] Gracefully handle Windows Application Contro…
…l and security policy execution blocks (#192254) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: #191899 ### Impact Description: When Windows Smart App Control (SAC), Windows Defender Application Control (WDAC), or Group Policy blocks execution of Flutter binaries (such as `dartaotruntime.exe` executing `frontend_server_aot.dart.snapshot`), the Flutter tool crashes with an unhandled `ProcessException` instead of providing an actionable error message. This was the #1 tool crash in Flutter 3.47.1 (accounting for 354 crashes / 16.9% of the top 10 crashes). This fix catches the policy block error codes and displays a clear `ToolExit` explaining how to configure exclusions in Windows Security. ### Changelog Description: [flutter/191899] When Windows Smart App Control or security policies block binary execution on Windows, gracefully handle the error with an actionable message instead of crashing. ### Workaround: Manually add an exclusion for the Flutter SDK directory in Windows Security / Smart App Control / WDAC settings, or disable Smart App Control. However, users experiencing the crash currently receive an unhandled stack trace without clear indication of why execution was blocked. ### Risk: ### Test Coverage: ### Validation Steps: 1. Run `flutter test test/general.shard/base/error_handling_io_test.dart` to verify that Windows error codes 4551, 1260, and 454 are mapped to the expected `ToolExit` message. 2. On a Windows machine with Smart App Control or AppLocker configured to block unsigned binaries in user space, run `flutter build` or compile a Flutter project to verify that the tool exits cleanly with the explanatory error message rather than crashing with an unhandled `ProcessException`.
Configuration menu - View commit details
-
Copy full SHA for e71ed18 - Browse repository at this point
Copy the full SHA e71ed18View commit details -
[stable] [flutter_tools] Report preview reload timing analytics in Ls…
…pPreviewDetector (#192256) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: #192120 ### Impact Description: In Flutter 3.44 ([#184473](#184473)), `LspPreviewDetector` became the default preview detector, but did not instrument preview reload timing analytics (`previewAnalytics.startPreviewReloadStopwatch()` and `previewAnalytics.reportPreviewReloadTiming()`). This caused a severe drop in reported `preview-reload-time` telemetry events for the widget previewer. This cherry-pick restores reporting of reload timing metrics and filters out non-Dart file edits to avoid spurious reload timing events. ### Changelog Description: [flutter/192120] Fixes missing preview reload timing analytics in LspPreviewDetector across all platforms. ### Workaround: None. Telemetry for widget preview reload timing is omitted unless instrumented. ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: Run `packages/flutter_tools` unit tests: `dart test test/commands.shard/hermetic/widget_preview/lsp_preview_detector_test.dart`
Configuration menu - View commit details
-
Copy full SHA for 4c685f8 - Browse repository at this point
Copy the full SHA 4c685f8View commit details -
[CP-stable] Collect analytics about SwiftPM errors and warnings (#191746
) (#192303) ### Issue Link: #181560 ### Impact Description: Flutter team is trying to improve SwiftPM migration experience by gathering more metrics. ### Changelog Description: [flutter/181560] When building iOS and macOS app, SwiftPM migration warnings and errors are not tracked in analytics. ### Workaround: None ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: N/A
Configuration menu - View commit details
-
Copy full SHA for 7d70527 - Browse repository at this point
Copy the full SHA 7d70527View commit details -
[CP-stable][native assets] Bump minimum iOS version from 13 to 15 (#1…
…92506) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: What is the link to the issue this cherry-pick is addressing? https://github.com/flutter/flutter/issues/< Replace with issue link here > ### Impact Description: What is the impact (ex. visual jank on Samsung phones, app crash, cannot ship an iOS app)? Does it impact development (ex. flutter doctor crashes when Android Studio is installed), or the shipping of production apps (the app crashes on launch). This information is for domain experts and release engineers to understand the consequences of saying yes or no to the cherry pick. Developers cannot submit iOS apps to App Store Connect / TestFlight when using native assets compiled with -mios-version-min >= 14 (such as libraries using C++20). This impacts shipping production apps. Apple rejects the uploaded IPA with error ITMS-90208: Invalid Bundle because flutter_tools generates a framework Info.plist with MinimumOSVersion = 13.0, conflicting with the binary's higher OS requirement. ### Changelog Description: Explain this cherry pick: * In one line that is accessible to most Flutter developers. * That describes the state prior to the fix. * That includes which platforms are impacted. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples. #191964: On iOS, apps bundling native assets fail App Store submission when native libraries are compiled with deployment targets above iOS 13. ### Workaround: Is there a workaround for this issue? Manually edit Info.plist inside Runner.app/Frameworks/.framework/Info.plist in the built archive to set MinimumOSVersion to 15.0, and re-sign the framework and app before uploading to App Store Connect ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: What are the steps to validate that this fix works? 1) Build an iOS app with native assets: flutter build ios --release --no-codesign. 2) Check the framework Info.plist ``` plutil -p build/ios/iphoneos/Runner.app/Frameworks/*.framework/Info.plist | grep MinimumOSVersion ``` 3)Confirm it reads "15.0" instead of "13.0"
Configuration menu - View commit details
-
Copy full SHA for 015aafa - Browse repository at this point
Copy the full SHA 015aafaView commit details -
[CP-stable] Prepare and warn when missing iOS Device Support Symbols (#…
…192301) ### Issue Link: #189284 ### Impact Description: When debugging on iOS 27 devices, the app may launch and hang for multiple minutes. ### Changelog Description: [flutter/189284] When debugging with an iOS 27 device, the app may launch to a white screen and hang for multiple minutes. ### Workaround: Run `xcrun xcodebuild -prepareDeviceSupport -destination id=[insert device id]` ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: See repro steps in #189284.
Configuration menu - View commit details
-
Copy full SHA for c41a033 - Browse repository at this point
Copy the full SHA c41a033View commit details -
[CP-stable]fix(tool): remove redundant --enable-experiment=record-use…
… flag (#192318) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: #190465 ### Impact Description: In Dart 3.7 (shipped in Flutter 3.47), `record-use` was enabled by default. Passing `--enable-experiment=record-use` emitted a non-fatal warning on `stderr`. Because `flutter_tools` evaluated `if (stderr.isNotEmpty) result = 'failure'`, this non-fatal compiler warning caused dry runs to bypass `stdout` findings parsing and omit `E00`–`E17` package incompatibility telemetry keys. ### Changelog Description: #190465 When running WebAssembly dry-run builds on Web, remove redundant experiment flag warning that dropped telemetry error findings. ### Workaround: Is there a workaround for this issue? None. Telemetry payload parameters were dropped internally by the CLI tool. ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? ### Validation Steps: What are the steps to validate that this fix works? 1. Run `flutter build web --no-wasm-dry-run` vs dry-run mode on a project with legacy web dependencies (`dart:html` or `package:js`). 2. Verify `Event.flutterWasmDryRunPackage` emits `result: "findings"` and attaches `E...` error keys without `stderr` warning spam.
Configuration menu - View commit details
-
Copy full SHA for 5743177 - Browse repository at this point
Copy the full SHA 5743177View commit details
Commits on Sep 10, 2026
-
[CP-stable][flutter_tools] Safely handle non-JSON messages in test st…
…ream parsers (#192419) This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request) Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request. ### Issue Link: #191898 ### Impact Description: Top crash in Flutter 3.47.1 accounting for 245 crashes (11.7% share of top crashes). When a test runner process or browser socket dumps unformatted non-JSON error output (such as dynamic library loading errors or missing snapshot warnings) directly onto the test communication stream or WebSocket, `_ChunkedJsonParser` throws an unhandled `FormatException: Unexpected character (at character 1)`, terminating the `flutter test` CLI process. ### Changelog Description: [flutter/191898] When remote test processes emit plain-text error output on all platforms, prevent flutter_tools from crashing with an unhandled FormatException. ### Workaround: None. Any test execution where a child runner or socket prints plain text instead of JSON fatal crashes the test runner CLI. ### Risk: ### Test Coverage: ### Validation Steps: Run `flutter test test/general.shard/flutter_platform_test.dart` and `flutter test test/commands.shard/hermetic/flutter_web_platform_test.dart`. Specifically, `pipeHarnessToRemote safely ignores non-JSON string and logs warning` validates that plain text received over the stream logs a warning/trace without crashing the process, and subsequent valid JSON packets are processed normally.
Configuration menu - View commit details
-
Copy full SHA for 9584c67 - Browse repository at this point
Copy the full SHA 9584c67View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff d3b14c876900...9584c6713b32