Cap CI Xcode version at 26.3 to fix iOS build#802
Merged
Conversation
Xcode 26.4 ships a stricter Clang that breaks the `fmt` CocoaPod with consteval errors. Cap the auto-selected Xcode at 26.3 until the Pod is updated. The cap is a single variable (MAX_XCODE_VERSION) at the top of the script for easy bumping. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the CI Xcode selection helper to prevent iOS builds from picking a newer Xcode that breaks CocoaPods compilation (notably fmt) by capping the auto-selected version.
Changes:
- Introduced a
MAX_XCODE_VERSIONconstant to cap selection to a maximum major.minor Xcode version. - Added exclusion logic to skip any stable Xcode installations whose major.minor version is above the cap, before sorting to pick the latest allowed version.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
piyalbasu
approved these changes
Apr 3, 2026
This was referenced Apr 4, 2026
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.
What
Cap the auto-selected Xcode version at 26.3 in the CI setup script.
Why
Xcode 26.4 (recently launched on March 24, 2026) ships a stricter Clang that breaks the
fmtCocoaPod withconstevalerrors:The
setup-xcode-latest-stablescript auto-selects the highest non-beta Xcode on the runner. Since 26.4 is now available on CI runners, all iOS builds fail.Changes
Added a
MAX_XCODE_VERSIONvariable at the top ofscripts/setup-xcode-latest-stablethat caps selection at 26.3. Versions above the cap are excluded before the sort, so CI will pick 26.3.x as the latest allowed version.To bump later, just change the single variable at the top of the script once the
fmtpod (or its consumer) is updated.Known limitations
N/A — this is a temporary cap until pod compatibility is resolved.
Checklist
PR structure
Testing
Release