Conversation
Closes cython#7276 Will be needed for Stable ABI+freethreading support (in the future).
|
I'm going to mark this as draft until Python 3.15a2 is out because it's hard to meaningfully test. I've given it a quick go with a local build of Python main (with the version number tweaked) but that doesn't mean everything will work. |
(which well unfortunately break will alpha versions that are too early)
but have it fail in limited API
|
Closing and reopening - I believe this should work with the release of alpha 2 |
|
I think there's a bug with extension modules disabling the GIL. I've reported it at python/cpython#141780. When I get confirmation that this is a bug and not just me missing something important then I'll put this in draft again until alpha3. |
| code.putln("#if CYTHON_PEP489_MULTI_PHASE_INIT") | ||
| code.putln("{") | ||
| code.putln("#if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 && CYTHON_COMPILING_IN_LIMITED_API") | ||
| # We still define the PyInit function because setuptools will try to export it, but it's unusable with |
There was a problem hiding this comment.
Note that this should be addressed by pypa/distutils#395. Once that gets merged and then propagates into a new setuptools release, this can be dropped.
|
It would be nice to merge this PR. We're trying to give the 3.15 stable ABI support a push, and are finishing up this testing repo which contains test packages that use PEP 793 and a test matrix of build backends x binding generators. This seems safe enough, and with 3.15.0a3 available in |
because it's now compulsory.
Closes #7276
Will be needed for Stable ABI+freethreading support (in the future).