Why you shouldn't invoke setup.py directly
setuptoolsteam no longer wants to be in the business of providing a command line interface and is actively working to become just a library for building packages. What you should do instead depends on your use case, but if you want some basic rules of thumb, there is a table in the summary section.
This does not mean that
setuptoolsitself is deprecated, or that using
setup.pyto configure your package builds is going to be removed. The only thing you must stop doing is directly executing the
setup.pyfile — instead delegate that to purpose-built or standards-based tools, preferably those that work with any build backend.
Source: Why you shouldn't invoke setup.py directly, an article by Paul Ganssle.