From b42d461341de2aa7e2136d85f67ebbd12918b200 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Fri, 23 Aug 2013 13:36:38 +0200 Subject: packaging improvements * add versioneer (patched for our particular repo config) * add parse_requirements to unify requirement handling --- common/setup.py | 46 ++++++++++++++++++---------------------------- 1 file changed, 18 insertions(+), 28 deletions(-) (limited to 'common/setup.py') diff --git a/common/setup.py b/common/setup.py index 6a432608..22159a2a 100644 --- a/common/setup.py +++ b/common/setup.py @@ -14,32 +14,19 @@ # # You should have received a copy of the GNU General Public License # along with this program. If not, see . +""" +setup file for leap.soledad.common +""" +from setuptools import setup +from setuptools import find_packages +import versioneer +versioneer.versionfile_source = 'src/leap/soledad/common/_version.py' +versioneer.versionfile_build = 'leap/soledad/common/_version.py' +versioneer.tag_prefix = '' # tags are like 1.2.0 +versioneer.parentdir_prefix = 'leap.soledad.common-' -from setuptools import ( - setup, - find_packages -) - - -install_requirements = [ - 'simplejson', - 'oauth', # this is not strictly needed by us, but we need it - # until u1db adds it to its release as a dep. - 'u1db', - 'six==1.1.0', # some tests are incompatible with newer versions of six. -] - - -tests_requirements = [ - 'mock', - 'nose2', - 'testscenarios', - 'leap.common', - 'leap.soledad.server', - 'leap.soledad.client', -] - +from pkg import utils trove_classifiers = ( "Development Status :: 3 - Alpha", @@ -55,10 +42,12 @@ trove_classifiers = ( "Topic :: Software Development :: Libraries :: Python Modules" ) +# XXX add ref to docs setup( name='leap.soledad.common', - version='0.3.0', + version=versioneer.get_version(), + cmdclass=versioneer.get_cmdclass(), url='https://leap.se/', license='GPLv3+', description='Synchronization of locally encrypted data among devices.', @@ -69,11 +58,12 @@ setup( "securely shared among devices. It provides, to other parts of the " "LEAP client, an API for data storage and sync." ), + classifiers=trove_classifiers, namespace_packages=["leap", "leap.soledad"], packages=find_packages('src', exclude=['leap.soledad.common.tests']), package_dir={'': 'src'}, test_suite='leap.soledad.common.tests', - install_requires=install_requirements, - tests_require=tests_requirements, - classifiers=trove_classifiers, + install_requires=utils.parse_requirements(), + tests_require=utils.parse_requirements( + reqfiles=['pkg/requirements-testing.pip']), ) -- cgit v1.2.3