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

setup.py: Add metadata, including python_requires 2.7 #2764

Merged
merged 1 commit into from Oct 10, 2021
Merged

Conversation

illume
Copy link
Member

@illume illume commented Oct 10, 2021

@takluyver made a good point in #2326 about python_requires.

Took the opportunity to add a few more things, looking at the pillow and numpy setup.py meta data.

@illume illume requested a review from Starbuck5 October 10, 2021 06:59
Copy link
Contributor

@ankith26 ankith26 left a comment

Choose a reason for hiding this comment

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

LGTM, apart from the minor nitipick review

"Twitter": "https://twitter.com/pygame_org",
},
"classifiers": [
"Development Status :: 6 - Mature",
Copy link
Contributor

Choose a reason for hiding this comment

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

Minor nitpicky review. Maybe pygame is at developmental status 5? While pygame is fairly mature I agree, a development status 6, "Mature", indicates that a library is very mature, that there will be almost no change in the API at all, which is not the case with pygame, I imagine. Because we have stuff like _sdl2 which is still in development, and will one day become part of stable API

Copy link
Member Author

Choose a reason for hiding this comment

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

Not sure it means things won't be added. There's no definition I could find however.

Copy link
Contributor

Choose a reason for hiding this comment

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

On PyPI, only ~700 products have marked themselves mature, whereas ~10k+ are marked dev status 5.

Plus, I think mature implies nearly all development effort goes into maintenance, which is not the case for us.

Copy link
Member Author

Choose a reason for hiding this comment

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

numpy, and pillow are similar and marked as mature

Copy link
Member Author

Choose a reason for hiding this comment

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

Let's discuss the classifiers later. Mainly python_requires is important

Copy link
Contributor

Choose a reason for hiding this comment

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

Alright. But can we take it out for now, since we can't agree on it?

Copy link
Member

Choose a reason for hiding this comment

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

I personally never use the 'development status' classifiers, partly because I'm not sure there's any value in trying to rigidly categorise something that subjective, and partly because I know I'll forget to update them. Though the latter objection doesn't apply if you're starting at 'mature'. 😃

@illume
Copy link
Member Author

illume commented Oct 10, 2021

@illume
Copy link
Member Author

illume commented Oct 10, 2021

Seems the doc here [0] says to use something like:
"python_requires": '>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',

https://packaging.python.org/guides/distributing-packages-using-setuptools/#python-requires

So I changed it to that.

@illume illume force-pushed the meta-data branch 2 times, most recently from f7fd648 to 969ba71 Compare October 10, 2021 07:15
@illume
Copy link
Member Author

illume commented Oct 10, 2021

$ twine check dist/pygame-2.0.2.dev3.tar.gz 
Checking dist/pygame-2.0.2.dev3.tar.gz: PASSED

@illume illume merged commit 6894f55 into main Oct 10, 2021
@illume illume deleted the meta-data branch October 10, 2021 07:49
@takluyver
Copy link
Member

Yes, unfortunately there's no concise syntax (as far as I know) for '2.7 or 3.5 and above'. The version restrictions are effectively AND-ed together. So you have to say '2.7 or above, but not 3.0, 3.1, 3.2, 3.4'. Obviously this gets much cleaner when you drop Python 2.7.

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 this pull request may close these issues.

None yet

4 participants