[Distutils] Comments on PEP 426

Nick Coghlan ncoghlan at gmail.com
Fri Aug 30 01:08:23 CEST 2013

On 30 Aug 2013 03:31, "Oscar Benjamin" <oscar.j.benjamin at gmail.com> wrote:
> On 29 August 2013 18:11, Daniel Holth <dholth at gmail.com> wrote:
> > It probably makes sense for some version of bdist_wheel to be merged
> > into setuptools eventually. In that system pip would document which
> > setup.py commands and arguments it uses and a non-distutils-derived
> > setup.py would have to implement a minimal set of commands to
> > interoperate. This is basically where we are today minus the "minimal"
> > and "documented" details.
> >
> > The alternative, not mutually exclusive solution would be to define a
> > Python-level detect/build plugin system for pip  which would call a
> > few methods to generate an installable from a source distribution.
> >
> > It doesn't exist yet mostly because the pip developers haven't written
> > enough alternative build systems. There is no strategic reason for the
> > delay.
> I thought that the list in the PEP seemed reasonable:
> python setup.py dist_info
> python setup.py sdist
> python setup.py build_ext --inplace
> python setup.py test
> python setup.py bdist_wheel
> Most projects already have a setup.py that can do these things with
> the exception of bdist_wheel. The only ambiguity is that it's not
> clear whether the expectation is *exactly* those invocations or
> whether any other command line options etc. would be needed.
> Can it not simply be documented that these are the commands needed by
> current packaging tools (and return codes, expected behaviour, ...) to
> fit with the current bleeding edge infrastructure?
> I would have thought that that would be good enough as a stop-gap
> while a better non-setup.py solution awaits.

Right, that's the status quo, and even if we define a plugin system to make
setup.py optional, this will still be the backwards compatible fallback.

Originally I had planned to postpone specifying this properly to something
post metadata 2.0, but talking to Fedora and Debian folks changed my mind -
for reliable rebuilding from source on trusted build servers, this needs to
be pulled out of PEP 426 into a separate PEP and at least the required
command line options need to be documented. Volunteers welcome, otherwise
I'll eventually get to it myself :)

We also need to officially bless pip's trick of forcing the use of
setuptools for distutils based setup.py files.


> Oscar
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> http://mail.python.org/mailman/listinfo/distutils-sig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20130830/fd29149d/attachment.html>

More information about the Distutils-SIG mailing list