From 44078d23a477a0bb09b8791dd3de00ca73c526c0 Mon Sep 17 00:00:00 2001 From: Adrian Holovaty Date: Sat, 14 Oct 2006 17:04:25 +0000 Subject: [PATCH] Fixed #2888 -- Updated ez_setup.py. Setuptools and ez_setup.py suck. git-svn-id: http://code.djangoproject.com/svn/django/trunk@3903 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- ez_setup.py | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/ez_setup.py b/ez_setup.py index 33675107b2..3031ad0d11 100644 --- a/ez_setup.py +++ b/ez_setup.py @@ -14,7 +14,7 @@ the appropriate options to ``use_setuptools()``. This file can also be run as a script to install or upgrade setuptools. """ import sys -DEFAULT_VERSION = "0.6c1" +DEFAULT_VERSION = "0.6c3" DEFAULT_URL = "http://cheeseshop.python.org/packages/%s/s/setuptools/" % sys.version[:3] md5_data = { @@ -28,6 +28,11 @@ md5_data = { 'setuptools-0.6b4-py2.4.egg': '4cb2a185d228dacffb2d17f103b3b1c4', 'setuptools-0.6c1-py2.3.egg': 'b3f2b5539d65cb7f74ad79127f1a908c', 'setuptools-0.6c1-py2.4.egg': 'b45adeda0667d2d2ffe14009364f2a4b', + 'setuptools-0.6c2-py2.3.egg': 'f0064bf6aa2b7d0f3ba0b43f20817c27', + 'setuptools-0.6c2-py2.4.egg': '616192eec35f47e8ea16cd6a122b7277', + 'setuptools-0.6c3-py2.3.egg': 'f181fa125dfe85a259c9cd6f1d7b78fa', + 'setuptools-0.6c3-py2.4.egg': 'e0ed74682c998bfb73bf803a50e7b71e', + 'setuptools-0.6c3-py2.5.egg': 'abef16fdd61955514841c7c6bd98965e', } import sys, os @@ -77,13 +82,13 @@ def use_setuptools( try: pkg_resources.require("setuptools>="+version) - except pkg_resources.VersionConflict: + except pkg_resources.VersionConflict, e: # XXX could we install in a subprocess here? print >>sys.stderr, ( "The required version of setuptools (>=%s) is not available, and\n" "can't be installed while this script is running. Please install\n" - " a more recent version first." - ) % version + " a more recent version first.\n\n(Currently using %r)" + ) % (version, e.args[0]) sys.exit(2) def download_setuptools( @@ -139,15 +144,15 @@ def main(argv, version=DEFAULT_VERSION): try: import setuptools except ImportError: - import tempfile, shutil - tmpdir = tempfile.mkdtemp(prefix="easy_install-") + egg = None try: - egg = download_setuptools(version, to_dir=tmpdir, delay=0) + egg = download_setuptools(version, delay=0) sys.path.insert(0,egg) from setuptools.command.easy_install import main return main(list(argv)+[egg]) # we're done here finally: - shutil.rmtree(tmpdir) + if egg and os.path.exists(egg): + os.unlink(egg) else: if setuptools.__version__ == '0.0.1': # tell the user to uninstall obsolete version