[Distutils] A possible refactor/streamlining of PEP 517

Thomas Kluyver thomas at kluyver.me.uk
Sat Jul 15 09:45:09 EDT 2017


On Sat, Jul 15, 2017, at 03:28 PM, Nick Coghlan wrote:
> For flit, there are two main cases of interest:
> 
> - publisher development environments
> - building from release tarballs rather than VCS clones
> 
> In the first case, the typical scenario will have both VCS metadata
> *and* VCS tools available, so pip will successfully use the
> sdist->wheel path, and clutter will be avoided in the end result.

I agree that this will typically be true, so long as we remember that
there in a significant minority of cases in which it will not. This
includes Windows developer environments where git is used but not on
PATH, and installing from a directory bind-mounted in a docker
container.

> If flit's build_wheel *also* refuses to run in a "dirty" VCS tree

I'm reluctant for build_wheel to behave differently depending on whether
VCS metadata is available - more code, more confusion, more chances for
things to go wrong. I can see that it would reduce the likelihood of
these kinds of problem, but I suspect that it would increase the
likelihood of other kinds of problem which we haven't even discovered
yet.

Thomas


More information about the Distutils-SIG mailing list