Repository navigation
Commit 3ca649b
Tidy the free-threaded wheel build configuration
No functional change to the default builds.
CIBW_ENABLE=cpython-freethreading was a no-op here. cibuildwheel 3.3.0 gates
only cp313t behind that group (selector.py checks fnmatch(build_id, "cp313t-*")
before consulting the enable set); cp314t is selectable by default, and this
matrix builds no cp313t. The option is also deprecated in 3.4.1 and removed in
4.0, so leaving it set would break a later cibuildwheel bump for no benefit.
The matrix excludes now say why each one is there. 3.11t and 3.12t are not
build identifiers at all, since free threading starts at 3.13, so without the
exclude cibuildwheel selects nothing and the job fails on an empty wheelhouse.
3.13t is a deliberate choice about NumPy instead: no cp313t wheels are
published from 2.5 onwards, 2.4.6 being the last, which was confirmed by
installing numpy on a free-threaded 3.13 and watching 2.5.3 build from source.
CIBW_TEST_COMMAND uses bool(...) rather than == 1 on the Py_GIL_DISABLED config
var. The var is always an int on 3.13+, on Windows too, so this is not a fix,
just the idiom the free-threading porting guide uses. It also prints the flag
so the log shows which ABI the job exercised.
cmake.version moves to >=3.30.3. CMake 3.30 is the first whose FindPython3
understands the free-threaded "t" ABI, and scikit-build-core only sends the
Python3_FIND_ABI hint when the configured specifier admits 3.30+, so at >=3.15
a 3.15-3.29 system CMake would silently skip it. 3.30.3 adds the
Python3_DEFINITIONS that a Windows free-threaded build needs, since PC/pyconfig.h
relies on Py_GIL_DISABLED being defined to auto-link python3XXt.lib.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent ae8799c commit 3ca649b
2 files changed
Lines changed: 20 additions & 16 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
35 | | - | |
36 | | - | |
37 | | - | |
| 35 | + | |
38 | 36 | | |
39 | 37 | | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
46 | 47 | | |
47 | 48 | | |
48 | 49 | | |
| |||
71 | 72 | | |
72 | 73 | | |
73 | 74 | | |
| 75 | + | |
| 76 | + | |
74 | 77 | | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
| |||
83 | 83 | | |
84 | 84 | | |
85 | 85 | | |
86 | | - | |
87 | | - | |
88 | | - | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
19 | 23 | | |
20 | 24 | | |
21 | 25 | | |
| |||
0 commit comments