raimon49 / pip-licenses

Dump the license list of packages installed with pip.
MIT License
298 stars 42 forks source link

Use `pyproject.toml` instead of `setup.cfg` and `setup.py` #201

Closed mbalatsko closed 1 week ago

mbalatsko commented 3 weeks ago

I suggest upgrading the project structure to a more modern python package format using pyproject.toml. I could gladly get it done, if you agree @raimon49. But I wanted to clarify some things first:

stefan6419846 commented 3 weeks ago

pip-tools, where pip-compile is part of, is just used for having a known set of fixed versions. The packaging backend already is setuptools and the versions are not really fixed inside the configuration file (although I am not sure why pytest-runner would be required for building the package itself): https://github.com/raimon49/pip-licenses/blob/b3a3d8739e2b725e39d142283d66d0c5f320b3d4/setup.cfg#L27-L37

raimon49 commented 3 weeks ago

Thanks for the suggestion, I also worked on another project to migrate to pyproject.toml but stopped halfway. At that time, I selected setuptools>=61.0, build_meta as build-backend.

The main toolchain used in this project is as commented by @stefan6419846 . I know that tools like Pipenv and Poetry have appeared, but I am still using pip-tools+venv. The Makefile for this project describes the main tasks for the release.

In moving to pyproject.toml, I have no problem if metadata such as version, author, classifiers are written only in pyproject.toml.