You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Adopt Xcode simulator runtime cipd packages, separate from Xcode app packages #91689
Currently, the Xcode app cipd package needs to have older runtimes manually copied into the app bundle to support watchOS and older iOS simulators. This makes crafting and testing new Xcode app bundles very painful, error-prone, and take forever to upload. We also have a custom flutter_mac_toolchain forked binary to prevent the watchOS runtime from being filtered out. I think we only have that binary and don't even have the changes that we made tracked in any repo?
Adopt these new runtime cipd packages to make adding new simulators and new Xcode versions easier. It also means (for iOS, not watchOS) we can use https://chrome-infra-packages.appspot.com/p/infra_internal/ios/xcode/ios_runtime/+/ instead of maintaining our own. AND it means different builders can request different runtimes (web engine builder needs different simulator versions than the iOS engine builder, for example)
I'm working on getting Xcode 13 working on the engine tests and devicelab, and it's really painful getting all the necessary simulator runtimes bundled in (see my current list of issues at #85555 (comment)).
I took a detour to get Xcode 12.3 working in the engine #84453 (comment). Any chance this can get done before I need to re-tackle Xcode 13?
I don't think I can get the Mac Web Engine felt ios-safari test tests working for #85555 without the ability to adding non-default simulator runtimes (unless we totally rewrote how those tests worked to pass on multiple simulator runtimes). The Xcode 13 package only contains the default runtime (iOS 15), but the tests need to run on iOS 13.0. The tests don't pass on both. I can't upgrade them to iOS 15 since the old version of Xcode doesn't have that runtime available.
Mac Web Engine should install (will download this package):
I'm not clear on where that -output-dir should be to allow Xcode to find it (or maybe that script handles it?). Ideally that runtime-version would be configurable from the .ci.yaml.
Closing because the bug has not been updated for more than one year.
Feel free to reopen any bugs that you believe are important but please provide updates on how to resource the fix of the bug and what can be done to prevent the issue from not getting updates for another year.
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.
Activity
jmagman commentedon Oct 18, 2021
@godofredoc pointed out those packages are also missing Swift. So we can't use those, but we could use vanilla Xcode app bundles from go/xcode.
jmagman commentedon Nov 5, 2021
I'm working on getting Xcode 13 working on the engine tests and devicelab, and it's really painful getting all the necessary simulator runtimes bundled in (see my current list of issues at #85555 (comment)).
I took a detour to get Xcode 12.3 working in the engine #84453 (comment). Any chance this can get done before I need to re-tackle Xcode 13?
jmagman commentedon Dec 15, 2021
I don't think I can get the Mac Web Engine
felt ios-safari testtests working for #85555 without the ability to adding non-default simulator runtimes (unless we totally rewrote how those tests worked to pass on multiple simulator runtimes). The Xcode 13 package only contains the default runtime (iOS 15), but the tests need to run on iOS 13.0. The tests don't pass on both. I can't upgrade them to iOS 15 since the old version of Xcode doesn't have that runtime available.Mac Web Engineshould install (will download this package):I'm not clear on where that
-output-dirshould be to allow Xcode to find it (or maybe that script handles it?). Ideally that runtime-version would be configurable from the.ci.yaml.jmagman commentedon Dec 15, 2021
I see, after it's downloaded/validated in the cache, the runtime needs to be moved inside the Xcode bundle at
Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes.https://source.chromium.org/chromium/chromium/src/+/main:ios/build/bots/scripts/xcode_util.py;l=16?q=move_runtime
Not sure how that will mess up the Xcode bundle cache.
jmagman commentedon Dec 15, 2021
As a POC I tried installing the iOS 13 runtime with Xcode 13 and it passed, though I'm sure what I did isn't cache friendly:
Check out
install simulator,list simulators, andfelt ios-safari test:https://ci.chromium.org/raw/build/logs.chromium.org/flutter/led/magder_google.com/97350d7d090ab065118cd161dc08a93622dc7051ed306bb010917afcb7b073c3/+/build.proto?server=chromium-swarm.appspot.com
Only iOS 13 is available, it clobbered the default iOS 15:
recipes/recipe_modules/osx_sdk/api.py:CaseyHillers commentedon Dec 15, 2021
Is this related to #86515? Should the recipe module instead do something like
cache_dir.join('mac_toolchain_' + version)If
mac_toolchainexisted, and it was ios13 already, it won't install ios15.godofredoc commentedon Jan 11, 2022
CL to implement the runtime functionality is here: https://flutter-review.googlesource.com/c/recipes/+/24944
jmagman commentedon Jan 22, 2022
It's working!
Mac iOS Enginehttps://ci.chromium.org/raw/build/logs.chromium.org/flutter/led/magder_google.com/34b0add45b8fe97daadbfb8f634b2426c6fdea1e39c03af96488ca5ff59eb6f2/+/build.proto?server=chromium-swarm.appspot.com
Mac Unopthttps://luci-milo.appspot.com/raw/build/logs.chromium.org/flutter/led/magder_google.com/15ce71ff15e962e13bb340538339f307495e846c6eba7ec007621015430e011f/+/build.protoMac Web Enginehttps://ci.chromium.org/raw/build/logs.chromium.org/flutter/led/magder_google.com/9a0597c302a0ba1bf2edb738c803dbdcad105f47a13c5eec62f43f3a5e92cf16/+/build.proto?server=chromium-swarm.appspot.com
Next step is to upgrade the builders and Xcode #94078. @godofredoc is there more to track here?
godofredoc commentedon Jan 22, 2022
We'll need to start upgrading the mac machines to mac os 12, maybe in two parts.
godofredoc commentedon Jan 22, 2022
We'll also need to update the documentation to generate new bundles, runtimes and how to use them from the recipe's configurations.
jmagman commentedon Mar 7, 2022
This is working from
ledbut I don't think there's any way to set them per test? Filed #99698 to expose this as a property in.ci.yaml.godofredoc commentedon Jun 13, 2023
Closing because the bug has not been updated for more than one year.
Feel free to reopen any bugs that you believe are important but please provide updates on how to resource the fix of the bug and what can be done to prevent the issue from not getting updates for another year.
github-actions commentedon Jun 27, 2023
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.