xcode-install icon indicating copy to clipboard operation
xcode-install copied to clipboard

`xcversion simulators` doesn't list iOS 15.0 Simulators

Open ncreated opened this issue 4 years ago • 3 comments

Hello 👋. I have Xcode 13.0 (13A233) installed, with iOS 15.0 Simulators available, but when I run:

$ xcversion simulators

they are not listed:

$ xcversion simulators | grep iOS
iOS 11.4 Simulator (installed)
iOS 12.0 Simulator (not installed)
iOS 12.1 Simulator (installed)
iOS 12.2 Simulator (installed)
iOS 12.4 Simulator (installed)
iOS 13.0 Simulator (installed)
iOS 13.1 Simulator (not installed)
iOS 13.2 Simulator (installed)
iOS 13.3 Simulator (installed)
iOS 13.4 Simulator (installed)
iOS 13.5 Simulator (not installed)
iOS 13.6 Simulator (not installed)
iOS 13.7 Simulator (not installed)
iOS 14.0 Simulator (not installed)
iOS 14.1 Simulator (not installed)
iOS 14.2 Simulator (not installed)
iOS 14.3 Simulator (not installed)
iOS 14.4 Simulator (not installed)
iOS 11.4 Simulator (installed)
iOS 12.0 Simulator (not installed)
iOS 12.1 Simulator (installed)
iOS 12.2 Simulator (installed)
iOS 12.4 Simulator (installed)
iOS 13.0 Simulator (installed)
iOS 13.1 Simulator (not installed)
iOS 13.2 Simulator (installed)
iOS 13.3 Simulator (installed)
iOS 13.4 Simulator (installed)
iOS 13.5 Simulator (not installed)
iOS 13.6 Simulator (not installed)
iOS 13.7 Simulator (not installed)
iOS 14.0 Simulator (not installed)
iOS 14.1 Simulator (not installed)
iOS 14.2 Simulator (not installed)
iOS 14.3 Simulator (not installed)
iOS 14.4 Simulator (not installed)
iOS 14.5 Simulator (not installed)

The Xcode installation is properly recognised:

Xcode 13.0 (/Users/{me}/Applications/Xcode.app)

With xcrun simctl list runtimes I can see the runtime:

$ xcrun simctl list runtimes
== Runtimes ==
...
iOS 15.0 (15.0 - 19A339) - com.apple.CoreSimulator.SimRuntime.iOS-15-0
...

and devices:

$ xcrun simctl list devices
== Devices ==
...
-- iOS 15.0 --
    iPhone 8 (DA4708D0-70E0-4264-B9C2-93C7673663A8) (Shutdown) 
    iPhone 8 Plus (19B984A3-40F9-4B06-B5E1-6611D8914370) (Shutdown) 
    iPhone 11 - fav ⚡️ (15A52220-B4B1-42E0-943D-F0A2F084416C) (Booted) 
    ...
    iPad Pro (12.9-inch) (5th generation) (591ABEF3-6506-4A01-9BEA-1736ED3C8CBE) (Shutdown) 
    iPad mini (6th generation) (4851B2A9-5013-4C45-88CE-154BC952DFA3) (Shutdown) 

but no luck with xcode-install.

I tried doing some troubleshooting, browsing xcode-install code led me to this URL: https://github.com/xcpretty/xcode-install/blob/eeb8a075aeb83e6d2bece2d09f01394f147a4b00/lib/xcode/install.rb#L663

When I explore this resource (by putting my Xcode version and UUID), I cannot see any iOS 15 Simulator listed there (I can find other and they seem to match my xcversion simulators output).

  • Could this be an issue? Will it be solved once Apple updates this resource? Is there any workaround?
  • Does it rather sound as something on my local? I'd welcome any hint for further troubleshooting!

PS. I love xcode-install ❤️ and it takes a crucial place in our tests automation.

ncreated avatar Sep 23 '21 08:09 ncreated

Interesting - my version of that file includes this entry:

<dict>
			<key>fileSize</key>
			<integer>3259109630</integer>
			<key>identifier</key>
			<string>com.apple.pkg.iPhoneSimulatorSDK$(DOWNLOADABLE_VERSION_MAJOR)_$(DOWNLOADABLE_VERSION_MINOR)</string>
			<key>name</key>
			<string>iOS $(DOWNLOADABLE_VERSION_MAJOR).$(DOWNLOADABLE_VERSION_MINOR) Simulator</string>
			<key>source</key>
			<string>https://devimages-cdn.apple.com/downloads/xcode/simulators/$(DOWNLOADABLE_IDENTIFIER)-$(DOWNLOADABLE_VERSION).dmg</string>
			<key>userInfo</key>
			<dict>
				<key>IconType</key>
				<string>IDEDownloadablesTypeSimulator</string>
				<key>InstallPrefix</key>
				<string>/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS $(DOWNLOADABLE_VERSION_MAJOR).$(DOWNLOADABLE_VERSION_MINOR).simruntime</string>
				<key>InstalledIfAllReceiptsArePresentOrNewer</key>
				<dict>
					<key>$(DOWNLOADABLE_IDENTIFIER)</key>
					<string>$(DOWNLOADABLE_VERSION)</string>
				</dict>
				<key>RequiresADCAuthentication</key>
				<false/>
				<key>SortKey</key>
				<string>Xcode.SDK.iPhoneSimulator.15</string>
				<key>Xcode.SDKs</key>
				<array>
					<dict>
						<key>CanonicalName</key>
						<string>iphonesimulator$(DOWNLOADABLE_VERSION_MAJOR).$(DOWNLOADABLE_VERSION_MINOR)</string>
						<key>Path</key>
						<string>$(DOWNLOADABLE_INSTALL_PREFIX)/Contents/Resources/RuntimeRoot</string>
						<key>Platform</key>
						<string>com.apple.platform.iphonesimulator</string>
						<key>SupportedDeviceFamilies</key>
						<array>
							<integer>1</integer>
							<integer>2</integer>
						</array>
						<key>Version</key>
						<string>$(DOWNLOADABLE_VERSION_MAJOR).$(DOWNLOADABLE_VERSION_MINOR)</string>
					</dict>
				</array>
			</dict>
			<key>version</key>
			<string>13.0.1.1571440502</string>
		</dict>

But it's weird, because DOWNLOADABLE_VERSION_MAJOR is replaced with "13" during runtime 🤔 Idk if it's an issue with the contents of that plist, or the strategy has changed drastically, or if I'm getting a different plist than you are... Could you share how you concluded this:

cannot see any iOS 15 Simulator listed there (I can find other and they seem to match my xcversion simulators output).

? 🙏

rogerluan avatar Sep 23 '21 23:09 rogerluan

Hey @rogerluan 👋. I think I was looking at wrong value (I've been only searching for "<string>15" in this file). When it comes to Xcode.SDK.iPhoneSimulator.15 I can see exactly the same entry as you quoted ☝️. Still, it doesn't list iOS 15 in my xcversion simulators output 🤔 💭 - does it work for you?

ncreated avatar Sep 27 '21 11:09 ncreated

It doesn't, but I'm not sure whether this is an issue in Xcode 13's .plist (unlikely), or just the fact that that API doesn't return the up-to-date list of simulators. I honestly don't understand how that API work 🤔

rogerluan avatar Sep 27 '21 13:09 rogerluan