@@ -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 : >-
@@ -595,7 +606,6 @@ jobs:
595
606
- check-docs
596
607
- check_generated_files
597
608
- build_macos
598
- - build_macos_free_threading
599
609
- build_ubuntu
600
610
- build_ubuntu_ssltests
601
611
- build_wasi
@@ -631,7 +641,6 @@ jobs:
631
641
&& '
632
642
check_generated_files,
633
643
build_macos,
634
- build_macos_free_threading,
635
644
build_ubuntu,
636
645
build_ubuntu_ssltests,
637
646
build_wasi,
0 commit comments