@@ -249,27 +249,38 @@ jobs:
249
249
arch : ${{ matrix.arch }}
250
250
251
251
build_macos :
252
- name : ' macOS'
253
- needs : check_source
254
- if : needs.check_source.outputs.run_tests == 'true'
255
- uses : ./.github/workflows/reusable-macos.yml
256
- with :
257
- config_hash : ${{ needs.check_source.outputs.config_hash }}
258
- # Cirrus and macos-14 are M1, macos-13 is default GHA Intel.
259
- # Cirrus used for upstream, macos-14 for forks.
260
- os-matrix : ' ["ghcr.io/cirruslabs/macos-runner:sonoma", "macos-14", "macos-13"]'
261
-
262
- build_macos_free_threading :
263
- name : ' macOS (free-threading)'
252
+ name : >-
253
+ macOS
254
+ ${{ fromJSON(matrix.free-threading) && '(free-threading)' || '' }}
264
255
needs : check_source
265
256
if : needs.check_source.outputs.run_tests == 'true'
257
+ strategy :
258
+ fail-fast : false
259
+ matrix :
260
+ # Cirrus and macos-14 are M1, macos-13 is default GHA Intel.
261
+ # macOS 13 only runs tests against the GIL-enabled CPython.
262
+ # Cirrus used for upstream, macos-14 for forks.
263
+ os :
264
+ - ghcr.io/cirruslabs/macos-runner:sonoma
265
+ - macos-14
266
+ - macos-13
267
+ is-fork : # only used for the exclusion trick
268
+ - ${{ github.repository_owner != 'python' }}
269
+ free-threading :
270
+ - false
271
+ - true
272
+ exclude :
273
+ - os : ghcr.io/cirruslabs/macos-runner:sonoma
274
+ is-fork : true
275
+ - os : macos-14
276
+ is-fork : false
277
+ - os : macos-13
278
+ free-threading : true
266
279
uses : ./.github/workflows/reusable-macos.yml
267
280
with :
268
281
config_hash : ${{ needs.check_source.outputs.config_hash }}
269
- free-threading : true
270
- # Cirrus and macos-14 are M1.
271
- # Cirrus used for upstream, macos-14 for forks.
272
- os-matrix : ' ["ghcr.io/cirruslabs/macos-runner:sonoma", "macos-14"]'
282
+ free-threading : ${{ matrix.free-threading }}
283
+ os : ${{ matrix.os }}
273
284
274
285
build_ubuntu :
275
286
name : >-
@@ -596,7 +607,6 @@ jobs:
596
607
- check-docs
597
608
- check_generated_files
598
609
- build_macos
599
- - build_macos_free_threading
600
610
- build_ubuntu
601
611
- build_ubuntu_ssltests
602
612
- build_wasi
@@ -632,7 +642,6 @@ jobs:
632
642
&& '
633
643
check_generated_files,
634
644
build_macos,
635
- build_macos_free_threading,
636
645
build_ubuntu,
637
646
build_ubuntu_ssltests,
638
647
build_wasi,
0 commit comments