Skip to content
This repository was archived by the owner on Nov 15, 2020. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*.pyc
build/
dist/
*.egg-info/
126 changes: 73 additions & 53 deletions ez_setup.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
#!python
# coding=utf-8
from __future__ import print_function

"""Bootstrap setuptools installation

If you want to use setuptools in your package's setup.py, just include this
Expand All @@ -13,7 +16,15 @@

This file can also be run as a script to install or upgrade setuptools.
"""
import os
import sys
try:
# noinspection PyCompatibility
from urllib2 import urlopen
except ImportError:
# noinspection PyCompatibility
from urllib.request import urlopen

DEFAULT_VERSION = "0.6c9"
DEFAULT_URL = "http://pypi.python.org/packages/%s/s/setuptools/" % sys.version[:3]

Expand Down Expand Up @@ -54,24 +65,26 @@
'setuptools-0.6c9-py2.6.egg': 'ca37b1ff16fa2ede6e19383e7b59245a',
}

import sys, os
try: from hashlib import md5
except ImportError: from md5 import md5
try:
from hashlib import md5
except ImportError:
# noinspection PyUnresolvedReferences,PyCompatibility
from md5 import md5


def _validate_md5(egg_name, data):
if egg_name in md5_data:
digest = md5(data).hexdigest()
if digest != md5_data[egg_name]:
print >>sys.stderr, (
"md5 validation of %s failed! (Possible download problem?)"
% egg_name
)
print("md5 validation of %s failed! (Possible download problem?)"
% egg_name, file=sys.stderr)
sys.exit(2)
return data


def use_setuptools(
version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir,
download_delay=15
version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir,
download_delay=15
):
"""Automatically find/download setuptools and make it available on sys.path

Expand All @@ -85,34 +98,39 @@ def use_setuptools(
an attempt to abort the calling script.
"""
was_imported = 'pkg_resources' in sys.modules or 'setuptools' in sys.modules

def do_download():
egg = download_setuptools(version, download_base, to_dir, download_delay)
sys.path.insert(0, egg)
import setuptools; setuptools.bootstrap_install_from = egg
import setuptools
setuptools.bootstrap_install_from = egg

try:
import pkg_resources
except ImportError:
return do_download()
return do_download()
try:
pkg_resources.require("setuptools>="+version); return
except pkg_resources.VersionConflict, e:
pkg_resources.require("setuptools>=" + version)
return
except pkg_resources.VersionConflict as e:
if was_imported:
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, using 'easy_install -U setuptools'."
"\n\n(Currently using %r)"
) % (version, e.args[0])
print(
"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, using 'easy_install -U setuptools'."
"\n\n(Currently using %r)" % (
version, e.args[0]), file=sys.stderr)
sys.exit(2)
else:
del pkg_resources, sys.modules['pkg_resources'] # reload ok
del pkg_resources, sys.modules['pkg_resources'] # reload ok
return do_download()
except pkg_resources.DistributionNotFound:
return do_download()


def download_setuptools(
version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir,
delay = 15
version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir,
delay=15
):
"""Download setuptools from a specified location and return its filename

Expand All @@ -121,8 +139,7 @@ def download_setuptools(
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.
"""
import urllib2, shutil
egg_name = "setuptools-%s-py%s.egg" % (version,sys.version[:3])
egg_name = "setuptools-%s-py%s.egg" % (version, sys.version[:3])
url = download_base + egg_name
saveto = os.path.join(to_dir, egg_name)
src = dst = None
Expand All @@ -144,19 +161,25 @@ def download_setuptools(

and place it in this directory before rerunning this script.)
---------------------------------------------------------------------------""",
version, download_base, delay, url
); from time import sleep; sleep(delay)
version, download_base, delay, url
)
from time import sleep
sleep(delay)
log.warn("Downloading %s", url)
src = urllib2.urlopen(url)
src = urlopen(url)
# Read/write all in one block, so we don't create a corrupt file
# if the download is interrupted.
data = _validate_md5(egg_name, src.read())
dst = open(saveto,"wb"); dst.write(data)
dst = open(saveto, "wb")
dst.write(data)
finally:
if src: src.close()
if dst: dst.close()
if src:
src.close()
if dst:
dst.close()
return os.path.realpath(saveto)


def main(argv, version=DEFAULT_VERSION):
"""Install or upgrade setuptools and EasyInstall"""
try:
Expand All @@ -165,21 +188,21 @@ def main(argv, version=DEFAULT_VERSION):
egg = None
try:
egg = download_setuptools(version, delay=0)
sys.path.insert(0,egg)
sys.path.insert(0, egg)
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:
if egg and os.path.exists(egg):
os.unlink(egg)
else:
if setuptools.__version__ == '0.0.1':
print >>sys.stderr, (
"You have an obsolete version of setuptools installed. Please\n"
"remove it from your system entirely before rerunning this script."
)
print(
"You have an obsolete version of setuptools installed. Please\n"
"remove it from your system entirely before rerunning this script.",
file=sys.stderr)
sys.exit(2)

req = "setuptools>="+version
req = "setuptools>=" + version
import pkg_resources
try:
pkg_resources.require(req)
Expand All @@ -188,15 +211,16 @@ def main(argv, version=DEFAULT_VERSION):
from setuptools.command.easy_install import main
except ImportError:
from easy_install import main
main(list(argv)+[download_setuptools(delay=0)])
sys.exit(0) # try to force an exit
main(list(argv) + [download_setuptools(delay=0)])
sys.exit(0) # try to force an exit
else:
if argv:
from setuptools.command.easy_install import main
main(argv)
else:
print "Setuptools version",version,"or greater has been installed."
print '(Run "ez_setup.py -U setuptools" to reinstall or upgrade.)'
print("Setuptools version", version, "or greater has been installed.")
print('(Run "ez_setup.py -U setuptools" to reinstall or upgrade.)')


def update_md5(filenames):
"""Update our built-in md5 registry"""
Expand All @@ -205,7 +229,7 @@ def update_md5(filenames):

for name in filenames:
base = os.path.basename(name)
f = open(name,'rb')
f = open(name, 'rb')
md5_data[base] = md5(f.read()).hexdigest()
f.close()

Expand All @@ -215,27 +239,23 @@ def update_md5(filenames):

import inspect
srcfile = inspect.getsourcefile(sys.modules[__name__])
f = open(srcfile, 'rb'); src = f.read(); f.close()
f = open(srcfile, 'rb')
src = f.read()
f.close()

match = re.search("\nmd5_data = {\n([^}]+)}", src)
if not match:
print >>sys.stderr, "Internal error!"
print("Internal error!", file=sys.stderr)
sys.exit(2)

src = src[:match.start(1)] + repl + src[match.end(1):]
f = open(srcfile,'w')
f = open(srcfile, 'w')
f.write(src)
f.close()


if __name__=='__main__':
if len(sys.argv)>2 and sys.argv[1]=='--md5update':
if __name__ == '__main__':
if len(sys.argv) > 2 and sys.argv[1] == '--md5update':
update_md5(sys.argv[2:])
else:
main(sys.argv[1:])






Binary file removed ez_setup.pyc
Binary file not shown.
14 changes: 0 additions & 14 deletions handsetdetection.egg-info/PKG-INFO

This file was deleted.

21 changes: 0 additions & 21 deletions handsetdetection.egg-info/SOURCES.txt

This file was deleted.

1 change: 0 additions & 1 deletion handsetdetection.egg-info/dependency_links.txt

This file was deleted.

1 change: 0 additions & 1 deletion handsetdetection.egg-info/top_level.txt

This file was deleted.

1 change: 0 additions & 1 deletion handsetdetection.egg-info/zip-safe

This file was deleted.

Binary file removed handsetdetection/__pycache__/__init__.cpython-34.pyc
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file removed tests/__pycache__/testutils.cpython-34.pyc
Binary file not shown.
Binary file removed tests/__pycache__/wsseut_tests.cpython-34.pyc
Binary file not shown.