SFSafeSymbols / SFSafeSymbols

Safely access Apple's SF Symbols using static typing

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Document CI workarounds before release

fredpi opened this issue · comments

In the release documentation, a step should be added that describes the need for a locally run pod spec lint before the start of the release. While the lint is run on a CI, different issues may occur on a local machine – for example: the watchOS simulator issues that @StevenMagdy fixed for Bitrise with this code:

xcrun simctl delete all;
phoneID=$(xcrun simctl create "iPhone 14" com.apple.CoreSimulator.SimDeviceType.iPhone-14);
watchID=$(xcrun simctl create "Apple Watch SE (40mm) (2nd generation)" com.apple.CoreSimulator.SimDeviceType.Apple-Watch-SE-44mm-2nd-generation);
tvID=$(xcrun simctl create "Apple TV" com.apple.CoreSimulator.SimDeviceType.Apple-TV-1080p);
xcrun simctl pair $watchID $phoneID;

This workaround may also be added to the documentation.

If we don't add this step to the release instructions, an issue may occur with a version having been released on Github, but the core contributor that released it being unable to push to CocoaPods.

@fredpi Before documenting the workarounds, let's try to solve the root cause(s) of the issues we faced during releasing 4.0.

One of the first issues we faced was #1242973033, which was during installing extra simulator runtimes using xcode-install, the bug was confirmed here.

xcode-install got deprecated and now recommends migrating to xcodes, which doesn't have the runtimes functionality yet.
I have opened two PRs (first and second) to add the feature to xcodes. Once the PRs are accepted and a new version of xcodes is released, we will try again and see if it fixes the CI.

@Stevenmagdy Thanks! I'm on a tight schedule currently and will give it a look in ~2 weeks

Replaced xcode-install with xcodes and now installing extra simulators work as expected. The extra workflow on Bitrise is now removed.

@Stevenmagdy That's really great, thank you for going the extra mile even adding this feature to xcodes! 🚀

Regarding this issue: I would propose to still to leave it open and add the note to the release documentation, even if the root cause of the problems is fixed – but we'll never know when the next unexpected problem occurs...