[Distutils] PEP439 and backward compat / easy_install / distlib

Erik Bray erik.m.bray at gmail.com
Tue Mar 26 16:54:30 CET 2013


On Tue, Mar 26, 2013 at 11:21 AM, Tres Seaver <tseaver at palladion.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 03/26/2013 05:28 AM, Ronald Oussoren wrote:
>>
>> On 25 Mar, 2013, at 19:16, PJ Eby <pje at telecommunity.com> wrote:
>>>
>>>
>>> Also, as far as detecting the need for setuptools, I think that can
>>> be done just by noticing whether the PKG-INFO included in an sdist
>>> is metadata 2.0 or not.  If it is, then setuptools should be
>>> explicitly declared as a build-time dependency, otherwise it's not
>>> needed.  If it's an older metadata version, then you probably need
>>> setuptools.
>>
>> Is it even necessary to automaticly install setuptools?
>> Setuptools-using package are supposed to use  ez_setup.py, or
>> distribute_setup.py for distribute, to ensure that the setuptools
>> package is available during setup.
>
> No, they are not.  That usage was for bootstrapping in an era when
> setuptools was not widely presetn.  Most packages have *removed* those
> files today.

I still use distribute_setup.py very regularly.  I'm dealing with
scientific users, mostly on Macs or Windows who barely even know what
version of Python they have installed (or even what distribution of
Python--python.org/macports/homebrew/etc.) much less that they need
some variant of setuptools to install a large percentage of packages
out there.  Sometimes they do have setuptools installed but it's an
outdated version, or they didn't install it properly, or something to
that effect.

I don't think "downloading the installer" should be a side effect of
running the installation either, but until this mess is cleaned up
it's a necessary evil.  Yes, making things easier for users who don't
know what they're doing is a legitimate use case.

Erik


More information about the Distutils-SIG mailing list