[ ] Evaluate all type creation/caching code for obvious GIL-incidental locking or deadlock issues sans GIL.
[ ] Evaluate all manual refcounting, buffer manipulations, marshaling code, etc for obvious concurrency issues.
[ ] Build a lot more threaded stress tests for the above, measure coverage.
[ ] Update documentation to describe current state, concerns around GIL-free operation modes.
[ ] Once we have some confidence in true GIL-free operations, provide a high-level opt-in/out for CFFI-backed extensions to call PyUnstable_Module_SetGIL() during extension init to control the automatic legacy extension GIL re-enable.
[ ] Remove known dead code from active development branches (ala #124).
[ ] Work with high-profile CFFI-consuming projects (e.g. cryptography, pynacl, pygame, ?) to ensure any future threaded stress tests are not broken by CFFI issues.
Tracking known blockers to actual support of Python's new
t
free-threaded ABI - add new ones as we discover them.Py_LIMITED_API
(default) undert
ABI will always segfault. (fixed by #125)PyUnstable_Module_SetGIL()
during extension init to control the automatic legacy extension GIL re-enable.