-
Notifications
You must be signed in to change notification settings - Fork 239
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
Tracking issue for broken musllinux wheels #934
Comments
Looks like wheels are zip files and therefore don't support symlinks due to an old CPython bug. So it is not possible to play nice here. Alpine is applying an unaccepted patch onto CPython to change |
@ncopa and I spoke yesterday and came to a potential path forward. Quick summary added to the description. This has already been fixed in Alpine; 3.14 and 3.15 can now load musllinux wheels. |
I thought that the patch in Alpine Linux had fixed the issue? (at least for now? I suppose that suffix will get updated at some point, on a CPython minor version, perhaps) |
See pypa/manylinux#1225 - all muslllinux wheels are broken on Alpine 3.14; the version of Python used in Alpine 3.14 uses the wrong binary names inside the wheels (ending in
-musl
instead of-gnu
) So any wheels produced onmusllinux_1_1
do not work on Alpine 3.14.The patch has not been accepted upstream;
-gnu
is the correct,musllinux
name, and Alpine 3.14 is currently at fault. CPython 3.11 might change the name to-musl
, but it probably will not happen for existing Pythons.Also see:
Current binaries produced:
What it should be (Alpine 3.14+ has the patched CPython):
We hoped for a possible workaround, but this cannot be done, since wheels are zip files, and the zip module in Python has never supported symlinks:
Here's the current plan:
ABI3 wheels targeting <3.11 could be normalized to -gnu.(Currently ABI3 wheels do not have platform tags in the filename, so they work everywhere, but can't be in a shared folder.)The text was updated successfully, but these errors were encountered: