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

chore: drop universal wheel #1832

Closed
wants to merge 1 commit into from
Closed

Conversation

henryiii
Copy link

@henryiii henryiii commented Mar 9, 2021

Pre-commit does not support Python 2 anymore (python_requires = >=3.6.1), so it does not need universal wheels activated, which produce py3.py2 in the wheel name instead of py3.

You can see the "Universal" naming here: https://pypi.org/project/pre-commit/#files

Pre-commit does not support Python 2 anymore, so it does not need universal wheels activated, which produce `py3.py2` in the wheel name instead of `py3`.
@asottile
Copy link
Member

asottile commented Mar 9, 2021

there's a dupe somewhere -- universal just means "pure python"

general word of advice: don't touch infrastructure or tooling for a project you don't maintain unless prompted by an issue asking explicitly to do so

@asottile asottile closed this Mar 9, 2021
@henryiii
Copy link
Author

henryiii commented Mar 9, 2021

No it does not. See pypa/setuptools#1974 when Setuptools 45.1 dropped universal=True from setuptools itself pypa/setuptools#1978. Setuptools can tell if a project is pure Python; the universal=1 added py2.py3 tag.

If I see something explicitly wrong, I generally immediately make a PR. I looked for a dupe PR, but not a dupe Issue.

@henryiii
Copy link
Author

henryiii commented Mar 9, 2021

I do not see an Issue discussing this either.

@henryiii
Copy link
Author

henryiii commented Mar 9, 2021

Though I probably should have opened an issue, since you might have tooling somewhere else where this needs to be updated instead or added as a feature to setup-cfg-fmt or something. :)

@henryiii
Copy link
Author

henryiii commented Mar 9, 2021

You will also notice that after setuptools 45 dropped Python 2 support all mention of the universal setting was excised from the documentation. If you don't have an Extension, it's pure Python, if you do, it's not. Universal was there just to activate Python 2 + Python 3 support, since it couldn't tell that without help (it predates python_requires).

@layday
Copy link

layday commented Mar 10, 2021

The wheel documentation describes 'universal' as 'Python 2/3 compatible, pure Python' (https://github.com/pypa/wheel/blob/2e90eef2e52dab03cff1f71bcb8931ce141e320d/docs/quickstart.rst), the news entry from 2012 introducing 'universal' says, 'universal=1 will apply the py2.py3-none-any tag for pure python wheels' (https://github.com/pypa/wheel/blob/a6fa4839ba1c74a37cb43eefb959c0766594ec63/docs/news.rst) and the only thing the 'universal' tests actually test is that only one wheel is produced with the 'py2.py3' compatibility tag (https://github.com/pypa/wheel/blob/2e90eef2e52dab03cff1f71bcb8931ce141e320d/tests/test_tagopt.py#L86).

I also don't see how this apparent hostility is at all warranted against a contribution made in good faith.

@pre-commit pre-commit locked as resolved and limited conversation to collaborators Mar 10, 2021
@asottile
Copy link
Member

no hostility, just the crusade to remove this flag is not correct and I closed this change because it is not welcome here

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

Successfully merging this pull request may close these issues.

3 participants