summaryrefslogtreecommitdiff
path: root/setup.py
diff options
context:
space:
mode:
authorRaphaël Barrois <raphael.barrois@polyconseil.fr>2013-12-23 20:31:42 +0100
committerRaphaël Barrois <raphael.barrois@polyconseil.fr>2013-12-23 20:48:57 +0100
commit5550834eae424ac5cfa223b75bdb281fa8b9478f (patch)
treec0a23fc6a6fa416d2a6b31dc4ac54c73f22e50d5 /setup.py
parent9a9aca22fee237a9f0eba4b2c293279b9ed09f46 (diff)
downloadsemantic-version-5550834eae424ac5cfa223b75bdb281fa8b9478f.tar.gz
Normalize docs to docs/ (Closes #5).
Also normalize the package layout. Thanks @jdowner-gb & tleach for the report.
Diffstat (limited to 'setup.py')
-rwxr-xr-xsetup.py88
1 files changed, 23 insertions, 65 deletions
diff --git a/setup.py b/setup.py
index d24cdd0..8d2f9e6 100755
--- a/setup.py
+++ b/setup.py
@@ -2,90 +2,49 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2012-2013 Raphaël Barrois
-from distutils.core import setup
-from distutils import cmd
import os
import re
import sys
+from setuptools import setup
+
root_dir = os.path.abspath(os.path.dirname(__file__))
-def get_version():
- version_re = re.compile(r"^__version__ = '([\w_.-]+)'$")
- with open(os.path.join(root_dir, 'src', 'semantic_version', '__init__.py')) as f:
+def get_version(package_name):
+ version_re = re.compile(r"^__version__ = [\"']([\w_.-]+)[\"']$")
+ package_components = package_name.split('.')
+ path_components = package_components + ['__init__.py']
+ with open(os.path.join(root_dir, *path_components)) as f:
for line in f:
match = version_re.match(line[:-1])
if match:
return match.groups()[0]
- return '0.0.0'
-
-
-class test(cmd.Command):
- """Run the tests for this package."""
- command_name = 'test'
- description = 'run the tests associated with the package'
-
- user_options = [
- ('test-suite=', None, "A test suite to run (defaults to 'tests')"),
- ]
-
- DEFAULT_TEST_SUITE = 'tests'
-
- def initialize_options(self):
- self.test_runner = None
- self.test_suite = None
-
- def finalize_options(self):
- self.ensure_string('test_suite', self.DEFAULT_TEST_SUITE)
+ return '0.1.0'
- def run(self):
- """Run the test suite."""
- try:
- import unittest2 as unittest
- except ImportError:
- import unittest
- if self.verbose:
- verbosity=1
- else:
- verbosity=0
-
- ex_path = sys.path
- sys.path.insert(0, os.path.join(root_dir, 'src'))
- loader = unittest.defaultTestLoader
- suite = unittest.TestSuite()
-
- if self.test_suite == self.DEFAULT_TEST_SUITE:
- for test_module in loader.discover('.'):
- suite.addTest(test_module)
- else:
- suite.addTest(loader.loadTestsFromName(self.test_suite))
-
- result = unittest.TextTestRunner(verbosity=verbosity).run(suite)
- sys.path = ex_path
-
- if not result.wasSuccessful():
- sys.exit(1)
+PACKAGE = 'semantic_version'
setup(
- name="semantic_version",
- version=get_version(),
+ name=PACKAGE,
+ version=get_version(PACKAGE),
author="Raphaël Barrois",
author_email="raphael.barrois+semver@polytechnique.org",
- description=("A library implementing the 'SemVer' scheme."),
- license="BSD",
+ description="A library implementing the 'SemVer' scheme.",
+ license='BSD',
keywords=['semantic version', 'versioning', 'version'],
- url="http://github.com/rbarrois/python-semanticversion",
- download_url="http://pypi.python.org/pypi/semantic_version/",
- package_dir={'': 'src'},
+ url='https://github.com/rbarrois/python-semanticversion',
+ download_url='http://pypi.python.org/pypi/semantic_version/',
packages=['semantic_version'],
+ setup_requires=[
+ 'setuptools>=0.8',
+ ],
classifiers=[
- "Development Status :: 5 - Production/Stable",
- "Intended Audience :: Developers",
- "License :: OSI Approved :: BSD License",
- "Topic :: Software Development :: Libraries :: Python Modules",
+ 'Development Status :: 5 - Production/Stable',
+ 'Intended Audience :: Developers',
+ 'License :: OSI Approved :: BSD License',
+ 'Topic :: Software Development :: Libraries :: Python Modules',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
@@ -96,6 +55,5 @@ setup(
'Programming Language :: Python :: 3.3',
'Topic :: Software Development :: Libraries :: Python Modules'
],
- cmdclass={'test': test},
+ test_suite='tests',
)
-