[Distutils] setup_requires for dev environments

Paul Moore p.f.moore at gmail.com
Thu Mar 19 17:56:58 CET 2015


On 19 March 2015 at 16:46, Chris Barker <chris.barker at noaa.gov> wrote:
> I guess I have no idea if there was a big problem with the architecture of
> setuptools requiring a big shift -- all I see are problems with the API and
> feature set.....and by definition you can't change those and be backward
> compatible...

The ideal situation (at least in my mind) is to define a clear and
straightforward command line API that pip uses to interface with the
build system. So basically if we say that all pip needs to work is
"python setup.py build" or whatever, then people can write any
setup.py they like, use distutils, setuptools, bento, or even just a
custom script.

The hard bit is being completely clear on what the setup.py invocation
is required to *do*. At the moment, it's "whatever
setuptools/distutils does", which is why we end up relying on all
sorts of obscure setuptools behaviours.

> That slog is MUCH longer and harder if you need to keep backward
> compatibility though.
>
> But I suppose the alternative is to build something no one uses!
>
> Is there any move to have a deprecation process for setuptools features?

I have no idea, unfortunately. Setuptools has its own goals and plans,
that I don't particularly follow. I get the impression that
maintaining existing behaviour is a fairly high priority, though -
there are a *lot* of projects that use all sorts of obscure parts of
setuptools, so backward compatibility is probably pretty vital to
them.

Paul


More information about the Distutils-SIG mailing list