[Distutils] Time for a setuptools_lite??

Donald Stufft donald at stufft.io
Wed Oct 21 18:23:15 EDT 2015


On October 21, 2015 at 6:15:50 PM, Daniel Holth (dholth at gmail.com) wrote:
> On Wed, Oct 21, 2015 at 5:52 PM David Cournapeau wrote:
>  
> > On Wed, Oct 21, 2015 at 10:25 PM, Antoine Pitrou  
> > wrote:
> >
> >> On Wed, 21 Oct 2015 21:41:35 +0100
> >> Paul Moore wrote:
> >> > On 21 October 2015 at 20:41, Chris Barker  
> >> wrote:
> >> > > As I understand it, the current "API" that pip knows about is:
> >> > >
> >> > > "some subset of what setuptools provides"
> >> > >
> >> > > So my proposal is here is to provide a way for users to easily use
> >> jsut that
> >> > > subset.
> >> >
> >> >
> >> https://pip.pypa.io/en/stable/reference/pip_install/#build-system-interface  
> >> >
> >> > All you need to do is write a setup.py, which can do *anything you
> >> > like*,
> >>
> >> Reading this, the CLI options which have to be implemented are
> >> completely tied to setuptools' own view of the world.
> >> `--single-version-externally-managed`? `--install-headers`? Why should
> >> a random build system care about that gunk? What should it do with it?
> >>
> >
> > I agree it is not ideal, but it is not *that* hard. Regarding
> > `--single-version-externally-managed`, if you don't care about setuptools
> > interoperability, I believe it is safe to just ignore the flag (or more
> > exactly do like what distutils does, that is installed directly in
> > site-packages, and make `--single-version-externally-managed` a no-op).
> > install_headers, I am not sure how many projects depend on that. The only
> > projects I know that install headers (numpy, etc...) are not using the
> > setuptools mechanism.
> >
> > If that's deemed useful, I could write a simple implementation that does
> > not use distutils/setuptools but support that interface as an example (I
> > have something similar enough times that I unfortunately know the ropes :) )
> >
>  
> Also, it's no longer necessary to implement 'setup.py install' at all; you
> can just implement bdist_wheel and pip will go from there.
>  

Well, it is if you want it to work with older pips or pip when wheel isn’t also installed.

-----------------
Donald Stufft
PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA




More information about the Distutils-SIG mailing list