-
Notifications
You must be signed in to change notification settings - Fork 35
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
Migrate to use pyproject.toml
for project specification
#75
Comments
I don't quite feel ready to remove setup.py, yet. I'll have to get a little more comfortable with this new setup before I merge. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
While
setup.py
has been the traditional approach for packaging and distributing Python projects,pyproject.toml
offers a more modern, tool-agnostic and standardized solution that addresses many of the limitations and complexities associated withsetup.py
. It is the currently recommended approach since PEP518, and offers a number of advantages over the previoussetup.py
approach:pyproject.toml
to better integrate with virtual environments, ensuring that packages are installed and managed correctly within isolated environmentspyproject.toml
is designed to be forward-compatible with future changes in Python packaging standards. By adopting it, projects can ensure compatibility with upcoming tools and best practices in the Python packaging ecosystem.pyproject.toml
separates build configuration from package metadata and installation logic, which can lead to cleaner and more maintainable project structures. This allows developers to focus on project-specific details insetup.py
while relying onpyproject.toml
for build configuration.Adoption of
pyproject.toml
does not mean thatsetuptools
cannot be used, and the project can be configured to continue to usesetuptools
as the build backend for the project. See https://packaging.python.org/en/latest/guides/modernize-setup-py-project/ for more info.The text was updated successfully, but these errors were encountered: