Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: flutter/flutter
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 19074d1
Choose a base ref
...
head repository: flutter/flutter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 66dd93f
Choose a head ref
  • 12 commits
  • 48 files changed
  • 4 contributors

Commits on Dec 2, 2025

  1. [CP-stable]Restore OpenGL state modified by fl_compositor_opengl_pres…

    …ent_layers (#178937)
    
    ### Issue Link:
    What is the link to the issue this cherry-pick is addressing?
    
    #178547
    
    ### Changelog Description:
    
    This PR fixes rendering errors in the Linux desktop embedder when using Skia.  The embedder may overwrite OpenGL state that Skia assumes is unmodified.
    
    ### Impact Description:
    
    Bad rendering in Linux desktop apps.
    
    ### Workaround:
    
    Use Impeller instead of Skia on Linux.
    
    ### 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 the example app in #178547 on Linux
    flutteractionsbot authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    fc0b86a View commit details
    Browse the repository at this point in the history
  2. [CP-stable][ Tool ] Use a separate output directory when the native h…

    …ooks run the build system (#179016)
    
    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?
    
    #178529
    
    ### 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.
    
    Running `flutter run -d chrome` on a project with localization generation, the generated localizations classes are deleted immediately.
    
    ### 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.
    
    When running `flutter run -d chrome` on projects with localizations, generated localizations sources are deleted on first run.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    1) Run `flutter run -d chrome`, which will fail due to the generated localizations code being deleted
    2) Run `flutter run -d chrome` again, which will only rebuild the generated localizations code without rerunning the native hooks build step.
    
    ### 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?
    
    Run `flutter run -d chrome` in a project with localizations, ensure it actually starts.
    flutteractionsbot authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    cf258ba View commit details
    Browse the repository at this point in the history
  3. [CP-stable][ Widget Preview ] Fix crash when `widget_preview_scaffold…

    …/.dart_tool` doesn't exist (#179042)
    
    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?
    
    #178660
    
    ### Changelog Description:
    Explain this cherry pick in one line that is accessible to most Flutter developers. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples
    
    `flutter widget-preview start` can crash if `.dart_tool/widget_preview_scaffold/.dart_tool` doesn't exist on subsequent runs.
    
    ### 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 production app (the app crashes on launch)
    
    If the `.dart_tool/widget_preview_scaffold/.dart_tool/` directory wasn't created during the initial run of `flutter widget-preview start` due to the command being interrupted or pub being disabled, `flutter widget-preview start` would crash due to the `package_config.json` logic walking up the directory structure looking for the nearest `package_config.json`. This would point to the parent project's `package_config.json`, which would not be compatible with the widget preview scaffold project.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    Manually running `flutter pub get` in `.dart_tool/widget_preview_scaffold/`.
    
    ### 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 widget-preview start` and close it once the previewer opens
    2) Delete `.dart_tool/widget_preview_scaffold/.dart_tool`
    3) Run `flutter widget-preview start` and verify the previewer opens
    flutteractionsbot authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    aa5986c View commit details
    Browse the repository at this point in the history
  4. [CP-stable][ Tool ] Remove --no-sandbox when launching web apps on Ch…

    …rome device (#179192)
    
    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?
    
    #175227
    
    ### Changelog Description:
    Explain this cherry pick in one line that is accessible to most Flutter developers. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples
    
    Flutter Web applications launched in Chrome show a warning related to `--no-sandbox`.
    
    ### 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 production app (the app crashes on launch)
    
    We were incorrectly disabling the Chrome sandbox for non-test contexts, which results in a ominous warning about "Stability and security [suffering]".
    
    ### Workaround:
    Is there a workaround for this issue?
    
    N/A
    
    ### 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?
    
    Run `flutter run -d chrome`, verify the launched Chrome instance doesn't have a warning banner.
    flutteractionsbot authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    bfd0db6 View commit details
    Browse the repository at this point in the history
  5. [CP-stable][ Widget Preview ] Handle changes to unexpected pubspec.ya…

    …ml files gracefully (#179198)
    
    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?
    
    #179155
    
    ### Changelog Description:
    Explain this cherry pick in one line that is accessible to most Flutter developers. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples
    
    `flutter widget-preview start` crashes if a file named `pubspec.yaml` is modified outside the root of the previewed project.
    
    ### 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 production app (the app crashes on launch)
    
    The widget previewer can silently crash in the context of an IDE if a developer makes a change to a `pubspec.yaml` that's not the one for the previewed project (i.e., under `example/`).
    
    ### Workaround:
    Is there a workaround for this issue?
    
    N/A
    
    ### 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 widget-preview start`
    2) Create a new `pubspec.yaml` in a new `example/` folder and verify the tool doesn't crash
    flutteractionsbot authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    79e60d7 View commit details
    Browse the repository at this point in the history
  6. [CP-stable][ Tool ] Don't try to reattach when attach target disappea…

    …rs (#179193) (#179291)
    
    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?
    
    #156692
    
    ### Changelog Description:
    Explain this cherry pick in one line that is accessible to most Flutter developers. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples
    
    `flutter attach` can crash if the target application disconnects unexpectedly.
    
    ### 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 production app (the app crashes on launch)
    
    The `flutter attach` process could crash when trying to attach to a new target after the initial target disappeared unexpectedly. This could result in an error popup in IDEs or an obvious crash on the CLI. This is a top-10 crasher for the tool.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    N/A
    
    ### 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 run` to deploy to an Android or iOS device.
    2) Run `flutter attach` to connect to the running application.
    3) Kill the running application by pressing `q` in the `flutter run` terminal.
    4) The `flutter attach` process should simply exit with no crash.
    bkonyi authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    4f02025 View commit details
    Browse the repository at this point in the history
  7. [CP-stable][ Widget Preview ] Ignore changes under ios/.symlinks (#…

    …179300)
    
    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?
    
    #179008
    
    ### Changelog Description:
    Explain this cherry pick in one line that is accessible to most Flutter developers. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples
    
    `flutter pub get` could be spawned multiple times on MacOS when `pubspec.yaml`s outside of the project were modified after a `flutter pub get` in the root project.
    
    ### 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 production app (the app crashes on launch)
    
    The widget previewer's file watcher can detect `pubspec.yaml` changes within plugin packages that are reachable via a symlink. This can cause numerous `flutter pub get` requests to be issued that aren't necessary and can possibly cause a user's machine to hang.
    
    ### 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?
    
    1. Run `flutter widget-preview start` on a Mac
    2. Add a Flutter plugin with iOS support to the project
    3. Run `flutter pub get` and verify that dozens of Dart processes aren't spawned
    flutteractionsbot authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    b8f3374 View commit details
    Browse the repository at this point in the history
  8. [CP-stable] Build hooks: Don't require toolchain for unit tests (#179214

    )
    
    ### Issue Link:
    
    #178954
    
    (beta CP: #179211)
    
    ### Impact Description:
    
    Running `flutter test` on Linux  or MacOS which does not have a `clang` starts failing on projects that target only Android otherwise (and do not require a Linux or MacOS toolchain) when there are build hooks anywhere in the dependencies.
    
    This PR changes the behavior for `flutter test` to only pass `clang` and friends if they are installed. This means that _if_ a Linux/MacOS toolchain is installed on the system, it will be used for both `flutter run -d Linux`/`MacOS` and `flutter test` (so that the same native compiler is used), but if it's not installed on the system both `flutter run -d AndroidDevice` and `flutter test` run successfully.
    
    This means end users don't have to go modify their systems/CIs to install Linux/MacOS toolchains for Android projects.
    
    ### Changelog Description:
    
    [flutter/178954] Fixes running `flutter test` on Linux/MacOS for Android projects with build hooks without the desktop native tooling installed.
    
    ### Workaround:
    
    All end users have to install `clang` and `ldd` on Linux/MacOS hosts and CI bots.
    
    ### Risk:
    What is the risk level of this cherry-pick?
    
    It changes the flow in Flutter tools from throwing an error to returning a nullable value.
    
    ### Test Coverage:
    Are you confident that your fix is well-tested by automated tests?
    
    ### Validation Steps:
    
    On a Linux  and MacOS system, make a Flutter app that only targets Android. Add a build hook. And ensure there's no `clang` on the `PATH` (Can be verified by `flutter doctor -v` finding no tooling for Flutter desktop). Run `flutter test` and it shouldn't fail due to `clang` not being installed. For MacOS, XCode needs to not be installed.
    dcharkes authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    3ddc40e View commit details
    Browse the repository at this point in the history
  9. [CP-stable][ Widget Preview ] Always generate scaffold under $TMP (#…

    …179039) (#179050)
    
    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?
    
    #175058
    
    ### Changelog Description:
    Explain this cherry pick in one line that is accessible to most Flutter developers. See [best practices](https://github.com/flutter/flutter/blob/main/docs/releases/Hotfix-Documentation-Best-Practices.md) for examples
    
    `flutter widget-preview start` can crash if `flutter clean` is run while the widget previewer is running.
    
    ### 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 production app (the app crashes on launch)
    
    The widget previewer can silently crash in IDEs if the user runs `flutter clean` on the project. There's no indication that the previewer has crashed other than the fact that the previewer no longer hot reloads when the user make changes to their previews.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    Not running `flutter clean` while the widget previewer is running, or restarting the IDE after `flutter clean` is run.
    
    ### 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 widget-preview start`
    2) Run `flutter clean` and verify the `flutter widget-preview start` process doesn't crash.
    bkonyi authored Dec 2, 2025
    Configuration menu
    Copy the full SHA
    1a5911b View commit details
    Browse the repository at this point in the history

Commits on Dec 3, 2025

  1. Configuration menu
    Copy the full SHA
    a5cb963 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7ddf02d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    66dd93f View commit details
    Browse the repository at this point in the history
Loading