Skip to content

swift_package_test: Switch to using Swift version-based symlinks - #309

Open
lorentey wants to merge 2 commits into
swiftlang:mainfrom
lorentey:update-xcodes
Open

swift_package_test: Switch to using Swift version-based symlinks#309
lorentey wants to merge 2 commits into
swiftlang:mainfrom
lorentey:update-xcodes

Conversation

@lorentey

@lorentey lorentey commented Aug 18, 2026

Copy link
Copy Markdown
Member

This lets workflows pick up the latest version of Xcode that is available on the runners automatically, with minimal effort on the part of package maintainers.

However, any package repository that has its own Xcode version lists (macos_xcode_versions, macos_exclude_xcode_versions) will need to be updated accordingly, as part of updating to a new github-workflows release with this change. (The exlusion list in particular will fail to function until this is done.)

At the time of writing, version specs in columns 2 or 3 below need to be replaced with the symbolic swift_6.x name in column one:

Symbolic name Xcode version spec Previous releases
swift_6.1 16.4 --
swift_6.2 26.3 26.0, 26.1, 26.2
swift_6.3 26.6 26.4, 26.4.1, 26.5
swift_6.4 27.b5 27.b1, 27.b2, 27.b3, 27.b4

- Bump Xcode 26.4 to 26.5. The runners no longer have Xcode 26.4 installed.
- Bump Xcode 27 beta 2 to beta 5. There is little to no point to running tests in obsolete betas.
@lorentey
lorentey requested a review from a team as a code owner August 18, 2026 22:08
@lorentey lorentey changed the title Update to recently shipped Xcode versions (stable and beta) swift_package_test: Switch to using Swift version-based symlinks Aug 18, 2026
This lets workflows pick up the latest version of Xcode that is available on the runners automatically.

However, any package repository that has its own Xcode version lists (`macos_xcode_versions`, `macos_exclude_xcode_versions`) will need to be updated accordingly, as part of updating to a new github-workflows release with this change. (The exlusion list in particular will fail to function until this is done.)

At the time of writing, version specs in columns 2 or 3 below need to be replaced with the symbolic `swift-6.x` name in column one:

|  Symbolic name | Xcode version spec | Previous releases          |
|----------------|--------------------|----------------------------|
| swift_6.1      | 16.4               | --                         |
| swift_6.2      | 26.3               | 26.0, 26.1, 26.2           |
| swift_6.3      | 26.6               | 26.4, 26.4.1, 26.5         |
| swift_6.4      | 27.b5              | 27.b1, 27.b2, 27.b3, 27.b5 |
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