Skip to content

Run CI on the Xcode 27 runner image - #853

Merged
onevcat merged 1 commit into
mainfrom
ci/xcode-27-runner
Oct 4, 2026
Merged

onevcat merged 1 commit into
mainfrom
ci/xcode-27-runner

Conversation

@onevcat

@onevcat onevcat commented Oct 4, 2026

Copy link
Copy Markdown
Owner

Problem

.package.resolved depends on the Swift toolchain version:

  • The Point-Free packages (TCA, swift-dependencies, swift-case-paths, swift-navigation, swift-sharing, and others) ship a Package.swift with swift-tools-version: 6.4. It depends on swift-issue-reporting 2.x.
  • Their Package@swift-6.x.swift manifests for older toolchains still depend on xctest-dynamic-overlay 1.x.

Local builds and releases use Xcode 27 (Swift 6.4), and CI used macos-26 with Xcode 26.6. Thus each make run-app on Xcode 27 rewrote the committed lockfile, and CI tested xctest-dynamic-overlay 1.13.1 while the release linked swift-issue-reporting 2.1.0.

Change

  • Run the Mac app job (test.yml) and the iOS mirror job (mirror-ios.yml) on the xcode-27 runner image (Xcode 27.0, 27A266a, the same build as local).
  • Commit the lockfile that Xcode 27 resolves: swift-issue-reporting 2.1.0 replaces xctest-dynamic-overlay 1.13.1. No other pin changes.

Notes

Verification

  • make build-app with Xcode 27.0: succeeded.
  • swift package resolve for CLI and Mirror/Relay with Swift 6.4: no lockfile change.
  • CI on this PR runs on the new image.

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.
@onevcat
onevcat merged commit 2eb66c5 into main Oct 4, 2026
2 checks passed
@onevcat
onevcat deleted the ci/xcode-27-runner branch October 4, 2026 08:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant