Skip to content
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

Handle compatible libc-based manylinux/musllinux platform tags #10894

Open
wants to merge 29 commits into
base: main
Choose a base branch
from

Conversation

q0w
Copy link
Contributor

@q0w q0w commented Feb 9, 2022

Closes #10760

@q0w q0w changed the title Pep600 PEP600 Feb 9, 2022
@q0w q0w changed the title PEP600 Handle PEP600 compatible manylinux wheels Feb 9, 2022
Copy link
Member

@pradyunsg pradyunsg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for filing this! I have two major blocking concerns with this PR:

  1. The news fragment isn't sufficiently clear about the fact that this only affects cases when certain flags are passed. Further, it'd be nice to use :pep: inline role to reference PEPs or, even better, use a textual description of what the PEP represents in the news fragment.
  2. The implementation uses a private function from packaging.tags, which I don't like the idea of doing.

@q0w

This comment was marked as resolved.

@q0w q0w marked this pull request as draft February 10, 2022 16:00
@q0w q0w changed the title Handle PEP600 compatible manylinux wheels Handle compatible manylinux/musllinux wheels Feb 21, 2022
@q0w

This comment was marked as resolved.

@q0w q0w changed the title Handle compatible manylinux/musllinux wheels Handle compatible glibc-based manylinux/musllinux platform tags Feb 22, 2022
@q0w q0w closed this Feb 22, 2022
@q0w q0w reopened this Feb 22, 2022
@q0w q0w marked this pull request as ready for review February 22, 2022 17:04
@q0w q0w marked this pull request as draft February 22, 2022 20:18
@q0w q0w requested a review from pradyunsg February 22, 2022 21:13
@q0w q0w mentioned this pull request Feb 25, 2022
@pradyunsg
Copy link
Member

@q0w I appreciate the work you're putting toward this but could you clarify what implementation approach you're taking here? It looks like you've basically copied over code from packaging.tags after I mentioned that it's a no-go to use packaging.tag's internals -- both are equally bad and I'm not sure how you're expecting this PR to behave.

@q0w

This comment was marked as resolved.

@q0w q0w force-pushed the pep600 branch 3 times, most recently from 8088326 to 106692f Compare February 28, 2022 01:42
@q0w

This comment was marked as resolved.

@q0w q0w marked this pull request as ready for review March 23, 2022 09:49
Copy link
Member

@uranusjr uranusjr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Logic looks right to me, although the news fragment definitely needs to better describe what users should expect from this change. Also the implementation can be slightly improved, I think.

src/pip/_internal/utils/packaging.py Outdated Show resolved Hide resolved
@q0w q0w changed the title Handle compatible glibc-based manylinux/musllinux platform tags Handle compatible libc-based manylinux/musllinux platform tags Apr 24, 2022
@pradyunsg
Copy link
Member

An alternative to this is to go the route of requiring users to specify the entire environment: #10050 (comment)

@ofek
Copy link
Contributor

ofek commented Apr 25, 2023

Is there anything blocking this from being merged?

@uranusjr
Copy link
Member

Personally I think this needs some better text explaining the scope of the feature, likely somewhere in documentation.

@q0w
Copy link
Contributor Author

q0w commented Jul 16, 2023

I am not good at writing docs, so if someone wants to collaborate, ping me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

pip doesn't handle PEP600 compatible manylinux wheels when --platform is specified.
4 participants