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