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

use packaging.tags instead of pep425tags? #345

Closed
mattip opened this issue Mar 20, 2020 · 8 comments · Fixed by #346
Closed

use packaging.tags instead of pep425tags? #345

mattip opened this issue Mar 20, 2020 · 8 comments · Fixed by #346

Comments

@mattip
Copy link
Contributor

mattip commented Mar 20, 2020

pip has moved to using the pypa/packaging package instead of pep425tags.py. Is there interest in moving wheel to use that as well? Should it be vendored or listed as a dependent package? I think a dependent package would be better, since it should be safe to assume a working pip exists when wheel is installed.

I am particularly interested in improving PEP 600 support for manlinux_X_Y wheels, see pypa/packaging#280, pypa/manylinux#494

Edit: fix link

@agronholm
Copy link
Contributor

The PEP 425 support in packaging does not work very well for wheel: see this comment of mine. Feel free to draft a PR if you feel it will improve the code though.

@pradyunsg
Copy link
Member

@agronholm could you elaborate on how packaging.tags is not sufficient for wheel's use case?

It's worth noting that it has seen some significant API enhancements in the time for the pip 20.0 release cycle.

I'm fairly certain that @brettcannon and I would be happy to work (possibly now, possibly at a later date) with you to figure out how we can make it possible for wheel to use packaging.tags.

@mattip
Copy link
Contributor Author

mattip commented Mar 20, 2020

@pradyunsg xref gh-346 where I called out the methods from pep425tags that need to be replaced.

@mattip
Copy link
Contributor Author

mattip commented Mar 20, 2020

@agronholm I think that comment is helped by updating setuptools and pip. As for the old PyPy tags ( pp373 rather than pp36 ), either someone will add backward compatibility or we will continue on the path of "only use pp36", since that is the future.

@brettcannon
Copy link
Member

Yep, I would be happy to help and work with @pradyunsg to fill in any identifiable gaps so the community as a whole can have a single place to manage tag-related code.

@agronholm
Copy link
Contributor

@agronholm could you elaborate on how packaging.tags is not sufficient for wheel's use case?

Seems like @mattip has already figured out what the issues are while working on the PR.
What I'm still unsure of is whether wheel can add packaging as a dependency or if it needs to vendor it.

@mattip
Copy link
Contributor Author

mattip commented Mar 21, 2020

Since the existing dependency on setuptools via pkg_resources requires a working pip, maybe a dependency on packaging is ok. That would also allow projects to update to a newer packaging without needing a new wheel release.

@agronholm
Copy link
Contributor

I feel the same way, so as long as nobody comes up with any reasonable objections to that, I'm okay with adding the dependency.

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

Successfully merging a pull request may close this issue.

4 participants