-
Notifications
You must be signed in to change notification settings - Fork 964
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
Improve UX for abi3 binary wheels #10308
Comments
A bit of extra context here: Right now, the only bit of metadata PyPI extracts from built distributions (including wheels) is the Python version. We don't currently extract or store the ABI tags (or platform tags). For wheels, this could be inferred from the filename (along with the platform tags as well) but we would need to add a mechanism for doing this, as well as turning a set of tags like |
This remains an active issue for us, with users inadvertently downloading PyPy wheels. What can I do to contribute to moving this forward with clearer human-readable labeling? |
Here's a bit more descriptive list of steps, roughly:
Optional fourth step: help get #15087 across the finish line? Or at very least, let us know what you think about it there (especially given that the current draft includes an "ABI" dropdown). I suspect being able to filter the long list of built distributions that cryptography supports will also help with user errors here. |
Ok, I've started working on this -- I think doing it in memory, no DB column, should be fine. 99% of the work is going to be building a robust function to take wheel tags and turn them into something human readable. Is there a good way to get a dataset of every filename on PyPI to ensure it doesn't crash on any inputs? |
Here you go (split to get around GitHub's file size limits): |
Thanks. It's a little rough, but here's a basic approach for turning wheel filenames back into tags: https://gist.github.com/alex/98ae99a45584c76f6e850a72110e8ba8 Does this look basically reasonable? If so, I can clean it up and get it turned into a PR. |
Looks OK to me! |
Great. Will aim to convert it into a PR. Probably tomorrow.
…On Thu, Mar 14, 2024 at 4:29 PM Dustin Ingram ***@***.***> wrote:
Looks OK to me!
—
Reply to this email directly, view it on GitHub
<#10308 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAAGBFUANTFKFB6AQKMPDTYYICDPAVCNFSM5HMAAESKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOJZHA2DCMJSGY2Q>
.
You are receiving this because you commented.Message ID:
***@***.***>
--
All that is necessary for evil to succeed is for good people to do nothing.
|
Is this a duplicate of #9066? |
… files page (#15606) * Added utility for extracting pretty wheel tags from filename * Show pretty wheel tags in PyPI interface * Update translations
…kage files page (pypi#15606) * Added utility for extracting pretty wheel tags from filename * Show pretty wheel tags in PyPI interface * Update translations
What's the problem this feature will solve?
Warehouse shows
Python version
:cp36
for acp36-abi3
binary wheel. This is confusing for users that are not familiar with abi3 wheels. Ancp36-abi3
wheel works with any version of CPython >= 3.6,<4.0.Describe the solution you'd like
Could you please add an indication that
ab3
wheels work with any version equal or greater the Python version tag? Something like>= cp36
instead offcp36
would do the trick. If you want to go for the extra mile, then you could add a tooltip that explains whatabi3
wheels are and that users need a recent version of pip to install them.Additional context
The PyCA cryptography gets regular bug reports by users who are unable to install abi3 wheels due to outdated pip, for example pyca/cryptography#6548, pyca/cryptography#6451, pyca/cryptography#6454.
The text was updated successfully, but these errors were encountered: