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: 90673a4
Choose a base ref
...
head repository: flutter/flutter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: ff37bef
Choose a head ref
  • 13 commits
  • 36 files changed
  • 5 contributors

Commits on Feb 24, 2026

  1. [CP-stable] fixes a status bar tap crash (#182691)

    This pull request is manually created because there were merge conflicts. 
    <details>
    <summary><b>Click here for the conflicts</b></summary>
    
    ```diff
    diff --cc packages/flutter/test/widgets/interactive_viewer_test.dart
    index e4ef349,63b1c353d72..00000000000
    --- a/packages/flutter/test/widgets/interactive_viewer_test.dart
    +++ b/packages/flutter/test/widgets/interactive_viewer_test.dart
    @@@ -1044,25 -956,22 +1044,43 @@@ void main() 
              var calledStart = false;
              var calledUpdate = false;
              var calledEnd = false;
    +         const sizedBox = SizedBox(width: 200.0, height: 200.0);
              await tester.pumpWidget(
    ++<<<<<<< HEAD
     +          MaterialApp(
     +            home: Scaffold(
     +              body: Center(
     +                child: InteractiveViewer(
     +                  transformationController: transformationController,
     +                  scaleEnabled: false,
     +                  onInteractionStart: (ScaleStartDetails details) {
     +                    calledStart = true;
     +                  },
     +                  onInteractionUpdate: (ScaleUpdateDetails details) {
     +                    calledUpdate = true;
     +                  },
     +                  onInteractionEnd: (ScaleEndDetails details) {
     +                    calledEnd = true;
     +                  },
     +                  child: const SizedBox(width: 200.0, height: 200.0),
     +                ),
     +              ),
    ++=======
    +           Center(
    +             child: InteractiveViewer(
    +               transformationController: transformationController,
    +               scaleEnabled: false,
    +               onInteractionStart: (ScaleStartDetails details) {
    +                 calledStart = true;
    +               },
    +               onInteractionUpdate: (ScaleUpdateDetails details) {
    +                 calledUpdate = true;
    +               },
    +               onInteractionEnd: (ScaleEndDetails details) {
    +                 calledEnd = true;
    +               },
    +               child: sizedBox,
    ++>>>>>>> 91b2d41 (Reland #179643, only scroll hit-testable primary scroll views on status bar tap (#182391))
                  ),
                ),
              );
    @@@ -1119,25 -1028,22 +1137,43 @@@
              var calledStart = false;
              var calledUpdate = false;
              var calledEnd = false;
    +         const sizedBox = SizedBox(width: 200.0, height: 200.0);
              await tester.pumpWidget(
    ++<<<<<<< HEAD
     +          MaterialApp(
     +            home: Scaffold(
     +              body: Center(
     +                child: InteractiveViewer(
     +                  transformationController: transformationController,
     +                  scaleEnabled: false,
     +                  onInteractionStart: (ScaleStartDetails details) {
     +                    calledStart = true;
     +                  },
     +                  onInteractionUpdate: (ScaleUpdateDetails details) {
     +                    calledUpdate = true;
     +                  },
     +                  onInteractionEnd: (ScaleEndDetails details) {
     +                    calledEnd = true;
     +                  },
     +                  child: const SizedBox(width: 200.0, height: 200.0),
     +                ),
     +              ),
    ++=======
    +           Center(
    +             child: InteractiveViewer(
    +               transformationController: transformationController,
    +               scaleEnabled: false,
    +               onInteractionStart: (ScaleStartDetails details) {
    +                 calledStart = true;
    +               },
    +               onInteractionUpdate: (ScaleUpdateDetails details) {
    +                 calledUpdate = true;
    +               },
    +               onInteractionEnd: (ScaleEndDetails details) {
    +                 calledEnd = true;
    +               },
    +               child: sizedBox,
    ++>>>>>>> 91b2d41 (Reland #179643, only scroll hit-testable primary scroll views on status bar tap (#182391))
                  ),
                ),
              );
    ```
    
    </details>
    
    ### Issue Link:
    What is the link to the issue this cherry-pick is addressing?
    
    #182233
    The bug was introduced in #179643 which was cherry picked to 3.41 beta (so the crash should exist on both current beta and stable).
    
    ### Impact Description:
    
    On iOS, the app may crash when the user taps on the status bar to scroll to top, when the app has a primary scroll view that has never been laid out (for example, in a route that has been obstructed by other routes).
    
    ### Changelog Description:
    
    - [flutter/182233](#182233) - Tapping on the status bar may crash the app on iOS when there's a primary scroll view that has never been laid out.
    
    Additionally this patch only dispatches the "scroll to top" command to the topmost Scaffold which is generally better UX for most apps (this doesn't have to be in the changlog)
    
    ### Workaround:
    
    No known easy workarounds.
    
    ### 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?
    
    I've manually tested the fix on iOS/iPadOS simulators. There are also unit tests.
    LongCatIsLooong authored Feb 24, 2026
    Configuration menu
    Copy the full SHA
    449e274 View commit details
    Browse the repository at this point in the history
  2. [CP-stable]Add buffer around rerasterized input to fragment shaders t…

    …o maintain coordinate space when clipped (#182512)
    
    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?
    
    #181660
    
    ### Impact Description:
    
    Without this PR certain combinations of blur and custom fragment shaders don't render correctly.  This is an impediment some researchers are doing for advanced fragment shaders like https://pub.dev/packages/liquid_glass_renderer
    
    ### Changelog Description:
    
    * This PR makes sure all combinations of clip+blur+fragment shader behave in a consistent manner with respect to the coordinate system the fragment shader is calculated in.
    * Before this change adding a clip rect could change the coordinate space of fragment shaders
    * All impeller platforms are impacted.
    
    flutter/181660 When using clip rects with ImageFilter.combine(fragment_shader, blur) on Impeller, the coordinate space of the fragment shader would fit the clipped region, not the region being clipped.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    No.
    
    ### Risk:
    What is the risk level of this cherry-pick?
    
    The changed code happens inside a deep branch of logic that few code executes today.
    
    ### 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?
    
    There is a reproduction in #181660
    flutteractionsbot authored Feb 24, 2026
    Configuration menu
    Copy the full SHA
    96900aa View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2026

  1. [CP-stable][win32] Fix overflow in TaskRunnerWindow. (#182864)

    ### Issue Link:
    #182501
    
    ### Impact Description:
    Flutter Windows apps have high CPU even when idle.
    
    ### Changelog Description:
    
    [flutter/182501](#182501) Reduce CPU utilization of idle Flutter Windows apps
    
    ### 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:
    Run the app on a Windows device and check CPU utilization. This issue reproduces especially on low-end devices, or, devices with high CPU utilization.
    flutteractionsbot authored Feb 26, 2026
    Configuration menu
    Copy the full SHA
    802fc7d View commit details
    Browse the repository at this point in the history

Commits on Feb 27, 2026

  1. [CP-stable][web] Fix failure on Firefox 148 (#182982)

    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?
    
    There's no issue, but we got few CI failures.
    
    ### 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.
    
    Fails in CI and could block releases.
    
    ### 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.
    
    Fix test failure that happens in Firefox 148 because they added support for TrustedTypes.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    No workaround.
    
    ### 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?
    
    Notice no more failures in CI.
    flutteractionsbot authored Feb 27, 2026
    Configuration menu
    Copy the full SHA
    4a7bcaa View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    327ed81 View commit details
    Browse the repository at this point in the history
  3. Update engine version for 3.41 (#183010)

    bin/internal/last_engine_commit.sh > bin/internal/engine.version
    reidbaker authored Feb 27, 2026
    Configuration menu
    Copy the full SHA
    c958e02 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    48c32af View commit details
    Browse the repository at this point in the history

Commits on Mar 3, 2026

  1. [CP-stable]Exclude arm64 if any dependencies do and print warning whe…

    …n using Xcode 26 (#183028)
    
    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?
    
    #182748
    
    ### 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.
    
    Build targeting an iOS simulator with Xcode 26 fails when a CocoaPod dependency does not support arm.
    
    ### 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/182748] When building for an iOS simulator with Xcode 26, the build will fail when there is a CocoaPod dependency that does not support arm.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    Use Xcode 16 or use older version of Flutter.
    
    ### 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. Create a Flutter project
    2. Add a dependency that doesn't support arm (e.g. google_ml_kit)
    3. `flutter build ios --simulator --debug`
    flutteractionsbot authored Mar 3, 2026
    Configuration menu
    Copy the full SHA
    8442d07 View commit details
    Browse the repository at this point in the history
  2. [CP-stable] Update lifecycle event loops to be mutation-safe (#183125)

    ### Issue Link:
    What is the link to the issue this cherry-pick is addressing?
    
    #182361
    
    ### 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.
    
    iOS app may crash when plugin registers for lifecycle events.
    
    ### 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/182361] When iOS plugins register to receive lifecycle events during an event, a crash may occur. 
    
    ### 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?
    
    N/A. This isn't easily reproducible (likely a race condition)
    vashworth authored Mar 3, 2026
    Configuration menu
    Copy the full SHA
    2d776cd View commit details
    Browse the repository at this point in the history
  3. [CP-stable][web] Fix stack corruption in Skwasm and harden withStackS…

    …cope API (#183022)
    
    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?
    
    #182367
    
    ### Impact Description:
    
    Skwasm apps no longer crash after a few minutes.
    
    ### Changelog Description:
    On Flutter Web Skwasm, the app no longer crashes after running for a few minutes.
    
    ### 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?
    
    Run one of the example apps from the issue and verify that it still hasn't crashed after a few minutes.
    flutteractionsbot authored Mar 3, 2026
    Configuration menu
    Copy the full SHA
    e4b8dca View commit details
    Browse the repository at this point in the history
  4. [stable] Update test package and related packages for stable release. (

    …#183176)
    
    This PR attempts to make a targeted upgrade of a few packages in an attempt to resolve #183071 on stable.
    eyebrowsoffire authored Mar 3, 2026
    Configuration menu
    Copy the full SHA
    0252172 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6820b15 View commit details
    Browse the repository at this point in the history

Commits on Mar 4, 2026

  1. Configuration menu
    Copy the full SHA
    ff37bef View commit details
    Browse the repository at this point in the history
Loading