At 11:00 AM 9/21/2006 +1000, John Machin wrote:
>On 21/09/2006 10:04 AM, Phillip J. Eby wrote:
>>At 03:07 PM 9/16/2006 +1000, John Machin wrote:
>>>I tried to use 2.5c1 to run ez_setup.py; it looked in the cheeseshop, 
>>>but terminated rather ungracefully with an HTTP 404 error.
>>0.6c3 is in the Cheeseshop now, with support for Python 2.5.
>
>Thanks, Phillip. I've got it now, but needed to get over another hurdle, 
>which was that ez_setup.py contains hard-coded egg names and md5 
>checksums, and thus seems to need to be fetched (manually, not exactly 
>"ez") from your website each time the world changes.
>
>Using the old version of ez_setup (which I had used successfully to get 
>setuptools for python 2.4 & 2.3), the command
>     \python25\python ez_setup.py
>gave HTTP error 404.
>
>Shouldn't it just find the latest 2.5-compatible egg in the Cheeseshop?

That would be nice.  However, it's actually getting to the point where we 
should probably just distribute RPMs, bdist_wininst, and other installers 
for the thing.  I am tempted, however, to make ez_setup.py a little smarter 
in future.

Unfortunately, the smarter it gets, the more it doesn't know.  That is, the 
more sophisticated that ez_setup.py gets, the more things that can go wrong.

Thus, I'm more inclined to make it *dumber* in future, not smarter.  On 
Unix platforms, with Python 2.4 and up, one could do something like:

     PYTHONPATH=setuptools*.egg python -m easy_install -a setuptools*.egg

And it would self-install.  So, under 2.4+ and Mac/Linux/etc., there'd be 
no need for ez_setup.py.  For Windows, I could go back to distributing a 
bdist_wininst version.  For Python 2.3 on Unix, alas, a more eclectic 
initial command is required:

     PYTHONPATH=setuptools*.egg python -c "from easy_install import main; 
main()" -a setuptools*.egg

And that would be the end of ez_setup.py for normal users.  And the 
ez_setup that gets bundled with setuptools-based packages could just tell 
the user to go download the egg or .exe from the CheeseShop.

Hmm.  You know, I could probably stick a little /bin/sh script on the front 
of the eggs to allow them to be run from Unix, almost as if they were shell 
archives.  You would just run something like:

      sh setuptools-0.6c4-py2.3.egg

in order to install it on Unix.  Then, I'd effectively have a universal 
installer for non-Windows platforms, and an .exe installer for Windows.  (I 
could also start releasing source RPMs for setuptools as well.)  And 
ez_setup.py would go back to being a packager-only tool.

This would be a lot of documentation change, but it might well be worth it.


>Shouldn't it be a little more helpful than "404" if it can't find a 
>suitable egg?

Patches are welcome, unless I first rip out ez_setup.py altogether in a fit 
of pique.  :)

_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to