Commit 59e0da98 authored by Hanno Schlichting's avatar Hanno Schlichting

Update and prepare the ez_setup.py to use distribute instead.

--HG--
branch : distribute
extra : rebase_source : 77eca0d06e91cbf4d9ae569be863be35acc4cabb
parent 97f51be8
#!python #!python
"""Bootstrap setuptools installation """Bootstrap distribute installation
If you want to use setuptools in your package's setup.py, just include this If you want to use setuptools in your package's setup.py, just include this
file in the same directory with it, and add this to the top of your setup.py:: file in the same directory with it, and add this to the top of your setup.py::
...@@ -14,44 +14,14 @@ the appropriate options to ``use_setuptools()``. ...@@ -14,44 +14,14 @@ 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.6c9" DEFAULT_VERSION = "0.6"
DEFAULT_URL = "http://pypi.python.org/packages/%s/s/setuptools/" % sys.version[:3] DEFAULT_URL = "http://pypi.python.org/packages/%s/d/distribute/" % sys.version[:3]
md5_data = { md5_data = {
'setuptools-0.6b1-py2.3.egg': '8822caf901250d848b996b7f25c6e6ca', 'distribute-0.6-py2.3.egg': '',
'setuptools-0.6b1-py2.4.egg': 'b79a8a403e4502fbb85ee3f1941735cb', 'distribute-0.6-py2.4.egg': '',
'setuptools-0.6b2-py2.3.egg': '5657759d8a6d8fc44070a9d07272d99b', 'distribute-0.6-py2.5.egg': '',
'setuptools-0.6b2-py2.4.egg': '4996a8d169d2be661fa32a6e52e4f82a', 'distribute-0.6-py2.6.egg': '',
'setuptools-0.6b3-py2.3.egg': 'bb31c0fc7399a63579975cad9f5a0618',
'setuptools-0.6b3-py2.4.egg': '38a8c6b3d6ecd22247f179f7da669fac',
'setuptools-0.6b4-py2.3.egg': '62045a24ed4e1ebc77fe039aa4e6f7e5',
'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',
'setuptools-0.6c4-py2.3.egg': 'b0b9131acab32022bfac7f44c5d7971f',
'setuptools-0.6c4-py2.4.egg': '2a1f9656d4fbf3c97bf946c0a124e6e2',
'setuptools-0.6c4-py2.5.egg': '8f5a052e32cdb9c72bcf4b5526f28afc',
'setuptools-0.6c5-py2.3.egg': 'ee9fd80965da04f2f3e6b3576e9d8167',
'setuptools-0.6c5-py2.4.egg': 'afe2adf1c01701ee841761f5bcd8aa64',
'setuptools-0.6c5-py2.5.egg': 'a8d3f61494ccaa8714dfed37bccd3d5d',
'setuptools-0.6c6-py2.3.egg': '35686b78116a668847237b69d549ec20',
'setuptools-0.6c6-py2.4.egg': '3c56af57be3225019260a644430065ab',
'setuptools-0.6c6-py2.5.egg': 'b2f8a7520709a5b34f80946de5f02f53',
'setuptools-0.6c7-py2.3.egg': '209fdf9adc3a615e5115b725658e13e2',
'setuptools-0.6c7-py2.4.egg': '5a8f954807d46a0fb67cf1f26c55a82e',
'setuptools-0.6c7-py2.5.egg': '45d2ad28f9750e7434111fde831e8372',
'setuptools-0.6c8-py2.3.egg': '50759d29b349db8cfd807ba8303f1902',
'setuptools-0.6c8-py2.4.egg': 'cba38d74f7d483c06e9daa6070cce6de',
'setuptools-0.6c8-py2.5.egg': '1721747ee329dc150590a58b3e1ac95b',
'setuptools-0.6c9-py2.3.egg': 'a83c4020414807b496e4cfbe08507c03',
'setuptools-0.6c9-py2.4.egg': '260a2be2e5388d66bdaee06abec6342a',
'setuptools-0.6c9-py2.5.egg': 'fe67c3e5a17b12c0e7c541b7ea43a8e6',
'setuptools-0.6c9-py2.6.egg': 'ca37b1ff16fa2ede6e19383e7b59245a',
} }
import sys, os import sys, os
...@@ -94,13 +64,13 @@ def use_setuptools( ...@@ -94,13 +64,13 @@ def use_setuptools(
except ImportError: except ImportError:
return do_download() return do_download()
try: try:
pkg_resources.require("setuptools>="+version); return pkg_resources.require("distribute>="+version); return
except pkg_resources.VersionConflict, e: except pkg_resources.VersionConflict, e:
if was_imported: if was_imported:
print >>sys.stderr, ( print >>sys.stderr, (
"The required version of setuptools (>=%s) is not available, and\n" "The required version of distibute (>=%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, using 'easy_install -U setuptools'." " a more recent version first, using 'easy_install -U distribute'."
"\n\n(Currently using %r)" "\n\n(Currently using %r)"
) % (version, e.args[0]) ) % (version, e.args[0])
sys.exit(2) sys.exit(2)
...@@ -114,15 +84,15 @@ def download_setuptools( ...@@ -114,15 +84,15 @@ def download_setuptools(
version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir, version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir,
delay = 15 delay = 15
): ):
"""Download setuptools from a specified location and return its filename """Download distribute from a specified location and return its filename
`version` should be a valid setuptools version number that is available `version` should be a valid distribute version number that is available
as an egg for download under the `download_base` URL (which should end as an egg for download under the `download_base` URL (which should end
with a '/'). `to_dir` is the directory where the egg will be downloaded. with a '/'). `to_dir` is the directory where the egg will be downloaded.
`delay` is the number of seconds to pause before an actual download attempt. `delay` is the number of seconds to pause before an actual download attempt.
""" """
import urllib2, shutil import urllib2, shutil
egg_name = "setuptools-%s-py%s.egg" % (version,sys.version[:3]) egg_name = "distribute-%s-py%s.egg" % (version,sys.version[:3])
url = download_base + egg_name url = download_base + egg_name
saveto = os.path.join(to_dir, egg_name) saveto = os.path.join(to_dir, egg_name)
src = dst = None src = dst = None
...@@ -132,7 +102,7 @@ def download_setuptools( ...@@ -132,7 +102,7 @@ def download_setuptools(
if delay: if delay:
log.warn(""" log.warn("""
--------------------------------------------------------------------------- ---------------------------------------------------------------------------
This script requires setuptools version %s to run (even to display This script requires distribute version %s to run (even to display
help). I will attempt to download it for you (from help). I will attempt to download it for you (from
%s), but %s), but
you may need to enable firewall access for this script first. you may need to enable firewall access for this script first.
...@@ -214,7 +184,7 @@ def main(argv, version=DEFAULT_VERSION): ...@@ -214,7 +184,7 @@ def main(argv, version=DEFAULT_VERSION):
) )
sys.exit(2) sys.exit(2)
req = "setuptools>="+version req = "distribute>="+version
import pkg_resources import pkg_resources
try: try:
pkg_resources.require(req) pkg_resources.require(req)
...@@ -230,8 +200,8 @@ def main(argv, version=DEFAULT_VERSION): ...@@ -230,8 +200,8 @@ def main(argv, version=DEFAULT_VERSION):
from setuptools.command.easy_install import main from setuptools.command.easy_install import main
main(argv) main(argv)
else: else:
print "Setuptools version",version,"or greater has been installed." print "distribute version",version,"or greater has been installed."
print '(Run "ez_setup.py -U setuptools" to reinstall or upgrade.)' print '(Run "ez_setup.py -U distribute" to reinstall or upgrade.)'
def update_md5(filenames): def update_md5(filenames):
"""Update our built-in md5 registry""" """Update our built-in md5 registry"""
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment