[Distutils] patch: ez_setup.py: separate default version and minimum version of setuptools

zooko zooko at zooko.com
Sat Sep 29 00:46:27 CEST 2007

>> Agreed.  So in order to automatically satisfy our dependency on
>> simplejson using simplejson's source tarballs, we can either ask Bob
>> Ippolito (the author and packager of simplejson) to please switch to
>> the patched version of ez_setup.py and pass min_version="0.6a9" to
>> it, or else we can ask him to please set his version="0.6a9" and
>> start hosting setuptools 0.6a9 eggs for his users.


> So bear in mind that since it's already *possible* to do this, it's  
> unlikely I'll accept a patch that makes it *easy* for people to  
> keep using outdated alphas.  :)

Oh yes, we too prefer for our users to use newer versions of  
setuptools.  I sympathize with your motivation.  :-)

Actually I think this patch makes it easier in some cases for people  
to gracefully upgrade to newer versions of setuptools.

Consider our case: we are required to service users of Ubuntu dapper  
and to do so without requiring them to first upgrade their version of  
setuptools.  If we use standard ez_setup.py, then what happens is  
that all of our users (not just the Ubuntu dapper using ones) get  
setuptools v0.6a9 installed.  Eventually, our users will upgrade from  
Ubuntu dapper to a newer Ubuntu, and they will upgrade their version  
of setuptools when they upgrade their operating system, but our other  
users -- the ones whose version of setuptools is automatically  
installed by our ez_setup.py script -- will be stuck with v0.6a9.

So in order to support our dapper users while also installing a newer  
version of setuptools for non-dapper-users, we patched our  
ez_setup.py.  Now dapper users proceed as normal, but all our other  
users get setuptools v0.6c7 installed.

This is already good enough for us -- we don't mind maintaining a  
slightly different version of ez_setup.py than the official one.  The  
reason why this patch going into the official ez_setup.py would help  
us is that if packages like simplejson used it (and allowed a  
sufficiently old version of setuptools) then we could add simplejson  
to the list of dependencies that are automatically satisfied by  
setuptools even while satisfying the above-mentioned policies.

By the way, I'm separately submitting a patch which, if it can be  
made to work, might allow us to automatically upgrade people to newer  
versions of setuptools when they follow our installation procedure.



More information about the Distutils-SIG mailing list