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: 60050a0b4d56
Choose a base ref
...
head repository: flutter/flutter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 4372bfbc6c23
Choose a head ref
  • 6 commits
  • 4 files changed
  • 5 contributors

Commits on May 24, 2025

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

Commits on May 25, 2025

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

Commits on May 26, 2025

  1. Configuration menu
    Copy the full SHA
    528b7dd View commit details
    Browse the repository at this point in the history
  2. Fix wrong path in 'archives' for release mode iOS DDM artifacts. (#16…

    …9448)
    
    This is intended to fix a bug where DDM iOS builds were not working in
    release mode and failing at runtime with an error like:
    ```
    Failed to find snapshot at /private/var/containers/Bundle/Application/CA6AA16E-2C5E-4C1F-A650-E48AC9AC68BD/my_app.app/Frameworks/ios.framework/ios.assets/kernel_blob.bin:
    Error Domain=NSCocoaErrorDomain Code=260 "The file “kernel_blob.bin” couldn’t be opened because there is no such file."
    UserInfo={NSURL=kernel_blob.bin -- 
    file:///private/var/containers/Bundle/Application/CA6AA16E-2C5E-4C1F-A650-E48AC9AC68BD/my_app.app/Frameworks/ios.framework/ios.assets/, NSFilePath=/private/var/containers/Bundle/Application/CA6AA16E-2C5E-4C1F-A650-E48AC9AC68BD/my_app.app/Frameworks/ios.framework/ios.assets/kernel_blob.bin, NSUnderlyingError=0x302f3b480 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}
    ```
    
    I think what was happening is the Google internal build infra was trying
    to create a release mode app with no kernel_blob.bin etc, but it
    actually contained a flutter.so built for debug mode which was expecting
    to find kernel_blob.bin.
    
    See internal bug b/419694561 for full context.
    jacobsimionato authored May 26, 2025
    Configuration menu
    Copy the full SHA
    1a8e8fb View commit details
    Browse the repository at this point in the history
  3. Add workspace (#169451)

    Reland after #169357.
    
    Switch Flutter to use pub workspaces as a preparation to unpin selected
    packages.
    
    Assumptions:
    
    1. No packages in this repository are published to pub.dev --> We can
    use `any` dependencies in most local pubspecs, as the global constraint
    defines the version. An exception are the packages used outside of this
    repo with an `sdk` dependency, namely `flutter_localizations`,
    `flutter_test`, and `flutter`.
    2. The "universes" `{flutter_tools}` and `{flutter,
    flutter_localizations, flutter_goldens}` can use different packages
    versions, as they are not resolved together. --> We do not need to
    upgrade them in sync, we can first do one "universe", then the other.
    
    Based on these assumptions, we use
    https://github.com/mosuem/pubspec_merger.dart to merge all packages in
    the `flutter` universe into a top-level pub workspace.
    
    The `flutter` and `flutter_tools` workspaces being separate also ensures
    that changes to `flutter` will not inadvertently break `flutter_tools`,
    with not-so-nice consequences for our users which would be unable to run
    `flutter upgrade`.
    
    There is a third "top-level" pubspec besides `./pubspec.yaml` and
    `packages/flutter_tools/pubspec.yaml`, namely
    `packages/flutter_tools/.../widget_preview_scaffold/pubspec.yaml`. This
    is an artifact due to it living under `flutter_tools`, so it can't be
    part of the `./pubspec.yaml` workspace. Moving it would be a larger
    change, and out of the scope of this PR.
    
    This required a rewrite of the update-packages tool, but the main
    functionality stays the same, as well as the argument names, to ensure a
    seamless transition.
    
    ## 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
    mosuem authored May 26, 2025
    Configuration menu
    Copy the full SHA
    3a0897a View commit details
    Browse the repository at this point in the history
  4. Reverts "Add workspace (#169451)" (#169468)

    <!-- start_original_pr_link -->
    Reverts: #169451
    <!-- end_original_pr_link -->
    <!-- start_initiating_author -->
    Initiated by: matanlurey
    <!-- end_initiating_author -->
    <!-- start_revert_reason -->
    Reason for reverting: Broke a number of post-submit tests
    (ios_app_extension, packages_autoroller).
    <!-- end_revert_reason -->
    <!-- start_original_pr_author -->
    Original PR Author: mosuem
    <!-- end_original_pr_author -->
    
    <!-- start_reviewers -->
    Reviewed By: {matanlurey}
    <!-- end_reviewers -->
    
    <!-- start_revert_body -->
    This change reverts the following previous change:
    Reland after #169357.
    
    Switch Flutter to use pub workspaces as a preparation to unpin selected
    packages.
    
    Assumptions:
    
    1. No packages in this repository are published to pub.dev --> We can
    use `any` dependencies in most local pubspecs, as the global constraint
    defines the version. An exception are the packages used outside of this
    repo with an `sdk` dependency, namely `flutter_localizations`,
    `flutter_test`, and `flutter`.
    2. The "universes" `{flutter_tools}` and `{flutter,
    flutter_localizations, flutter_goldens}` can use different packages
    versions, as they are not resolved together. --> We do not need to
    upgrade them in sync, we can first do one "universe", then the other.
    
    Based on these assumptions, we use
    https://github.com/mosuem/pubspec_merger.dart to merge all packages in
    the `flutter` universe into a top-level pub workspace.
    
    The `flutter` and `flutter_tools` workspaces being separate also ensures
    that changes to `flutter` will not inadvertently break `flutter_tools`,
    with not-so-nice consequences for our users which would be unable to run
    `flutter upgrade`.
    
    There is a third "top-level" pubspec besides `./pubspec.yaml` and
    `packages/flutter_tools/pubspec.yaml`, namely
    `packages/flutter_tools/.../widget_preview_scaffold/pubspec.yaml`. This
    is an artifact due to it living under `flutter_tools`, so it can't be
    part of the `./pubspec.yaml` workspace. Moving it would be a larger
    change, and out of the scope of this PR.
    
    This required a rewrite of the update-packages tool, but the main
    functionality stays the same, as well as the argument names, to ensure a
    seamless transition.
    
    ## 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] <[email protected]>
    auto-submit[bot] and auto-submit[bot] authored May 26, 2025
    Configuration menu
    Copy the full SHA
    4372bfb View commit details
    Browse the repository at this point in the history
Loading