From 47774374ffea856e7beece86f39eb3d086170db7 Mon Sep 17 00:00:00 2001 From: Karoy Lorentey Date: Tue, 18 Aug 2026 15:05:55 -0700 Subject: [PATCH 1/2] Update to recently shipped Xcode versions (stable and beta) - 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. --- .github/workflows/swift_package_test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/swift_package_test.yml b/.github/workflows/swift_package_test.yml index 950b6c0c..323dc8f7 100644 --- a/.github/workflows/swift_package_test.yml +++ b/.github/workflows/swift_package_test.yml @@ -9,7 +9,7 @@ on: macos_xcode_versions: type: string description: "Xcode version list (JSON)" - default: "[\"16.4\", \"26.3\", \"26.4\", \"27.b2\"]" + default: "[\"16.4\", \"26.3\", \"26.5\", \"27.b5\"]" macos_exclude_xcode_versions: type: string description: "Exclude Xcode version list (JSON)" @@ -25,7 +25,7 @@ on: macos_swiftly_toolchains: type: string description: "List of macOS Swiftly toolchain builds to test, each pairing an Xcode version with a Swiftly-managed Swift toolchain (JSON list of objects with xcode_version, swift_version, os_version, arch)" - default: "[{\"xcode_version\": \"26.4\", \"swift_version\": \"main-snapshot\", \"os_version\": \"tahoe\", \"arch\": \"ARM64\"}]" + default: "[{\"xcode_version\": \"26.5\", \"swift_version\": \"main-snapshot\", \"os_version\": \"tahoe\", \"arch\": \"ARM64\"}]" ios_host_xcode_versions: type: string description: "Xcode version list (JSON)" From 565f0e42c28025c4ab222a2315f9b12bde7167a1 Mon Sep 17 00:00:00 2001 From: Karoy Lorentey Date: Tue, 18 Aug 2026 16:42:16 -0700 Subject: [PATCH 2/2] Use Swift version-based symlinks instead of direct Xcode versions 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 | --- .github/workflows/swift_package_test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/swift_package_test.yml b/.github/workflows/swift_package_test.yml index 323dc8f7..d766ff28 100644 --- a/.github/workflows/swift_package_test.yml +++ b/.github/workflows/swift_package_test.yml @@ -9,7 +9,7 @@ on: macos_xcode_versions: type: string description: "Xcode version list (JSON)" - default: "[\"16.4\", \"26.3\", \"26.5\", \"27.b5\"]" + default: "[\"swift_6.1\", \"swift_6.2\", \"swift_6.3\", \"swift_6.4\"]" macos_exclude_xcode_versions: type: string description: "Exclude Xcode version list (JSON)" @@ -25,7 +25,7 @@ on: macos_swiftly_toolchains: type: string description: "List of macOS Swiftly toolchain builds to test, each pairing an Xcode version with a Swiftly-managed Swift toolchain (JSON list of objects with xcode_version, swift_version, os_version, arch)" - default: "[{\"xcode_version\": \"26.5\", \"swift_version\": \"main-snapshot\", \"os_version\": \"tahoe\", \"arch\": \"ARM64\"}]" + default: "[{\"xcode_version\": \"swift_6.3\", \"swift_version\": \"main-snapshot\", \"os_version\": \"tahoe\", \"arch\": \"ARM64\"}]" ios_host_xcode_versions: type: string description: "Xcode version list (JSON)"