[Distutils] please fix easy_install shorter URL preference (Was: easy_install wrong download site preference)

P.J. Eby pje at telecommunity.com
Sun Sep 12 20:08:45 CEST 2010


At 12:08 PM 9/12/2010 +0300, anatoly techtonik wrote:

>https://sourceforge.net/apps/trac/halfcooked/ticket/29
>
>Gerald is the second package from the last 4 months that I couldn't
>install due to this very obscure behavior, and I suspect there are
>more.

Gerald installs fine when I try it, and from the same URL (which 
isn't the shortest in any case).  I suspect you are not using the 
current version of easy_install, as the problem shown is due to 
Sourceforge's use of '/download' URLs.

That issue was fixed in October 2009, so you are likely using 
something <0.6c11.

(Or perhaps you are using distribute, which has still not applied 
this bug fix almost a year later.)


>Phillip, could you, please, still run through your archives to success
>in explaining why this logic of choosing a shorter download URL is
>necessary? I'd really to see what packages benefit from it,

It was originally added for PIL and other effbot-released packages; 
it's retained because to change it now would introduce random 
breakages to other projects, in order to benefit one whose source 
filenames are ambiguous anyway.


>I believe Google protocol buffers popularity alone is enough to change
>the behavior.

Right now, the naming of the two source distributions is ambiguous, 
even for humans.

Note, however, that since the full source distribution *also* 
includes the python code, all that's needed is to change its setup.py 
slightly and move it to the root of the source tree.

(The changes needed would consist of adding 
'package_dir={"":"python"}' to the setup() options, and changing 
relative path uses in the setup.py so that they don't assume the 
current directory is the 'python' subtree...  i.e., mainly just 
changing all '../src' occurrences to 'src'.)

In the alternative, calling the release that contains all languages 
'protobuf-all-2.3.0.*' rather than 'protobuf' would also fix the issue.




More information about the Distutils-SIG mailing list