-
Notifications
You must be signed in to change notification settings - Fork 156
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't build wheels on CPython 3.13t
(no GIL / PEP 703) when py-limited-api
option is set
#624
Comments
Tag validation is handled by a vendored copy of the |
This isn't a Please re-read what I posted and see the linked lines of code above which explain the issue. This is not supposed to be an |
Apologies. But if this concerns |
The way I handle this in scikit-build-core is that if |
Ok, I see, this was vendored in However, this should be fixed here too IMO, because there probably are projects which set a specific version of Going to open another issue on the setuptools issue tracker now... |
If they have a problem, then they would need to bump the |
Closing as no longer relevant to this project. |
I ran into this issue while trying to build a
pycryptodome
wheel on CPython3.13t
.See Legrandin/pycryptodome#813
The
pycryptodome
project sets thepy-limited-api
option tocp35
in order to limit itsabi3
wheels tocp35
and above.However, when using CPython
3.13t
(built without global interpreter lock - PEP 703), this option raises anAssertionError
when trying to build the wheel.The reason for this is this if-else-block:
https://github.com/pypa/wheel/blob/0.43.0/src/wheel/bdist_wheel.py#L344-L348
Building CPython 3.13 without the GIL adds the
t
ABI flag, so the(impl_name + impl_ver).startswith("cp3")
check is incorrect where it setsabi_tag = "abi3"
if the condition is true. TheAssertionError
is then raised afterwards when it checks for supported tags:https://github.com/pypa/wheel/blob/0.43.0/src/wheel/bdist_wheel.py#L349-L356
The text was updated successfully, but these errors were encountered: