-
Notifications
You must be signed in to change notification settings - Fork 98
Move to a setuptools declarative syntax #136
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
base: master
Are you sure you want to change the base?
Conversation
Is this taken into considerations?
Placement for metadata is entirely esthetic, while this change may cause unforeseen complications. |
setuptools vendors its dependency, they aren't installed through traditional tools such as PyPI. So, IMO, the comment in
It is not simply an aesthetic choice. Using setup.cfg:
Do you have something in mind? I suppose any change ever could cause unforeseen complications, they are unforeseen after all. If you have something in mind, or even a hunch, I can take a deeper look. |
I was trying to say that as commented, appdirs should not be dependent on setuptools. I have not investigated any further on how setuptools installs appdirs without
and that's some of the unforeseen complication. I guess it would not be a problem for most cases to add setuptools as build dependency, but that's just pure guessing. I believe appdirs is made to be as portable as possible, and the current build is not broken, so naturally I'm against any uncertainty of a change.
I'd refer to these as (favorable) esthetic, aside from custom code execution, which may have something to do with portability and security. Actually as suggested by PEP 517 and 518, futuristically pure Python packages should drop Note that the above are just my opinions, I'm just a downstream user of this package. |
Introduced in setuptools 30.3.0 (8 Dec 2016). https://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files The declarative syntax removes the need to execute custom code during setup.py. Reduces setup.py boilerplate and opens the ability to modify the metadata using scripts.
@@ -1,58 +1,4 @@ | |||
#!/usr/bin/env python | |||
import os | |||
# appdirs is a dependency of setuptools, so allow installing without it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I should remind that distutils is deprecated, so moving to Setuptools exclusively (or possibly another backend) is eventually required. I'd recommend to do it now.
Introduced in setuptools 30.3.0 (8 Dec 2016).
https://setuptools.readthedocs.io/en/latest/setuptools.html#configuring-setup-using-setup-cfg-files
The declarative syntax removes the need to execute custom code during
setup.py. Reduces setup.py boilerplate and opens the ability to modify
the metadata using scripts.