From 394e4994707964449494c9c677d4cfd0d78bdcf2 Mon Sep 17 00:00:00 2001 From: Carlos G?lvez Date: Fri, 13 Sep 2019 14:58:00 +0200 Subject: [PATCH] Upgrade tox and setup.py --- setup.py | 47 +++++++++++++++++++++++++++++++++++------------ tox.ini | 10 ++++------ 2 files changed, 39 insertions(+), 18 deletions(-) diff --git a/setup.py b/setup.py index 1f951ac..9eb6e5d 100644 --- a/setup.py +++ b/setup.py @@ -9,7 +9,12 @@ import os import io from configparser import ConfigParser -MODULE2PREFIX = {} +MODULE = 'product_oneclick_esale' +PREFIX = 'trytonzz' +MODULE2PREFIX = { + 'product_esale': 'trytonzz', + 'product_oneclick': 'trytonzz', + } def read(fname): @@ -17,6 +22,7 @@ def read(fname): os.path.join(os.path.dirname(__file__), fname), 'r', encoding='utf-8').read() + def get_require_version(name): if minor_version % 2: require = '%s >= %s.%s.dev0, < %s.%s' @@ -26,6 +32,7 @@ def get_require_version(name): major_version, minor_version + 1) return require + config = ConfigParser() config.readfp(open('tryton.cfg')) info = dict(config.items('tryton')) @@ -36,8 +43,6 @@ version = info.get('version', '0.0.1') major_version, minor_version, _ = version.split('.', 2) major_version = int(major_version) minor_version = int(minor_version) -name = 'trytonzz_product_oneclick_esale' -download_url = 'https://bitbucket.org/zikzakmedia/trytond-product_oneclick_esale' requires = [] for dep in info.get('depends', []): @@ -47,27 +52,45 @@ for dep in info.get('depends', []): requires.append(get_require_version('trytond')) tests_require = [] -dependency_links = [] +series = '%s.%s' % (major_version, minor_version) +if minor_version % 2: + branch = 'default' +else: + branch = series +dependency_links = [ + ('hg+https://bitbucket.org/zikzakmedia/' + 'trytond-product_esale@%(branch)s' + '#egg=trytonzz-product_esale-%(series)s' % { + 'branch': branch, + 'series': series, + }), + ('hg+https://bitbucket.org/zikzakmedia/' + 'trytond-product_oneclick@%(branch)s' + '#egg=trytonzz-product_oneclick-%(series)s' % { + 'branch': branch, + 'series': series, + }), + ] if minor_version % 2: # Add development index for testing with proteus dependency_links.append('https://trydevpi.tryton.org/') -setup(name=name, +setup(name='%s_%s' % (PREFIX, MODULE), version=version, description='Tryton Product Oneclick Esale Module', long_description=read('README'), author='Zikzakmedia SL', author_email='zikzak@zikzakmedia.com', url='https://bitbucket.org/zikzakmedia/', - download_url=download_url, + download_url='https://bitbucket.org/zikzakmedia/trytond-%s' % MODULE, keywords='', - package_dir={'trytond.modules.product_oneclick_esale': '.'}, + package_dir={'trytond.modules.%s' % MODULE: '.'}, packages=[ - 'trytond.modules.product_oneclick_esale', - 'trytond.modules.product_oneclick_esale.tests', + 'trytond.modules.%s' % MODULE, + 'trytond.modules.%s.tests' % MODULE, ], package_data={ - 'trytond.modules.product_oneclick_esale': (info.get('xml', []) + 'trytond.modules.%s' % MODULE: (info.get('xml', []) + ['tryton.cfg', 'view/*.xml', 'locale/*.po', '*.odt', 'icons/*.svg', 'tests/*.rst']), }, @@ -107,8 +130,8 @@ setup(name=name, zip_safe=False, entry_points=""" [trytond.modules] - product_oneclick_esale = trytond.modules.product_oneclick_esale - """, + %s = trytond.modules.%s + """ % (MODULE, MODULE), test_suite='tests', test_loader='trytond.test_loader:Loader', tests_require=tests_require, diff --git a/tox.ini b/tox.ini index 3dda9ab..a7b706b 100644 --- a/tox.ini +++ b/tox.ini @@ -1,17 +1,15 @@ [tox] -envlist = {py27,py33,py34,py35}-{sqlite,postgresql,mysql},pypy-{sqlite,postgresql} +envlist = {py35,py36,py37}-{sqlite,postgresql},pypy3-{sqlite,postgresql} [testenv] commands = {envpython} setup.py test deps = - {py27,py33,py34,py35}-postgresql: psycopg2 >= 2.5 - pypy-postgresql: psycopg2cffi >= 2.5 - mysql: MySQL-python + {py35,py36,py37}-postgresql: psycopg2 >= 2.5 + pypy3-postgresql: psycopg2cffi >= 2.5 + {py35,py36}-sqlite: sqlitebck setenv = sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://} postgresql: TRYTOND_DATABASE_URI={env:POSTGRESQL_URI:postgresql://} - mysql: TRYTOND_DATABASE_URI={env:MYSQL_URI:mysql://} sqlite: DB_NAME={env:SQLITE_NAME::memory:} postgresql: DB_NAME={env:POSTGRESQL_NAME:test} - mysql: DB_NAME={env:MYSQL_NAME:test} install_command = pip install --pre --find-links https://trydevpi.tryton.org/ {opts} {packages}