Repository navigation
Description
Bug report
"Windows (free-threading) / Build and test (x64, switch-case)" is the longest job in the CI:
On the "Windows (free-threading) / Build and test (x64, switch-case)" job on main, test_free_threading hit the 10-minute timeout in 6 of 8 passing runs, then passed on rerun in ~2m40s. In the log this shows up as test_free_threading worker non-zero exit code (Exit code 1), followed by Timeout (0:10:00)! later on:
- https://github.com/python/cpython/actions/runs/36967387129/job/110714027502#step:6:1319
- https://github.com/python/cpython/actions/runs/36958725181/job/110687463137#step:6:376
- https://github.com/python/cpython/actions/runs/36930136472/job/110597177910#step:6:463
- https://github.com/python/cpython/actions/runs/36908135807/job/110523837239#step:6:727
- https://github.com/python/cpython/actions/runs/36891296064/job/110467415355#step:6:829
- https://github.com/python/cpython/actions/runs/36854278770/job/110343015461#step:6:445
test_free_threading is a package of 57 modules but is not in SPLITTESTDIRS, so regrtest runs it as a single test with a single 10-minute timeout. That's not long enough when under load on the 4-core Windows runner, and results in a rerun taking around 3 minutes.
Let's add test_free_threading to SPLITTESTDIRS so each module is scheduled and timed separately. Then it should have enough time to complete without timeout, not needing the rerun.
This should save around 2-3 minutes on this job, and also reduce the total CI wall clock time.
CPython versions tested on:
CPython main branch, 3.15, 3.14
Operating systems tested on:
Windows
Activity
gh-158618: Split `test_free_threading` into per-module tests to avoid…
[3.14] gh-158618: Split `test_free_threading` into per-module tests t…
[3.15] gh-158618: Split `test_free_threading` into per-module tests t…