Unfortunately, we cannot entirely remove setup.py since the PE517 does not support editable installations, and in any case I couldn't find any alternative of specifying build extensions like we need to compile the CMake project. However, we can move most of the content to setup.cfg.
There are different advantages:
This seems the most recent trend in regular Python packaging
It is compatible with the most recent PEPs
If other tools are used, like tox/green/flake/mypy, their configuration is stored in the same config.cfg
Recently, in the python packaging world, after PEP517 and PEP518 (what they are), also setup.cfg-only projects became a thing. This is also known as minimal
setup.py
.Unfortunately, we cannot entirely remove
setup.py
since the PE517 does not support editable installations, and in any case I couldn't find any alternative of specifying build extensions like we need to compile the CMake project. However, we can move most of the content tosetup.cfg
.There are different advantages:
config.cfg
Here below the official documentation and some example from which we can get check their implementation: