Repository navigation
Run CI on the Xcode 27 runner image - #853
Merged
Merged
Conversation
The Swift 6.4 toolchain selects the tools-version 6.4 manifests of the Point-Free packages. These manifests depend on swift-issue-reporting 2.x instead of xctest-dynamic-overlay 1.x, so .package.resolved changes with the Xcode major version. Local builds and releases use Xcode 27, and CI used Xcode 26.6. Each side rewrote the lockfile that the other side committed, and CI tested other dependency versions than the release. Move the Mac app and iOS mirror jobs to the xcode-27 image and commit the lockfile that Xcode 27 resolves.
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.
Problem
.package.resolveddepends on the Swift toolchain version:Package.swiftwithswift-tools-version: 6.4. It depends onswift-issue-reporting2.x.Package@swift-6.x.swiftmanifests for older toolchains still depend onxctest-dynamic-overlay1.x.Local builds and releases use Xcode 27 (Swift 6.4), and CI used
macos-26with Xcode 26.6. Thus eachmake run-appon Xcode 27 rewrote the committed lockfile, and CI testedxctest-dynamic-overlay 1.13.1while the release linkedswift-issue-reporting 2.1.0.Change
test.yml) and the iOS mirror job (mirror-ios.yml) on thexcode-27runner image (Xcode 27.0, 27A266a, the same build as local).swift-issue-reporting 2.1.0replacesxctest-dynamic-overlay 1.13.1. No other pin changes.Notes
xcode-27as a public preview ([macOS] Xcode 27 is now available as a public preview actions/runner-images#14404). No GAmacos-27label exists yet. Move to it when it is available.iPad Pro 11-inch (M5)on iOS 27.0, soscripts/select_ios_simulator.pyfinds a device.mainbuilds without the App and CLI incremental caches. The GhosttyKit cache key does not depend on Xcode and still applies.xcode-27issue with the missing Metal toolchain (Metal Toolchain is missing on xcode-27 actions/runner-images#14548) does not apply: the repository has no.metalsources, and GhosttyKit comes from prebuilt artifacts.Verification
make build-appwith Xcode 27.0: succeeded.swift package resolveforCLIandMirror/Relaywith Swift 6.4: no lockfile change.