fix(apple): classify visionOS simulators from their simctl runtime - #2829
Merged
Merged
Conversation
simctl deviceTypeIdentifiers are hyphenated (Apple-Vision-Pro-4K), so the two-word vision phrases never matched them, and the runtime key was dropped before classification. A visionOS simulator whose name lacked 'vision' was reported as appleOs ios. Pass the runtime key, which names xrOS, as a descriptor.
Size Report
Startup median (7 runs, lower is better):
|
Member
Author
|
Reviewed at 360dd40. The fix reads Not blocking: is the same gap present for physical devices? The Smoke Tests failure at |
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
A visionOS simulator was reported as
appleOs: "ios"when its name did not contain "vision" (for exampletest-1).resolveAppleOsgot onlydeviceTypeIdentifierand the device name. The identifier has hyphens (Apple-Vision-Pro-4K), so the two-wordapple vision/vision prophrases never match it. The simctl runtime key (…SimRuntime.xrOS-26-2) is the authoritative source, but it was dropped before classification.parseSimctlAppleDevicesnow passes the runtime key as the first descriptor. The existingxrostoken inAPPLE_VISION_PATTERNmatches it. The pattern is unchanged.This affects every
appleOs-gated behavior, for example therunnerSynthesizesTappredicate from #2789, which would request unsupported tap synthesis on a misclassified visionOS simulator.2 files touched: one line in
simulator-inventory.tsand one regression test.Validation
Commit
360dd4048b:simctl parser classifies visionOS from the runtime when the name is not descriptive: fails without the fix, passes with it.pnpm check:affected --run: all checks pass (1559 tests).xcrun simctl create ad-2789-test-1 com.apple.CoreSimulator.SimDeviceType.Apple-Vision-Pro-4K com.apple.CoreSimulator.SimRuntime.xrOS-26-2, thenagent-device devices --platform apple --jsonreports"appleOs": "visionos","target": "mobile"for that simulator. Before the fix, the same setup reported"ios". I deleted the simulator after the run.CI: pending.