8484 echo "XZ_VERSION=${XZ_VERSION}" | tee -a ${GITHUB_OUTPUT}
8585
8686 build :
87- runs-on : macOS-latest
87+ runs-on : macOS-15
8888 needs : [ config ]
8989 strategy :
9090 fail-fast : false
9494 steps :
9595 - uses : actions/checkout@v5
9696
97+ - name : Set up Xcode
98+ # GitHub recommends explicitly selecting the desired Xcode version:
99+ # https://github.com/actions/runner-images/issues/12541#issuecomment-3083850140
100+ # This became a necessity as a result of
101+ # https://github.com/actions/runner-images/issues/12541 and
102+ # https://github.com/actions/runner-images/issues/12751.
103+ run : |
104+ sudo xcode-select --switch /Applications/Xcode_16.4.app
105+
97106 - name : Set up Python
9810799108 with :
@@ -117,7 +126,7 @@ jobs:
117126
118127 briefcase-testbed :
119128 name : Briefcase testbed (${{ matrix.platform }})
120- runs-on : macOS-latest
129+ runs-on : macOS-15
121130 needs : [ config, build ]
122131 strategy :
123132 fail-fast : false
@@ -127,11 +136,20 @@ jobs:
127136 - briefcase-run-args :
128137
129138 - platform : iOS
130- briefcase-run-args : ' -d "iPhone SE (3rd generation) "'
139+ briefcase-run-args : ' -d "iPhone 16e"::iOS 18.5 "'
131140
132141 steps :
133142 - uses : actions/checkout@v5
134143
144+ - name : Set up Xcode
145+ # GitHub recommends explicitly selecting the desired Xcode version:
146+ # https://github.com/actions/runner-images/issues/12541#issuecomment-3083850140
147+ # This became a necessity as a result of
148+ # https://github.com/actions/runner-images/issues/12541 and
149+ # https://github.com/actions/runner-images/issues/12751.
150+ run : |
151+ sudo xcode-select --switch /Applications/Xcode_16.4.app
152+
135153 - name : Get build artifact
136154137155 with :
@@ -160,22 +178,34 @@ jobs:
160178 python -m pip install git+https://github.com/beeware/briefcase.git
161179
162180 - name : Run support testbed check
163- timeout-minutes : 10
181+ timeout-minutes : 15
164182 working-directory : Python-support-testbed
165183 run : briefcase run ${{ matrix.platform }} Xcode --test ${{ matrix.briefcase-run-args }} -C support_package=\'../dist/Python-${{ needs.config.outputs.PYTHON_VER }}-${{ matrix.platform }}-support.${{ needs.config.outputs.BUILD_NUMBER }}.tar.gz\'
166184
167185 cpython-testbed :
168186 name : CPython testbed (${{ matrix.platform }})
169- runs-on : macOS-latest
187+ runs-on : macOS-15
170188 needs : [ config, build ]
171189 strategy :
172190 fail-fast : false
173191 matrix :
174192 platform : ["iOS", "visionOS"]
193+ include :
194+ - platform : " iOS"
195+ testbed-args : ' --simulator "iPhone 16e,arch=arm64,OS=18.5"'
175196
176197 steps :
177198 - uses : actions/checkout@v5
178199
200+ - name : Set up Xcode
201+ # GitHub recommends explicitly selecting the desired Xcode version:
202+ # https://github.com/actions/runner-images/issues/12541#issuecomment-3083850140
203+ # This became a necessity as a result of
204+ # https://github.com/actions/runner-images/issues/12541 and
205+ # https://github.com/actions/runner-images/issues/12751.
206+ run : |
207+ sudo xcode-select --switch /Applications/Xcode_16.4.app
208+
179209 - name : Get build artifact
180210181211 with :
@@ -200,7 +230,7 @@ jobs:
200230 tar zxvf ../../../dist/Python-${{ needs.config.outputs.PYTHON_VER }}-${{ matrix.platform }}-support.${{ needs.config.outputs.BUILD_NUMBER }}.tar.gz
201231
202232 - name : Run CPython testbed
203- timeout-minutes : 10
233+ timeout-minutes : 15
204234 working-directory : support/${{ needs.config.outputs.PYTHON_VER }}/${{ matrix.platform }}
205235 run : |
206236 # Run a representative subset of CPython core tests:
@@ -209,7 +239,7 @@ jobs:
209239 # - test_os as a test of system library calls
210240 # - test_bz2 as a simple test of third party libraries
211241 # - test_ctypes as a test of FFI
212- python -m testbed run -- test --single-process --rerun -W test_builtin test_grammar test_os test_bz2 test_ctypes
242+ python -m testbed run ${{ matrix.testbed-args }} -- test --single-process --rerun -W test_builtin test_grammar test_os test_bz2 test_ctypes
213243
214244 crossenv-test :
215245 name : Cross-platform env test (${{ matrix.multiarch }})
0 commit comments