Skip to content

Commit fc4ebf6

Browse files
graycreateclaude
andauthored
ci: upgrade to Xcode 26.0 and macOS 26 runners (#62)
* ci: upgrade all GitHub Actions workflows to use Xcode 16.2 - Updated release.yml to use Xcode 16.2 for production builds - Updated ios-build-test.yml to use Xcode 16.2 for CI builds - Updated code-quality.yml to use Xcode 16.2 for coverage reports - Updated dependency-update.yml to use Xcode 16.2 for package updates This ensures all workflows use the latest stable Xcode version available on GitHub Actions runners (as of January 2025), improving build reliability and enabling access to latest iOS SDK features. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * ci: upgrade to Xcode 26.0 and macOS 26 runners Major upgrade from Xcode 16.2 to Xcode 26.0, Apple's latest release from WWDC 2025. Changes: - Upgraded all workflows to use macOS 26 runners (arm64 only) - Updated Xcode version from 16.2 to 26.0 across all workflows - release.yml: Production builds now use Xcode 26.0 - ios-build-test.yml: CI builds use Xcode 26.0 - code-quality.yml: Code coverage and SwiftFormat use Xcode 26.0 - dependency-update.yml: Package updates use Xcode 26.0 Benefits: - Latest iOS 26 SDK support - AI-powered development tools (ChatGPT, Claude integration) - Up to 16x faster list updates in SwiftUI - Improved compilation caching - Enhanced Swift 6 support - New Icon Composer tool - Voice Control Swift Mode for accessibility Note: macOS 26 runners are ARM64 only and currently in public preview. References: - Xcode 26 released September 16, 2025 (WWDC 2025) - macOS 26 (Tahoe) runners available since September 11, 2025 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> * fix: update simulator device to iPhone 17 for Xcode 26 compatibility The macOS 26 runners with Xcode 26 don't have iPhone 16 simulators with the latest iOS. Updated all test workflows to use iPhone 17 which is available with iOS 26.0 and 26.1 on the new runners. Changes: - ios-build-test.yml: iPhone 16 → iPhone 17 - code-quality.yml: iPhone 16 → iPhone 17 This fixes the build failure: "Unable to find a device matching the provided destination specifier" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent 610c750 commit fc4ebf6

File tree

4 files changed

+13
-13
lines changed

4 files changed

+13
-13
lines changed

.github/workflows/code-quality.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ on:
99
jobs:
1010
swiftformat:
1111
name: SwiftFormat Check
12-
runs-on: macos-latest
12+
runs-on: macos-26
1313

1414
steps:
1515
- name: Checkout repository
@@ -39,7 +39,7 @@ jobs:
3939

4040
code-coverage:
4141
name: Code Coverage
42-
runs-on: macos-latest
42+
runs-on: macos-26
4343

4444
steps:
4545
- name: Checkout repository
@@ -48,7 +48,7 @@ jobs:
4848
submodules: recursive
4949

5050
- name: Select Xcode version
51-
run: sudo xcode-select -s /Applications/Xcode_16.0.app/Contents/Developer
51+
run: sudo xcode-select -s /Applications/Xcode_26.0.app/Contents/Developer
5252

5353
- name: Install xcpretty
5454
run: gem install xcpretty
@@ -59,7 +59,7 @@ jobs:
5959
-project V2er.xcodeproj \
6060
-scheme V2er \
6161
-sdk iphonesimulator \
62-
-destination 'platform=iOS Simulator,name=iPhone 16' \
62+
-destination 'platform=iOS Simulator,name=iPhone 17' \
6363
-enableCodeCoverage YES \
6464
-derivedDataPath build/DerivedData \
6565
CODE_SIGN_IDENTITY="" \

.github/workflows/dependency-update.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ on:
99
jobs:
1010
update-dependencies:
1111
name: Update Swift Package Dependencies
12-
runs-on: macos-latest
12+
runs-on: macos-26
1313

1414
steps:
1515
- name: Checkout repository
@@ -18,7 +18,7 @@ jobs:
1818
token: ${{ secrets.GITHUB_TOKEN }}
1919

2020
- name: Select Xcode version
21-
run: sudo xcode-select -s /Applications/Xcode_16.0.app/Contents/Developer
21+
run: sudo xcode-select -s /Applications/Xcode_26.0.app/Contents/Developer
2222

2323
- name: Update Swift packages
2424
run: |

.github/workflows/ios-build-test.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ env:
1313
jobs:
1414
build-and-test:
1515
name: Build and Test
16-
runs-on: macos-latest
16+
runs-on: macos-26
1717

1818
steps:
1919
- name: Checkout repository
@@ -22,7 +22,7 @@ jobs:
2222
submodules: recursive
2323

2424
- name: Select Xcode version
25-
run: sudo xcode-select -s /Applications/Xcode_16.0.app/Contents/Developer
25+
run: sudo xcode-select -s /Applications/Xcode_26.0.app/Contents/Developer
2626

2727
- name: Show Xcode version
2828
run: xcodebuild -version
@@ -50,18 +50,18 @@ jobs:
5050
-project V2er.xcodeproj \
5151
-scheme V2er \
5252
-sdk iphonesimulator \
53-
-destination 'platform=iOS Simulator,name=iPhone 16' \
53+
-destination 'platform=iOS Simulator,name=iPhone 17' \
5454
ONLY_ACTIVE_ARCH=YES \
5555
CODE_SIGN_IDENTITY="" \
5656
CODE_SIGNING_REQUIRED=NO | xcpretty --color
57-
57+
5858
- name: Run tests
5959
run: |
6060
set -o pipefail && xcodebuild test-without-building \
6161
-project V2er.xcodeproj \
6262
-scheme V2er \
6363
-sdk iphonesimulator \
64-
-destination 'platform=iOS Simulator,name=iPhone 16' \
64+
-destination 'platform=iOS Simulator,name=iPhone 17' \
6565
ONLY_ACTIVE_ARCH=YES \
6666
CODE_SIGN_IDENTITY="" \
6767
CODE_SIGNING_REQUIRED=NO | xcpretty --color --test

.github/workflows/release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ jobs:
9696
name: Build and Release to TestFlight (Public Beta)
9797
needs: version-check
9898
if: needs.version-check.outputs.should_release == 'true'
99-
runs-on: macos-latest
99+
runs-on: macos-26
100100

101101
steps:
102102
- name: Checkout repository at tag
@@ -107,7 +107,7 @@ jobs:
107107
ref: ${{ needs.version-check.outputs.new_tag }}
108108

109109
- name: Select Xcode version
110-
run: sudo xcode-select -s /Applications/Xcode_16.0.app/Contents/Developer
110+
run: sudo xcode-select -s /Applications/Xcode_26.0.app/Contents/Developer
111111

112112
- name: Setup Ruby
113113
uses: ruby/setup-ruby@v1

0 commit comments

Comments
 (0)