You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix: support CPython free-threaded builds (3.14t) (#746)
* fix: support CPython free-threaded builds
Co-authored-by: Miles Cranmer <[email protected]>
* ci: test with python3.14t
Co-authored-by: Miles Cranmer <[email protected]>
* refactor: centralize free-threaded layout branching
Co-authored-by: Miles Cranmer <[email protected]>
* fix: make @ft macro hygienic
* run freethreading tests as cases of existing jobs and include python tests
* skip pycall tests on free-threaded python
* simplify implementation of ft macro
* add a comment for later
* update changelog
* extra care to ensure pythoncall uses the correct python executable
---------
Co-authored-by: Miles Cranmer <[email protected]>
Co-authored-by: Christopher Rowley <github.com/cjdoris>
Copy file name to clipboardExpand all lines: src/C/consts.jl
+34Lines changed: 34 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -124,6 +124,20 @@ end
124
124
type::Ptr{Cvoid}=C_NULL# really is Ptr{PyObject} or Ptr{PyTypeObject} but Julia 1.3 and below get the layout incorrect when circular types are involved
125
125
end
126
126
127
+
@kwdefstruct PyMutex
128
+
bits::Cuchar=0
129
+
end
130
+
131
+
@kwdefstruct PyObjectFT
132
+
tid::Csize_t=0
133
+
flags::Cushort=0
134
+
mutex::PyMutex=PyMutex()
135
+
gc_bits::Cuchar=0
136
+
ref_local::Cuint=0
137
+
ref_shared::Py_ssize_t=0
138
+
type::Ptr{Cvoid}=C_NULL# really is Ptr{PyObject} or Ptr{PyTypeObject} but Julia 1.3 and below get the layout incorrect when circular types are involved
0 commit comments