-
-
Notifications
You must be signed in to change notification settings - Fork 259
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
pex does not resolve abi3 wheels correctly #539
Comments
From what I can tell, when pex is doing dependency resolution, It's also somewhat unfortunate in that the @kwlzn et al., are there any concerns with further diverging from the |
Any update on the issue? |
Indeed by inverting the
Tested on:
|
Thanks for debugging a bit @piger. Although your fix works - it clearly goes against what the conditional is trying to do. I think the answer is to dig and see who / why passes version. I'll dig in here since I just finished dealing with pex 1.6.x errors building cryptography in #661 / #666 so this is fresh on my mind. |
Note to self: making sure #492 continues to be fixed is important here. |
@jsirois I know, it was mostly to get a sense of what was going on and try to resume the conversation :) Thanks a lot for working on the other issue! |
I'm digging a bit more into how The wheel file that I'm trying to install is It seems that
while the "supported tags" generated by pex only includes the current interpreter version, e.g. To have Does this make any sense? Apologies in advance if it doesn't, but this bug is blocking a py3 porting that I'm doing, enough to trigger my will to try to help :) |
Previously, we'd pass a single version to `get_supported` when we knew one which would lead to a single tag being generated for the abi3 case instead of one per previous minor version. Fixes pex-tool#539
Previously, we'd pass a single version to `get_supported` when we knew one which would lead to a single tag being generated for the abi3 case instead of one per previous minor version. Fixes pex-tool#539
Previously, we'd pass a single version to `get_supported` when we knew one which would lead to a single tag being generated for the abi3 case instead of one per previous minor version. Fixes pex-tool#539
Previously, we'd pass a single version to `get_supported` when we knew one which would lead to a single tag being generated for the abi3 case instead of one per previous minor version. As part of this change, we need a more modern version of the pep425tags.py we had copied from pip that allows passing multiple versions to `get_supported`. Ideally, we'd use the version embedded in our vendored setuptools code and this is tracked by #696. Extra code had been added to pep425tags to implement `get_supported_for_any_abi` and handle manylinux. This is now inlined in platforms.py, which was the only user, the door to using undisturbed copies in #696. Fixes #539
pex doesn't seem to resolve abi3 wheels correctly. I have a project that depends on cryptography, which seems to have started publishing abi3 wheels on March 20 2018 (v2.2)
At first I thought this was missing wheels from cryptography (see pyca/cryptography#4404), but actually the python 3.4 abi3 wheel should cover python 3.6 for example (which I'm using).
I pex package my project like so:
If I pin cryptography to 2.1.4 (last version that published non-abi3 wheels), pex packaging above works.
If I try latest cryptography version,
pip wheel
correctly findscryptography-2.3.1-cp34-abi3-macosx_10_6_intel.whl
, however pex complains withCould not satisfy all requirements for cryptography
My environment:
The text was updated successfully, but these errors were encountered: