On Jul 12, 2013, at 4:35 AM, Vinay Sajip <vinay_sajip@yahoo.co.uk> wrote:

The current situation, as I see it, is a transitional one. When distlib-like
functionality becomes available in the stdlib, other approaches will be
possible, which improve upon what's possible with setuptools and pip. I've
demonstrated some of this using distil. When targeting Python 3.4, shouldn't
we be looking further than just advancing the status quo a little bit?

It's been said numerous times that "executable setup.py" must go. ISTM that,
notwithstanding "practicality beats purity", a pip bootstrap in Python
would bless executable setup.py and help to extend its lifespan.

There's very little reason why a pip bootstrap script couldn't unpack a wheel instead of using setup.py. Infact I've advocated for this and plan on contributing a bare bones wheel installation routine that would work well enough to get pip and setuptools installed.

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/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.

Donald Stufft
PGP: 0x6E3CBCE93372DCFA // 7C6B 7C5D 5E2B 6356 A926 F04F 6E3C BCE9 3372 DCFA