@@ -512,26 +512,20 @@ jobs:
512512 run : xvfb-run make ci
513513
514514 build_tsan :
515- name : ' Thread sanitizer'
516- needs : check_source
517- if : needs.check_source.outputs.run_tests == 'true'
518- uses : ./.github/workflows/reusable-tsan.yml
519- with :
520- config_hash : ${{ needs.check_source.outputs.config_hash }}
521- options : ./configure --config-cache --with-thread-sanitizer --with-pydebug
522- suppressions_path : Tools/tsan/supressions.txt
523- tsan_logs_artifact_name : tsan-logs-default
524-
525- build_tsan_free_threading :
526- name : ' Thread sanitizer (free-threading)'
515+ name : >-
516+ Thread sanitizer
517+ ${{ fromJSON(matrix.free-threading) && '(free-threading)' || '' }}
527518 needs : check_source
528519 if : needs.check_source.outputs.run_tests == 'true'
520+ strategy :
521+ matrix :
522+ free-threading :
523+ - false
524+ - true
529525 uses : ./.github/workflows/reusable-tsan.yml
530526 with :
531527 config_hash : ${{ needs.check_source.outputs.config_hash }}
532- options : ./configure --config-cache --disable-gil --with-thread-sanitizer --with-pydebug
533- suppressions_path : Tools/tsan/suppressions_free_threading.txt
534- tsan_logs_artifact_name : tsan-logs-free-threading
528+ free-threading : ${{ matrix.free-threading }}
535529
536530 # CIFuzz job based on https://google.github.io/oss-fuzz/getting-started/continuous-integration/
537531 cifuzz :
@@ -591,7 +585,6 @@ jobs:
591585 - test_hypothesis
592586 - build_asan
593587 - build_tsan
594- - build_tsan_free_threading
595588 - cifuzz
596589
597590 runs-on : ubuntu-latest
@@ -625,7 +618,6 @@ jobs:
625618 build_windows,
626619 build_asan,
627620 build_tsan,
628- build_tsan_free_threading,
629621 '
630622 || ''
631623 }}
0 commit comments