Visitar URL original
Comparing 3.38.0-0.1.pre...3.38.0-0.2.pre · flutter/flutter · GitHub
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: 3.38.0-0.1.pre
Choose a base ref
...
head repository: flutter/flutter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 3.38.0-0.2.pre
Choose a head ref
  • 12 commits
  • 50 files changed
  • 5 contributors

Commits on Oct 23, 2025

  1. [CP-beta][Android] Refactor ImageReaderSurfaceProducer restoration …

    …after app resumes (#177121)
    
    > [!NOTE]  
    > To release engineer: this can definitely wait to be included in a hotfix beta release. I also want to CP this to stable: #177112
    
    ### Issue Link:
    What is the link to the issue this cherry-pick is addressing?
    
    #173770
    
    ### 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
    
    Mitigates a memory leak that occurs on Android, when `Activities` are not kept upon exit and an Activity is exited and re-entered.
    
    ### 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)
    
    Memory leak that will occur in production app but does not impact development.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    Not that I know of.
    
    ### 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?
    
    Follow the steps in the [issue description](#173770 (comment)), roughly:
    
     1. Create a Flutter project.
    2. Enter the developer options, set not to keep activities, (destroy each activity as soon as the user leaves it)
    3. Entering the activity, clicking the home button, exiting the activity, and then entering the activity again will trigger the destruction and reconstruction of the activity.
    4. Check memory leaks through profiler and find memory leaks.
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
    camsim99 authored Oct 23, 2025
    Configuration menu
    Copy the full SHA
    53f2819 View commit details
    Browse the repository at this point in the history

Commits on Oct 27, 2025

  1. [beta] CP: Fixes hot reload/restart crashes after closing browser tab…

    … on web-server device (#177456)
    
    **Impacted Users:**
    Flutter web developers using the `web-server` device for hot reload/restart.
    
    **Impact Description:**
    Hot reload/restart crashes when the browser tab is closed, causing “Bad state: No element” errors and breaking the DWDS connection.
    
    **Workaround:**
    Rerun the app.
    
    **Risk:**
    Low — changes only affect hot reload/restart handling when no clients are connected.
    
    **Test Coverage:**
    Yes — covered by automated integration tests and verified with manual testing across reload/restart scenarios.
    
    **Validation Steps:**
    
    1. run the app on webserver `flutter run -d web-server`
    2. open the url
    3. do hot reload
    4. close the browser
    5. do hot reload 
    
    You should see a warning `WebSocketProxyService: No clients available.` along with `Recompile complete. No client connected.` printed in the console. The app should no longer crash.
    
    **Merged PR:** #177026
    **Changes in DWDS (Parent PR):** [https://github.com/dart-lang/webdev/pull/2699](https://github.com/dart-lang/webdev/pull/2699)
    
    Fixes #174791
    jyameo authored Oct 27, 2025
    Configuration menu
    Copy the full SHA
    7c3f912 View commit details
    Browse the repository at this point in the history
  2. [CP-beta]Fix accessibility events not being correctly translated to A…

    …TK (#177427)
    
    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?
    
    #176360
    
    ### 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
    
    Fix accessibility events regression on Linux which makes apps not announced with screen reader.
    
    ### 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 Linux accessibility code was not correctly updated to new API which caused the focus events to no longer be reported. This means using a Linux app with an accessibility tool like a screen reader to not function correctly.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    No workaround other than using a version of Flutter < 3.25.
    
    ### 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 basic skeleton app with text buttons
    2. Turn on the screen reader
    3. Focus a button, and hear announcement when the button gets focus
    flutteractionsbot authored Oct 27, 2025
    Configuration menu
    Copy the full SHA
    067045c View commit details
    Browse the repository at this point in the history
  3. [CP-beta]Add structured warning event for slow wireless debugging on …

    …iOS 26+ d… (#176976)
    
    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:
    #176206
    
    ### 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
    
    Warns the developer that wireless debugging may be slow on iOS 26
    
    ### 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)
    
    Debugging wirelessly on iOS 26 may be slow. This warning suggests that the developer use a wired connection.
    Additionally, this will be surfaced in IDEs: Dart-Code/Dart-Code#5730
    
    ### Workaround:
    Is there a workaround for this issue?
    
    The tool is proposing the 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?
    
    Connect an iPhone running iOS 26 wirelessly, `flutter run`.
    flutteractionsbot authored Oct 27, 2025
    Configuration menu
    Copy the full SHA
    2522834 View commit details
    Browse the repository at this point in the history
  4. [CP-beta][tool/dap] Forward app.warning events from Flutter to DAP cl…

    …ient (#176997)
    
    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?
    
    #176206 / Dart-Code/Dart-Code#5730
    
    This is related to another cherry-pick at #176976. That cherry-pick adds a warning to `flutter run` and this cherry-pick ensures the warning is forwarded correctly to DAP clients (like VS Code).
    
    ### 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
    
    Warns the developer that wireless debugging may be slow on iOS 26 in VS Code.
    
    ### 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)
    
    Debugging wirelessly on iOS 26 may be slow. This change forwards the warning (which is being cherry-picked by #176976) to DAP clients so that it can be shown more prominently in VS Code.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    This change is to show a workaround for the slow debugging to the user.
    
    ### 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?
    
    Testing requires using a DAP client. The automated test verifies the event is forwarded, and I tested manually with the Dart-Code changes when I added this change (screenshots at Dart-Code/Dart-Code#5730 (comment)).
    flutteractionsbot authored Oct 27, 2025
    Configuration menu
    Copy the full SHA
    069ba60 View commit details
    Browse the repository at this point in the history
  5. [CP-beta]Configure FfiNative resolver on dart:io (#177308)

    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:
    
    None
    
    ### Changelog Description:
    
    Calling `FileSystemEntity.watch(...)` will throw on Mac OS and Windows.
    
    ### Impact Description:
    
    Calling `FileSystemEntity.watch(...)` will throw on Mac OS and Windows, instead of correctly watching the path.
    
    ### Workaround:
    
    No user level work-around. `dart:io` is broken.
    
    ### Risk:
    
    What is the risk level of this cherry-pick?
    
    ### Test Coverage:
    
    Are you confident that your fix is well-tested by automated tests?
    
    It's tested by tests in Dart SDK
    
    ### Validation Steps:
    
    Run a Mac OS or Windows app with the following `main`. It should do nothing - rather than throw an exception.
    
    ```dart
    import 'dart:async';
    import 'dart:io';
    
    void main() async {
      final sub = Directory.systemTemp.watch(recursive: true).listen((_) {});
      await Future.delayed(Duration(seconds: 1));
      sub.cancel();
    }
    ```
    flutteractionsbot authored Oct 27, 2025
    Configuration menu
    Copy the full SHA
    082bd44 View commit details
    Browse the repository at this point in the history
  6. [CP-beta] Fix crash when NSAttributedString is passed to insertText o…

    …n macOS (#177401)
    
    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 does not appear to be a dedicated issue. The issue description can be found in the PR description:
    #176329
    
    The PR fixes a macOS text input crash caused by down-casting the string argument from `Any` to a `NSString`, from [this API](https://developer.apple.com/documentation/appkit/nstextinputclient/inserttext(_:replacementrange:)#parameters). The documentation says it can either be a `NSString` or `NSAttributedString`
    
    ### 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
    
    > Fixes a crash on macOS when the input method (or other services) inserts a `NSAttributedString` instead of `NSString` into a text field.
    
    ### 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)
    
    App crashes on macOS when interacting with certain IMEs or other system services, if they decided to use `NSAttributedString` instead of `NSString`. It affects production apps.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    None. Users or app developers have little control over what the IME / services decide to do. The problematic code path in the engine directly interacts with system services so app developer can't workaround that.
    
    ### 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?
    
    The PR description does not have repro steps. @p1318k could you add the steps to trigger the bug here?
    flutteractionsbot authored Oct 27, 2025
    Configuration menu
    Copy the full SHA
    d7ec7e8 View commit details
    Browse the repository at this point in the history
  7. [CP-beta][ Tool ] Output DTD URI for Flutter web applications (#177321)

    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?
    
    #176310
    
    ### 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
    
    `app.dtd` event is not emitted for Flutter web applications run with `--machine`.
    
    ### 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)
    
    Makes it impossible for tooling to connect to the DTD instance associated with a Flutter web application. This impacts the Flutter MCP extension.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    No workaround available.
    
    ### 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 a web application using `flutter run -d chrome --machine` and verify there's an `app.dtd` event once the application has started.
    flutteractionsbot authored Oct 27, 2025
    Configuration menu
    Copy the full SHA
    46485b1 View commit details
    Browse the repository at this point in the history

Commits on Oct 28, 2025

  1. [CP-Beta] Bump Templates To Correct Versions (#177416) (#177608)

    This is a manual cherry pick of #177416 to beta.
    
    **Impacted Users (Approximately who will hit this issue, ex. all Flutter devs, Windows developers, all end-customers, apps using X framework feature).**
    Flutter devs who ship to Android. Template versions are changing.
    
    **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 shipping a production app? ex. the app crashes on launch).**
    Affects flutter build to android.
    
    **Workaround (Is there a workaround for this issue?)**
    Use compatible depency versioning.
    
    **Risk (What is the risk level of this cherry-pick?)**
    Low
    
    **Test Coverage (Are you confident that your fix is well-tested by automated tests?)**
    Yes. Integration tests with new versioning have passed.
    
    **Validation Steps (What are the steps to validate that this fix works?)**
    Ran `flutter analyze --suggestions` and `flutter build apk` to verify versioning combination is valid.
    
    ---
    I bumped templates to the correct versions. I also included a fix for kgp and agp compatability.
    
    AGP 8.11.0 -> 8.11.1
    Gradle 8.13 -> 8.14
    KGP 2.2.0 -> 2.2.20
    
    I ran `flutter analyze --suggestions` and `flutter build apk` to ensure these are safe versions.
    
    Will cherry pick this to beta after the pr merges.
    
    Fixes #177320
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
    
    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/
    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
    
    <!--
    Thanks for filing a pull request!
    Reviewers are typically assigned within a week of filing a request.
    To learn more about code review, see our documentation on Tree Hygiene: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    -->
    
    *Replace this paragraph with a description of what this PR is changing or adding, and why. Consider including before/after screenshots.*
    
    *List which issues are fixed by this PR. You must list at least one issue. An issue is not required if the PR fixes something trivial like a typo.*
    
    *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].*
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
    jesswrd authored Oct 28, 2025
    Configuration menu
    Copy the full SHA
    ea0f443 View commit details
    Browse the repository at this point in the history
  2. Revert "Resolve resolve native Flutter dependencies in Android Studio… (

    #177605)
    
    Fixes #177037 on 3.38 branch. 
    
    This reverts commit 0c0406a.
    Leaves `isInvokedFromAndroidStudio`
    reidbaker authored Oct 28, 2025
    Configuration menu
    Copy the full SHA
    46b0f4e View commit details
    Browse the repository at this point in the history
  3. [CP-beta]Add guided error for precompiled cache error (#177607)

    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?
    
    #176462
    
    ### 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
    
    Provides guided error message when building for iOS fails due to precompiled headers cache error.
    
    ### 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)
    
    When using Xcode 26 and switching between branches or upgrading to new beta/stable, it throws an error due to headers of the Flutter framework changing.
    
    ### Workaround:
    Is there a workaround for this issue?
    
    Run `flutter clean`
    
    ### 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. git checkout 3.35.5
    2. `flutter create my_app`
    3. `flutter build ios`
    4. git checkout main
    5. `flutter build ios` (it should error)
    flutteractionsbot authored Oct 28, 2025
    Configuration menu
    Copy the full SHA
    d74f2fc View commit details
    Browse the repository at this point in the history
  4. Update engine.version for 3.38.1 hotfix release (#177675)

    Updates the `engine.version` to the last commit to touch the engine: d7ec7e8
    
    Verified by the `flutter/bin/internal/last_engine_commit.sh` script.
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
    camsim99 authored Oct 28, 2025
    Configuration menu
    Copy the full SHA
    f16b4ff View commit details
    Browse the repository at this point in the history
Loading