diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3d4bfdf --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +*.pyc +build/ +dist/ +*.egg-info/ diff --git a/ez_setup.py b/ez_setup.py index 8775728..3f93d25 100644 --- a/ez_setup.py +++ b/ez_setup.py @@ -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 @@ -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] @@ -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 @@ -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 @@ -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 @@ -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: @@ -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) @@ -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""" @@ -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() @@ -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:]) - - - - - - diff --git a/ez_setup.pyc b/ez_setup.pyc deleted file mode 100644 index 2319391..0000000 Binary files a/ez_setup.pyc and /dev/null differ diff --git a/handsetdetection.egg-info/PKG-INFO b/handsetdetection.egg-info/PKG-INFO deleted file mode 100644 index b00b156..0000000 --- a/handsetdetection.egg-info/PKG-INFO +++ /dev/null @@ -1,14 +0,0 @@ -Metadata-Version: 1.1 -Name: handsetdetection -Version: 4.0 -Summary: Handset Detection Python API kit -Home-page: https://github.com/HandsetDetection/python-apikit -Author: Richard Uren -Author-email: richard@teleport.com.au -License: MIT License -Description: UNKNOWN -Platform: UNKNOWN -Classifier: Development Status :: 5 - Production/Stable -Classifier: Intended Audience :: Developers -Classifier: License :: OSI Approved :: MIT License -Classifier: Natural Language :: English diff --git a/handsetdetection.egg-info/SOURCES.txt b/handsetdetection.egg-info/SOURCES.txt deleted file mode 100644 index bcf10e9..0000000 --- a/handsetdetection.egg-info/SOURCES.txt +++ /dev/null @@ -1,21 +0,0 @@ -MANIFEST.in -README.txt -ez_setup.py -setup.py -examples/detect.py -examples/detect_and_redirect.py -examples/model.py -examples/vendor.py -handsetdetection/__init__.py -handsetdetection/exceptions.py -handsetdetection/hdapiv2.py -handsetdetection/wsseut.py -handsetdetection.egg-info/PKG-INFO -handsetdetection.egg-info/SOURCES.txt -handsetdetection.egg-info/dependency_links.txt -handsetdetection.egg-info/top_level.txt -handsetdetection.egg-info/zip-safe -tests/__init__.py -tests/handsetdetection_tests.py -tests/testutils.py -tests/wsseut_tests.py \ No newline at end of file diff --git a/handsetdetection.egg-info/dependency_links.txt b/handsetdetection.egg-info/dependency_links.txt deleted file mode 100644 index 8b13789..0000000 --- a/handsetdetection.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/handsetdetection.egg-info/top_level.txt b/handsetdetection.egg-info/top_level.txt deleted file mode 100644 index 8fdfa56..0000000 --- a/handsetdetection.egg-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -handsetdetection diff --git a/handsetdetection.egg-info/zip-safe b/handsetdetection.egg-info/zip-safe deleted file mode 100644 index 8b13789..0000000 --- a/handsetdetection.egg-info/zip-safe +++ /dev/null @@ -1 +0,0 @@ - diff --git a/handsetdetection/__pycache__/__init__.cpython-34.pyc b/handsetdetection/__pycache__/__init__.cpython-34.pyc deleted file mode 100644 index ffee939..0000000 Binary files a/handsetdetection/__pycache__/__init__.cpython-34.pyc and /dev/null differ diff --git a/handsetdetection/__pycache__/exceptions.cpython-34.pyc b/handsetdetection/__pycache__/exceptions.cpython-34.pyc deleted file mode 100644 index 43d4bab..0000000 Binary files a/handsetdetection/__pycache__/exceptions.cpython-34.pyc and /dev/null differ diff --git a/tests/__pycache__/handsetdetection_tests.cpython-34.pyc b/tests/__pycache__/handsetdetection_tests.cpython-34.pyc deleted file mode 100644 index ce8da32..0000000 Binary files a/tests/__pycache__/handsetdetection_tests.cpython-34.pyc and /dev/null differ diff --git a/tests/__pycache__/testutils.cpython-34.pyc b/tests/__pycache__/testutils.cpython-34.pyc deleted file mode 100644 index 8ce40c7..0000000 Binary files a/tests/__pycache__/testutils.cpython-34.pyc and /dev/null differ diff --git a/tests/__pycache__/wsseut_tests.cpython-34.pyc b/tests/__pycache__/wsseut_tests.cpython-34.pyc deleted file mode 100644 index 61f76ae..0000000 Binary files a/tests/__pycache__/wsseut_tests.cpython-34.pyc and /dev/null differ