[Distutils] build system abstraction PEP

Ralf Gommers ralf.gommers at gmail.com
Mon Oct 26 17:32:28 EDT 2015

On Mon, Oct 26, 2015 at 7:01 AM, Robert Collins <robertc at robertcollins.net>

> Since Nathaniel seems busy, I've taken the liberty of drafting a
> narrow PEP based on the conversations that arose from the prior
> discussion.
> It (naturally) has my unique flavor, but builds on the work Nathaniel
> had put together, so I've put his name as a co-author even though he
> hasn't seen a word of it until now :) - all errors and mistakes are
> therefore mine...
> Current draft text in rendered form at:
> https://gist.github.com/rbtcollins/666c12aec869237f7cf7

I have the feeling that I like where this PEP is going, but it's quite
difficult to read. It would be very helpful to add one or two examples.

(1) Super simple example: for a pure Python package with one dependency and
a build tool which has no dependencies itself.

(2) Complex example: to build a Scipy wheel on Windows with MinGW the
command is ``python setup.py config --compiler=mingw32 build
--compiler=mingw32 bdist_wheel``.

I tried to do (1) with flit as the build tool, the pypa.yaml should include:

      - requests
      - docutils
      - requirement:python_version>="3"

So you have to encode flit's dependencies in your pypa.yaml, which will
break as soon as flit grows a new dependency. Or did I misunderstand?

Maybe (2) simply is not possible / out of scope, but I have the feeling
that there'll be a need for users to be able pass stuff (via pip or some
other mechanism) to the build tool. If it is out of scope, I'd be
interested to see what you think are use-cases with complex requirements
that are enabled by this PEP.


> I've run it past Donald and he has a number of concerns - I think
> we'll need to discuss them here, and possibly in another hangout, to
> get a path forward.
> Cheers,
> Rob
> --
> Robert Collins <rbtcollins at hp.com>
> Distinguished Technologist
> HP Converged Cloud
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> https://mail.python.org/mailman/listinfo/distutils-sig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20151026/f3306058/attachment.html>

More information about the Distutils-SIG mailing list