Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Proper free-threaded ABI support blockers #126

Copy link
Copy link
@nitzmahone

Description

@nitzmahone
Issue body actions

Tracking known blockers to actual support of Python's new t free-threaded ABI - add new ones as we discover them.

  • Extensions built with Py_LIMITED_API (default) under t ABI will always segfault. (fixed by Hard disable Py_LIMITED_API under free-threaded build #125)
  • Threaded embedding tests fail under free-threaded build. ([Python bug]
    (Crash in Py_Initialize in non-main thread in free-threading build python/cpython#123022), fixed in 3.13.0rc2)
  • Add non-artifact CI job for 3.13t.
  • 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.
  • Clean up and enable at least optional runs of the full test suite under Windows (skipped in CI for time, currently numerous broken tests and at least one item deadlocks under the parallel runner).
  • Remove known dead code from active development branches (ala Remove pre-Python 3.8 C code #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.
ankush, electroglyph, Bendartrussell, sle78, justinchuby and 9 more

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Morty Proxy This is a proxified and sanitized view of the page, visit original site.