On Mon, Aug 28, 2017, at 08:20 PM, Paul Moore wrote:
Maybe we go fully to Nick's proposal that we don't mandate any sort of
consistency constraints in the PEP. That would mean pip *has* to go
sdist->wheel (because pip does need consistent behaviour), and
xoviat's setuptools backend can skip building a sdist on the way to
building a wheel. It also means that the build_wheel hook is
essentially unreliable in isolation, and that all frontends will
likely have to do the build_sdist->build_wheel with fallback to
inplace build_wheel dance that pip does. But we expect many less
frontends than backends, so maybe that's the right trade-off?
I've mentioned this before, but I have little faith in our ability to
predict that one side of an interface will be far more numerous than the
other. This is partly from my experience with Jupyter, where we got that
prediction completely wrong. But I also think it's quite plausible that
many frontend tools will want to use this interface (to argue against
myself, most will be Python tools, so they could theoretically share a
common wrapper module - but I have some doubts about whether they will).
I'm not saying we shouldn't do this - as Donald is firmly in favour and
you're wavering, it seems the easier option to wrap the discussion up.
But I'm suspicious of the rationale that *there will be fewer frontends
so they should have more responsibility*.