Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

macOS: refactor create_macos_framework.py #54546

Merged
merged 1 commit into from
Aug 14, 2024

Conversation

cbracken
Copy link
Member

This is a refactoring with no semantic changes.

This refactors the macOS framework creation code to be more readable, and extracts it to sky_utils.py.

While I was pulling this out, also generalised the code to not hardcode FlutterMacOS.framework in case we one day manage to generate the iOS and macOS frameworks with the same name.

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
  • I listed at least one issue that this PR fixes in the description above.
  • I added new tests to check the change I am making or feature I am adding, or the PR is test-exempt. See testing the engine for instructions on writing and running engine tests.
  • I updated/added relevant documentation (doc comments with ///).
  • I signed the CLA.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@cbracken cbracken requested review from zanderso and jmagman August 13, 2024 22:44
@cbracken
Copy link
Member Author

Diffed the output and it's the same. Also extracted each zip archive (including the weird nested ones) and recursively diffed the whole lot, and it all matches.

Also added a bunch of comments.

This is a refactoring with no semantic changes.

This refactors the macOS framework creation code to be more readable, and extracts it to sky_utils.py.

While I was pulling this out, also generalised the code to not hardcode FlutterMacOS.framework in case we one day manage to generate the iOS and macOS frameworks with the same name.
@cbracken cbracken force-pushed the extract-symlink-wrangling branch from 1671e49 to 8e44f0c Compare August 13, 2024 22:52
Copy link
Member

@zanderso zanderso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@cbracken cbracken added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 13, 2024
@auto-submit auto-submit bot merged commit 69f61b0 into flutter:main Aug 14, 2024
27 checks passed
@cbracken cbracken deleted the extract-symlink-wrangling branch August 14, 2024 00:31
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 14, 2024
@zanderso
Copy link
Member

Reason for revert: Failing roll flutter/flutter#153406

@zanderso zanderso added the revert Label used to revert changes in a closed and merged pull request. label Aug 14, 2024
auto-submit bot pushed a commit that referenced this pull request Aug 14, 2024
@auto-submit auto-submit bot removed the revert Label used to revert changes in a closed and merged pull request. label Aug 14, 2024
auto-submit bot added a commit that referenced this pull request Aug 14, 2024
Reverts: #54546
Initiated by: zanderso
Reason for reverting: Failing roll flutter/flutter#153406
Original PR Author: cbracken

Reviewed By: {zanderso}

This change reverts the following previous change:
This is a refactoring with no semantic changes.

This refactors the macOS framework creation code to be more readable, and extracts it to sky_utils.py.

While I was pulling this out, also generalised the code to not hardcode FlutterMacOS.framework in case we one day manage to generate the iOS and macOS frameworks with the same name.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 14, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 14, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Aug 14, 2024
…sions) (#153413)

Manual roll requested by zra@google.com

flutter/engine@019f9e3...5909666

2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Roll Dart SDK from 44635f897535 to 733062367c2e (1 revision) (#54541)" (flutter/engine#54552)
2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "macOS: Clean up create_ios_framework.py (#54543)" (flutter/engine#54550)
2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "macOS: refactor create_macos_framework.py (#54546)" (flutter/engine#54549)
2024-08-14 chris@bracken.jp macOS: refactor create_macos_framework.py (flutter/engine#54546)
2024-08-13 flar@google.com [DisplayList] Allow random access to ops through indexing (flutter/engine#54484)
2024-08-13 mit@google.com Update dartdoc for gpu.dart (flutter/engine#54529)
2024-08-13 chris@bracken.jp macOS: Clean up create_ios_framework.py (flutter/engine#54543)
2024-08-13 skia-flutter-autoroll@skia.org Roll Dart SDK from 44635f897535 to 733062367c2e (1 revision) (flutter/engine#54541)
2024-08-13 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 2LTVy4Gv76DcMpz4V... to MeV5i7xXXFPHF5sBK... (flutter/engine#54542)
2024-08-13 1961493+harryterkelsen@users.noreply.github.com [canvaskit] Add animation detection for GIFs (flutter/engine#54483)
2024-08-13 matej.knopp@gmail.com Preserve background frame damage (flutter/engine#54540)
2024-08-13 6844906+zijiehe-google-com@users.noreply.github.com [fuchsia] Use BundledTestRunner from test-scripts (flutter/engine#54404)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from 2LTVy4Gv76Dc to MeV5i7xXXFPH

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
auto-submit bot pushed a commit that referenced this pull request Aug 14, 2024
This is a refactoring with no semantic changes.

This refactors the macOS framework creation code to be more readable, and extracts it to `sky_utils.py`.

While I was pulling this out, also generalised the code to not hardcode `FlutterMacOS.framework` in case we one day manage to generate the iOS and macOS frameworks with the same name.

This is a reland of #54546 (reverted in #54549), the original was reverted in order to revert #54543 (reverted in #54550), which was reverted because it failed to preserve symlinks while zipping the macOS framework. That patch has been relanded with a fix in #54555. This patch has been rebased to tip-of-tree for attempt two.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
auto-submit bot added a commit that referenced this pull request Aug 15, 2024
Reverts: #54557
Initiated by: zanderso
Reason for reverting: Failing on framework tests on the roll https://ci.chromium.org/ui/p/flutter/builders/try/Mac_arm64%20run_debug_test_macos/9841/overview
Original PR Author: cbracken

Reviewed By: {jmagman}

This change reverts the following previous change:
This is a refactoring with no semantic changes.

This refactors the macOS framework creation code to be more readable, and extracts it to `sky_utils.py`.

While I was pulling this out, also generalised the code to not hardcode `FlutterMacOS.framework` in case we one day manage to generate the iOS and macOS frameworks with the same name.

This is a reland of #54546 (reverted in #54549), the original was reverted in order to revert #54543 (reverted in #54550), which was reverted because it failed to preserve symlinks while zipping the macOS framework. That patch has been relanded with a fix in #54555. This patch has been rebased to tip-of-tree for attempt two.

[C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
DBowen33 pushed a commit to DBowen33/flutter that referenced this pull request Aug 16, 2024
…sions) (flutter#153413)

Manual roll requested by zra@google.com

flutter/engine@019f9e3...5909666

2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Roll Dart SDK from 44635f897535 to 733062367c2e (1 revision) (flutter#54541)" (flutter/engine#54552)
2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "macOS: Clean up create_ios_framework.py (flutter#54543)" (flutter/engine#54550)
2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "macOS: refactor create_macos_framework.py (flutter#54546)" (flutter/engine#54549)
2024-08-14 chris@bracken.jp macOS: refactor create_macos_framework.py (flutter/engine#54546)
2024-08-13 flar@google.com [DisplayList] Allow random access to ops through indexing (flutter/engine#54484)
2024-08-13 mit@google.com Update dartdoc for gpu.dart (flutter/engine#54529)
2024-08-13 chris@bracken.jp macOS: Clean up create_ios_framework.py (flutter/engine#54543)
2024-08-13 skia-flutter-autoroll@skia.org Roll Dart SDK from 44635f897535 to 733062367c2e (1 revision) (flutter/engine#54541)
2024-08-13 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 2LTVy4Gv76DcMpz4V... to MeV5i7xXXFPHF5sBK... (flutter/engine#54542)
2024-08-13 1961493+harryterkelsen@users.noreply.github.com [canvaskit] Add animation detection for GIFs (flutter/engine#54483)
2024-08-13 matej.knopp@gmail.com Preserve background frame damage (flutter/engine#54540)
2024-08-13 6844906+zijiehe-google-com@users.noreply.github.com [fuchsia] Use BundledTestRunner from test-scripts (flutter/engine#54404)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from 2LTVy4Gv76Dc to MeV5i7xXXFPH

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Buchimi pushed a commit to Buchimi/flutter that referenced this pull request Sep 2, 2024
…sions) (flutter#153413)

Manual roll requested by zra@google.com

flutter/engine@019f9e3...5909666

2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Roll Dart SDK from 44635f897535 to 733062367c2e (1 revision) (flutter#54541)" (flutter/engine#54552)
2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "macOS: Clean up create_ios_framework.py (flutter#54543)" (flutter/engine#54550)
2024-08-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "macOS: refactor create_macos_framework.py (flutter#54546)" (flutter/engine#54549)
2024-08-14 chris@bracken.jp macOS: refactor create_macos_framework.py (flutter/engine#54546)
2024-08-13 flar@google.com [DisplayList] Allow random access to ops through indexing (flutter/engine#54484)
2024-08-13 mit@google.com Update dartdoc for gpu.dart (flutter/engine#54529)
2024-08-13 chris@bracken.jp macOS: Clean up create_ios_framework.py (flutter/engine#54543)
2024-08-13 skia-flutter-autoroll@skia.org Roll Dart SDK from 44635f897535 to 733062367c2e (1 revision) (flutter/engine#54541)
2024-08-13 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 2LTVy4Gv76DcMpz4V... to MeV5i7xXXFPHF5sBK... (flutter/engine#54542)
2024-08-13 1961493+harryterkelsen@users.noreply.github.com [canvaskit] Add animation detection for GIFs (flutter/engine#54483)
2024-08-13 matej.knopp@gmail.com Preserve background frame damage (flutter/engine#54540)
2024-08-13 6844906+zijiehe-google-com@users.noreply.github.com [fuchsia] Use BundledTestRunner from test-scripts (flutter/engine#54404)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from 2LTVy4Gv76Dc to MeV5i7xXXFPH

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
autosubmit Merge PR when tree becomes green via auto submit App
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants