diff --git a/setup.py b/setup.py index 554b628..606a4e1 100644 --- a/setup.py +++ b/setup.py @@ -1,13 +1,62 @@ #!/usr/bin/env python +# -*- coding: utf-8 -*- +# Copyright 2012-2014 Matt Martz +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. -import setuptools +import os +import re +import codecs -setuptools.setup( +from setuptools import setup + +here = os.path.abspath(os.path.dirname(__file__)) + + +# Read the version number from a source file. +# Why read it, and not import? +# see https://groups.google.com/d/topic/pypa-dev/0PkjVpcxTzQ/discussion +def find_version(*file_paths): + # Open in Latin-1 so that we avoid encoding errors. + # Use codecs.open for Python 2 compatibility + with codecs.open(os.path.join(here, *file_paths), 'r', 'latin1') as f: + version_file = f.read() + + # The version line must have the form + # __version__ = 'ver' + version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]", + version_file, re.M) + if version_match: + return version_match.group(1) + raise RuntimeError("Unable to find version string.") + + +# Get the long description from the relevant file +try: + with codecs.open('README.rst', encoding='utf-8') as f: + long_description = f.read() +except: + long_description = '' + + +setup( name='speedtest-cli', - version='0.2.5', + version=find_version('speedtest_cli.py'), description=('Command line interface for testing internet bandwidth using ' 'speedtest.net'), - long_description=open('README.rst').read(), + long_description=long_description, + keywords='speedtest speedtest.net', author='Matt Martz', author_email='matt@sivel.net', url='https://github.com/sivel/speedtest-cli', @@ -20,9 +69,20 @@ setuptools.setup( ] }, classifiers=[ + 'Development Status :: 5 - Production/Stable', 'Programming Language :: Python', 'Environment :: Console', 'License :: OSI Approved :: Apache Software License', - 'Operating System :: OS Independent' + 'Operating System :: OS Independent', + 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 2.4', + 'Programming Language :: Python :: 2.5', + 'Programming Language :: Python :: 2.6', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.1', + 'Programming Language :: Python :: 3.2', + 'Programming Language :: Python :: 3.3', + 'Programming Language :: Python :: 3.4', ] )