On 14 July 2017 at 21:23, Donald Stufft <don...@stufft.io> wrote:
> * I think it is a requirement that any PEP that proposes a mechanism for
> removing ``setup.py`` supports sdist and wheel building in it’s interface.
> Otherwise it sends a message that either one is an optional part of Python
> packaging, which is not a message we should be sending.

I agree - although I accept that under certain conditions, certain
backends might fail to produce a sdist (for example flit can't produce
a sdist if the user doesn't have VCS tools installed). I'd rather they
didn't, but that's a quality of implementation issue with the backend,
and not something I think we should mandate.

> * I would *like* to remove a fairly common error case where we have a
> difference in the files that get included in a sdist and the files that get
> installed such that ``pip install .`` causes different files to be installed
> than ``python setup.py sdist && pip install dist/*.tar.gz``.

I agree - for me, this is an important improvement that we can make to
pip, and if the PEP makes it impossible for us to do this I'd be very
reluctant to accept it. We could fall back to building via sdist, but
if sdist creation can fail, that's a problem - so I'd have to rethink
my willingness to accept that build_sdist could fail if we didn't get
support for this.

> * I would *like* to remove another common error case where two subsequent
> builds end up affecting each other (at least by default) because of detritus
> left behind from the first build process. One example I can think of is if
> you have a library that can optionally link against some other library, you
> might ``pip install .``, notice it didn’t link against that (because you
> didn’t have it installed) and then install it and ``pip install .`` again.
> Nothing would have changed in the directory to trigger a rebuild, so you’d
> get the behavior where it wouldn’t rebuild.

I have no real opinion on this one. Or at least, I'm not willing to
get into fights about incremental build support at this time, so I'll
abstain here.

Paul
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to