Skip to content

Commit 12a6f2a

Browse files
authored
chore: Update Xcode version from 16.4 to 26.2 in CI (#1141)
* chore: Update Xcode version from 16.4 to 26.2 in CI * Use iOS 26.2 * chore: Use macos-26 * Use `xcbeautify` * Use iPhone 17 Pro
1 parent 0415e69 commit 12a6f2a

File tree

5 files changed

+43
-39
lines changed

5 files changed

+43
-39
lines changed

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010
jobs:
1111
build_release:
1212
name: Build iOS Example App (release, new architecture)
13-
runs-on: macos-latest
13+
runs-on: macos-26
1414
steps:
1515
- uses: actions/checkout@v6
1616
- uses: oven-sh/setup-bun@v2
@@ -28,8 +28,8 @@ jobs:
2828
bundler-cache: true
2929
working-directory: example
3030

31-
- name: Select Xcode 16.4
32-
run: sudo xcode-select -s "/Applications/Xcode_16.4.app/Contents/Developer"
31+
- name: Select Xcode 26.2
32+
run: sudo xcode-select -s "/Applications/Xcode_26.2.app/Contents/Developer"
3333

3434
- name: Restore Pods cache
3535
uses: actions/cache@v5
@@ -55,7 +55,7 @@ jobs:
5555
-configuration Release \
5656
-destination 'generic/platform=iOS Simulator' \
5757
build \
58-
CODE_SIGNING_ALLOWED=NO
58+
CODE_SIGNING_ALLOWED=NO | xcbeautify
5959
6060
- name: Package .app for Simulator
6161
run: |

.github/workflows/build-ios.yml

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ env:
4242
jobs:
4343
build:
4444
name: Build iOS Example App
45-
runs-on: macOS-latest
45+
runs-on: macOS-26
4646
steps:
4747
- uses: actions/checkout@v6
4848
- uses: oven-sh/setup-bun@v2
@@ -60,8 +60,8 @@ jobs:
6060
bundler-cache: true
6161
working-directory: example
6262

63-
- name: Select Xcode 16.4
64-
run: sudo xcode-select -s "/Applications/Xcode_16.4.app/Contents/Developer"
63+
- name: Select Xcode 26.2
64+
run: sudo xcode-select -s "/Applications/Xcode_26.2.app/Contents/Developer"
6565

6666
- name: Restore Pods cache
6767
uses: actions/cache@v5
@@ -76,13 +76,15 @@ jobs:
7676

7777
- name: Build App
7878
working-directory: example/ios
79-
run: "set -o pipefail && xcodebuild \
80-
CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ \
81-
-derivedDataPath build -UseModernBuildSystem=YES \
82-
-workspace NitroExample.xcworkspace \
83-
-scheme NitroExample \
84-
-sdk iphonesimulator \
85-
-configuration Debug \
86-
-destination 'platform=iOS Simulator,name=iPhone 16' \
87-
build \
88-
CODE_SIGNING_ALLOWED=NO"
79+
run: |
80+
set -o pipefail
81+
xcodebuild \
82+
CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ \
83+
-derivedDataPath build -UseModernBuildSystem=YES \
84+
-workspace NitroExample.xcworkspace \
85+
-scheme NitroExample \
86+
-sdk iphonesimulator \
87+
-configuration Debug \
88+
-destination 'generic/platform=iOS Simulator' \
89+
build \
90+
CODE_SIGNING_ALLOWED=NO | xcbeautify

.github/workflows/harness-ios.yml

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,17 @@ on:
1010
device_model:
1111
description: "iOS Simulator device model"
1212
required: false
13-
default: "iPhone 16 Pro"
13+
default: "iPhone 17 Pro"
1414
type: string
1515
ios_version:
1616
description: "iOS version"
1717
required: false
18-
default: "18.6"
18+
default: "26.2"
1919
type: string
2020
xcode_version:
2121
description: "Xcode version"
2222
required: false
23-
default: "16.4.0"
23+
default: "26.2.0"
2424
type: string
2525
push:
2626
branches:
@@ -63,16 +63,16 @@ on:
6363

6464
env:
6565
# Device configuration - can be overridden by workflow_dispatch inputs
66-
DEVICE_MODEL: ${{ github.event.inputs.device_model || 'iPhone 16 Pro' }}
67-
IOS_VERSION: ${{ github.event.inputs.ios_version || '18.6' }}
68-
XCODE_VERSION: ${{ github.event.inputs.xcode_version || '16.4.0' }}
66+
DEVICE_MODEL: ${{ github.event.inputs.device_model || 'iPhone 17 Pro' }}
67+
IOS_VERSION: ${{ github.event.inputs.ios_version || '26.2' }}
68+
XCODE_VERSION: ${{ github.event.inputs.xcode_version || '26.2.0' }}
6969
USE_CCACHE: 1
70-
DEVELOPER_DIR: /Applications/Xcode_${{ github.event.inputs.xcode_version || '16.4.0' }}.app/Contents/Developer
70+
DEVELOPER_DIR: /Applications/Xcode_${{ github.event.inputs.xcode_version || '26.2.0' }}.app/Contents/Developer
7171

7272
jobs:
7373
harness_ios_new:
7474
name: Harness iOS (new architecture)
75-
runs-on: macOS-latest
75+
runs-on: macOS-26
7676
steps:
7777
- uses: actions/checkout@v6
7878
with:
@@ -110,16 +110,18 @@ jobs:
110110

111111
- name: Build iOS app
112112
working-directory: example/ios
113-
run: "set -o pipefail && xcodebuild \
114-
CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ \
115-
-derivedDataPath build -UseModernBuildSystem=YES \
116-
-workspace NitroExample.xcworkspace \
117-
-scheme NitroExample \
118-
-sdk iphonesimulator \
119-
-configuration Debug \
120-
-destination 'platform=iOS Simulator,name=${{ env.DEVICE_MODEL }}' \
121-
build \
122-
CODE_SIGNING_ALLOWED=NO"
113+
run: |
114+
set -o pipefail
115+
xcodebuild \
116+
CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ \
117+
-derivedDataPath build -UseModernBuildSystem=YES \
118+
-workspace NitroExample.xcworkspace \
119+
-scheme NitroExample \
120+
-sdk iphonesimulator \
121+
-configuration Debug \
122+
-destination 'platform=iOS Simulator,name=${{ env.DEVICE_MODEL }}' \
123+
build \
124+
CODE_SIGNING_ALLOWED=NO | xcbeautify
123125
124126
- name: Setup iOS Simulator
125127
uses: futureware-tech/simulator-action@v4

.github/workflows/update-lockfiles.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
update-lockfiles:
2020
name: "Update lockfiles (Podfile.lock)"
2121
if: github.actor == 'dependabot[bot]'
22-
runs-on: macOS-latest
22+
runs-on: macOS-26
2323
steps:
2424
- uses: actions/checkout@v6
2525
with:
@@ -35,8 +35,8 @@ jobs:
3535
bundler-cache: true
3636
working-directory: example/ios
3737

38-
- name: Select Xcode 16.4
39-
run: sudo xcode-select -s "/Applications/Xcode_16.4.app/Contents/Developer"
38+
- name: Select Xcode 26.2
39+
run: sudo xcode-select -s "/Applications/Xcode_26.2.app/Contents/Developer"
4040

4141
- run: |
4242
bun install

example/rn-harness.config.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ const config = {
1919
}),
2020
applePlatform({
2121
name: "ios",
22-
device: appleSimulator("iPhone 16 Pro", "18.6"),
22+
device: appleSimulator("iPhone 17 Pro", "26.2"),
2323
bundleId: "com.mrousavy.nitro.example",
2424
}),
2525
],

0 commit comments

Comments
 (0)