From e9b1221181753ee11d615090785e5e6a2a12d0e6 Mon Sep 17 00:00:00 2001 From: Vladimir Kotal Date: Mon, 19 Oct 2020 20:33:42 +0200 Subject: [PATCH 1/3] workaround problem with setuptools --- .travis.yml | 5 +++-- opengrok-tools/pom.xml | 33 ++++++++++++++++++++++++++++++++- opengrok-tools/tests.txt | 5 +++++ 3 files changed, 40 insertions(+), 3 deletions(-) create mode 100644 opengrok-tools/tests.txt diff --git a/.travis.yml b/.travis.yml index 34b2adc3a08..6f1a31ea869 100644 --- a/.travis.yml +++ b/.travis.yml @@ -42,9 +42,10 @@ jobs: before_install: dev/before_install before_script: dev/before - stage: test - name: macOS + Oracle JDK 8 + name: macOS + Oracle JDK 11 os: osx - osx_image: xcode8.3 + osx_image: xcode10.1 + jdk: oraclejdk11 install: true script: dev/main before_install: dev/before_install diff --git a/opengrok-tools/pom.xml b/opengrok-tools/pom.xml index 574e905b45a..5f39f01a0e8 100644 --- a/opengrok-tools/pom.xml +++ b/opengrok-tools/pom.xml @@ -213,7 +213,6 @@ Portions Copyright (c) 2017-2018, 2020, Chris Fraire . --upgrade pip setuptools - certifi wheel @@ -222,6 +221,38 @@ Portions Copyright (c) 2017-2018, 2020, Chris Fraire . exec + + Install requirements via pip + + ${python.environment}/pip + ${project.build.directory} + + install + -r + ${project.basedir}/requirements.txt + + + test + + exec + + + + Install test modules via pip + + ${python.environment}/pip + ${project.build.directory} + + install + -r + ${project.basedir}/tests.txt + + + test + + exec + + Generate python package diff --git a/opengrok-tools/tests.txt b/opengrok-tools/tests.txt new file mode 100644 index 00000000000..8142e5bbbf4 --- /dev/null +++ b/opengrok-tools/tests.txt @@ -0,0 +1,5 @@ +pytest +GitPython +pytest-xdist +mockito +pytest-mockito From f00a8adec81620133893d550133c684936bd0d9e Mon Sep 17 00:00:00 2001 From: Krystof Tulinger Date: Wed, 21 Oct 2020 00:10:07 +0200 Subject: [PATCH 2/3] loading requirements from file --- opengrok-tools/pom.xml | 12 +++++++--- .../{tests.txt => requirements-tests.txt} | 0 opengrok-tools/requirements.txt | 18 ++++----------- opengrok-tools/setup.py | 23 +++++++------------ 4 files changed, 22 insertions(+), 31 deletions(-) rename opengrok-tools/{tests.txt => requirements-tests.txt} (100%) diff --git a/opengrok-tools/pom.xml b/opengrok-tools/pom.xml index 5f39f01a0e8..b169861237d 100644 --- a/opengrok-tools/pom.xml +++ b/opengrok-tools/pom.xml @@ -152,6 +152,8 @@ Portions Copyright (c) 2017-2018, 2020, Chris Fraire . MANIFEST.in README-dist.txt + requirements.txt + requirements-tests.txt setup.py setup.cfg @@ -224,9 +226,11 @@ Portions Copyright (c) 2017-2018, 2020, Chris Fraire . Install requirements via pip - ${python.environment}/pip + ${python.environment}/python ${project.build.directory} + -m + pip install -r ${project.basedir}/requirements.txt @@ -240,12 +244,14 @@ Portions Copyright (c) 2017-2018, 2020, Chris Fraire . Install test modules via pip - ${python.environment}/pip + ${python.environment}/python ${project.build.directory} + -m + pip install -r - ${project.basedir}/tests.txt + ${project.basedir}/requirements-tests.txt test diff --git a/opengrok-tools/tests.txt b/opengrok-tools/requirements-tests.txt similarity index 100% rename from opengrok-tools/tests.txt rename to opengrok-tools/requirements-tests.txt diff --git a/opengrok-tools/requirements.txt b/opengrok-tools/requirements.txt index 0aa6bbc891b..d6d2a9b9f42 100644 --- a/opengrok-tools/requirements.txt +++ b/opengrok-tools/requirements.txt @@ -1,14 +1,6 @@ -certifi==2018.8.24 -chardet==3.0.4 -filelock==3.0.10 -idna==2.7 -JsonForm==0.0.2 jsonschema==2.6.0 -JsonSir==0.0.2 -Python-EasyConfig==0.1.7 -PyYAML==3.13 -requests==2.20.0 -Resource==0.2.1 -six==1.11.0 -urllib3==1.23 -GitPython==3.0.6 +pyyaml +requests>=2.20.0 +resource +filelock +setuptools>=36.7.2 \ No newline at end of file diff --git a/opengrok-tools/setup.py b/opengrok-tools/setup.py index f86c46124fd..60a81e96f19 100644 --- a/opengrok-tools/setup.py +++ b/opengrok-tools/setup.py @@ -1,4 +1,5 @@ import os + from setuptools import setup from src.main.python.opengrok_tools.version import __version__ as version @@ -11,6 +12,11 @@ def readme(): return readme.read() +def readlines(file): + with open(os.path.join(SCRIPT_DIR, file), 'r') as file: + return list(map(str.strip, file.readlines())) + + setup( name='opengrok-tools', version=version, @@ -31,25 +37,12 @@ def readme(): description='Tools for managing OpenGrok instance', long_description=readme(), python_requires='>=3.4, <4', - install_requires=[ - 'jsonschema==2.6.0', - 'pyyaml', - 'requests>=2.20.0', - 'resource', - 'filelock', - 'setuptools>=36.7.2', - ], + install_requires=readlines('requirements.txt'), setup_requires=[ 'pytest-runner', 'setuptools>=36.7.2', ], - tests_require=[ - 'pytest', - 'GitPython', - 'pytest-xdist', - 'mockito', - 'pytest-mockito', - ], + tests_require=readlines('requirements-tests.txt'), entry_points={ 'console_scripts': [ 'opengrok-config-merge=opengrok_tools.config_merge:main', From 90a21f92b35042b7f6c0f8cb02c3b10dd2c6266a Mon Sep 17 00:00:00 2001 From: Krystof Tulinger Date: Wed, 21 Oct 2020 09:12:29 +0200 Subject: [PATCH 3/3] include requirements in the package --- opengrok-tools/MANIFEST.in | 2 ++ 1 file changed, 2 insertions(+) diff --git a/opengrok-tools/MANIFEST.in b/opengrok-tools/MANIFEST.in index 877b1dfb896..0ae5967c1fa 100644 --- a/opengrok-tools/MANIFEST.in +++ b/opengrok-tools/MANIFEST.in @@ -1 +1,3 @@ include README-dist.txt +include requirements.txt +include requirements-tests.txt