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
This commit is contained in:
parent
fbbbf8b9a1
commit
44078d23a4
21
ez_setup.py
21
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.
|
This file can also be run as a script to install or upgrade setuptools.
|
||||||
"""
|
"""
|
||||||
import sys
|
import sys
|
||||||
DEFAULT_VERSION = "0.6c1"
|
DEFAULT_VERSION = "0.6c3"
|
||||||
DEFAULT_URL = "http://cheeseshop.python.org/packages/%s/s/setuptools/" % sys.version[:3]
|
DEFAULT_URL = "http://cheeseshop.python.org/packages/%s/s/setuptools/" % sys.version[:3]
|
||||||
|
|
||||||
md5_data = {
|
md5_data = {
|
||||||
|
@ -28,6 +28,11 @@ md5_data = {
|
||||||
'setuptools-0.6b4-py2.4.egg': '4cb2a185d228dacffb2d17f103b3b1c4',
|
'setuptools-0.6b4-py2.4.egg': '4cb2a185d228dacffb2d17f103b3b1c4',
|
||||||
'setuptools-0.6c1-py2.3.egg': 'b3f2b5539d65cb7f74ad79127f1a908c',
|
'setuptools-0.6c1-py2.3.egg': 'b3f2b5539d65cb7f74ad79127f1a908c',
|
||||||
'setuptools-0.6c1-py2.4.egg': 'b45adeda0667d2d2ffe14009364f2a4b',
|
'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
|
import sys, os
|
||||||
|
@ -77,13 +82,13 @@ def use_setuptools(
|
||||||
try:
|
try:
|
||||||
pkg_resources.require("setuptools>="+version)
|
pkg_resources.require("setuptools>="+version)
|
||||||
|
|
||||||
except pkg_resources.VersionConflict:
|
except pkg_resources.VersionConflict, e:
|
||||||
# XXX could we install in a subprocess here?
|
# XXX could we install in a subprocess here?
|
||||||
print >>sys.stderr, (
|
print >>sys.stderr, (
|
||||||
"The required version of setuptools (>=%s) is not available, and\n"
|
"The required version of setuptools (>=%s) is not available, and\n"
|
||||||
"can't be installed while this script is running. Please install\n"
|
"can't be installed while this script is running. Please install\n"
|
||||||
" a more recent version first."
|
" a more recent version first.\n\n(Currently using %r)"
|
||||||
) % version
|
) % (version, e.args[0])
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
|
|
||||||
def download_setuptools(
|
def download_setuptools(
|
||||||
|
@ -139,15 +144,15 @@ def main(argv, version=DEFAULT_VERSION):
|
||||||
try:
|
try:
|
||||||
import setuptools
|
import setuptools
|
||||||
except ImportError:
|
except ImportError:
|
||||||
import tempfile, shutil
|
egg = None
|
||||||
tmpdir = tempfile.mkdtemp(prefix="easy_install-")
|
|
||||||
try:
|
try:
|
||||||
egg = download_setuptools(version, to_dir=tmpdir, delay=0)
|
egg = download_setuptools(version, delay=0)
|
||||||
sys.path.insert(0,egg)
|
sys.path.insert(0,egg)
|
||||||
from setuptools.command.easy_install import main
|
from setuptools.command.easy_install import main
|
||||||
return main(list(argv)+[egg]) # we're done here
|
return main(list(argv)+[egg]) # we're done here
|
||||||
finally:
|
finally:
|
||||||
shutil.rmtree(tmpdir)
|
if egg and os.path.exists(egg):
|
||||||
|
os.unlink(egg)
|
||||||
else:
|
else:
|
||||||
if setuptools.__version__ == '0.0.1':
|
if setuptools.__version__ == '0.0.1':
|
||||||
# tell the user to uninstall obsolete version
|
# tell the user to uninstall obsolete version
|
||||||
|
|
Loading…
Reference in New Issue