-
Notifications
You must be signed in to change notification settings - Fork 273
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
→ pyproject.toml
#509
Comments
+1, since this is the new standard. |
Just keep in mind this is relatively new. Installing from source requires recent versions of See for example codespell-project/codespell#2523. |
Also, it might not be possible to share the following variables any more, between the setup process and the rest of the code, because setup now relies on a declarative Lines 23 to 30 in c9c5e0b
|
Sure. I don't think we should do the transition now.
Well seen. I guess the new "right way to do" is to declare name, version, author, etc. in |
Indeed, from Package Discovery and Resource Access using pkg_resources:
Also, for those installing from source, having up to date
Therefore, my first remark about the need for recent versions is not considered to be an issue. Yet, my short experience is that the package documentation should remind this to end-users who attempt to install from source. |
And a very long text with a funny introduction:
|
@adrienverge now I started having an annoying warning from pip:
Maybe now it is a good time to transition? If you don't want to do it yourself, maybe I can make a PR. |
I am using |
The downside is that I won't have time for a PR in the short term. |
@DimitriPapadopoulos you don't need.. it is already done #557 |
@adrienverge Can we please make this a reality, it is a share to read:
|
Sure, please see the ongoing discussion at #557. |
Using `setup.py` is deprecated and the new recommanded way is to declare a `pyproject.toml` file (see PEP 517 [^1]). This commit proposes to use setuptools to achieve that, because setuptools is already used by yamllint, is standard and referenced by the official Python packaging documentation [^2], and seems to be the most lightweight solution. An alternative could have been to use Poetry, see the dedicated pull request and discussion [^3]. For some period, the `setup.py` file will be kept (although almost empty), to allow old tools versions to keep working. Closes #509. [^1]: https://peps.python.org/pep-0517/ [^2]: https://packaging.python.org/en/latest/tutorials/installing-packages/ [^3]: #557
Using `setup.py` is deprecated and the new recommanded way is to declare a `pyproject.toml` file (see PEP 517 [^1]). This commit proposes to use setuptools to achieve that, because setuptools is already used by yamllint, is standard and referenced by the official Python packaging documentation [^2], and seems to be the most lightweight solution. An alternative could have been to use Poetry, see the dedicated pull request and discussion [^3]. For some period, the `setup.py` file will be kept (although almost empty), to allow old tools versions to keep working. Closes #509. [^1]: https://peps.python.org/pep-0517/ [^2]: https://packaging.python.org/en/latest/tutorials/installing-packages/ [^3]: #557
Configuring setuptools using
pyproject.toml
filesPlan migration from executable
setup.py
to declarativepyproject.toml
:pyproject.toml
and makesetup.py
a thin wrappersetuptools_scm
to automate versioningNothing urgent here, just a suggestion to modify at some point.
The text was updated successfully, but these errors were encountered: