[Distutils] PEP 439 and pip bootstrap updated
vinay_sajip at yahoo.co.uk
Fri Jul 12 18:16:49 CEST 2013
Donald Stufft <donald <at> stufft.io> writes:
> I'm also against adding distlib-like functionality to the stdlib. At least at
> this point in time. We've seen the far reaching effects that adding a
> packaging lib directly to the stdlib can have. I don't want to see us repeat
> the mistakes of the past and add distlib into the stdlib. Maybe in time once
> the packaging world isn't evolving so rapidly and distlib has had a lot of
> real world use that can be an option. The benefit for me in the way the pip/
On the question of whether distlib should or shouldn't be added to the stdlib,
obviously that's for others to decide. My belief is that infrastructure areas
like this need *some* stdlib underpinning. Also, distlib is pretty low-level,
at the level of mechanism rather than policy, so there's no reason to be too
paranoid about it in general terms. There's also some element of chicken
and egg - inertia being what it is, I wouldn't expect *any* new packaging
software outside the stdlib to gain significant adoption at any reasonable rate
while the status quo is good enough for many people. But the status quo doesn't
seem to allow any room for innovation.
Distil is completely self-contained and does not require distlib to be in the
stdlib, but it already does what could reasonably have been expected of
packaging (if it had got into 3.3) and then some. What's more, it doesn't
require installing into every venv - one copy covers all venvs (2.6+), user
site-packages and system site-packages.
> setuptools bootstrap is handled is that it's not merely imported into the
> stdlib and called done. It'll fetch the latest pip during each bootstrap,
> making it not a point of stagnation like distutils was.
My pyvenvex script does this now. For venvs, that's the bootstrap right there.
Of course, in cases where you want repeatability, getting the latest version
each time might not be what you want :-)
More information about the Distutils-SIG