From f9cf24a7d0237d8f84851557c658aafa1b5e0773 Mon Sep 17 00:00:00 2001 From: Juho Inkinen Date: Thu, 15 Aug 2019 16:07:45 +0300 Subject: [PATCH 1/7] Pin VW, Gensim, and Scikit-learn versions --- .travis.yml | 2 +- Dockerfile | 2 +- Pipfile | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index aaae7b2a3..24c9290e9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -33,7 +33,7 @@ install: # - vw dependencies - if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then sudo ln -sf /usr/lib/x86_64-linux-gnu/libboost_python-py35.a /usr/lib/x86_64-linux-gnu/libboost_python3.a; fi - if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then sudo ln -sf /usr/lib/x86_64-linux-gnu/libboost_python-py35.so /usr/lib/x86_64-linux-gnu/libboost_python3.so; fi -- if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then pip install vowpalwabbit; fi +- if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then pip install vowpalwabbit==8.7.*; fi script: - pytest --cov=./ after_success: diff --git a/Dockerfile b/Dockerfile index aa0a282de..e49001866 100644 --- a/Dockerfile +++ b/Dockerfile @@ -52,7 +52,7 @@ RUN apt-get update \ libboost-python1.67.0 \ libboost-system1.67.0 \ && pip install --no-cache-dir \ - vowpalwabbit \ + vowpalwabbit==8.7.* \ ## Clean up: && rm -rf /var/lib/apt/lists/* /usr/include/* \ && rm -rf /root/.cache/pip*/* diff --git a/Pipfile b/Pipfile index 4c9dbca20..9f842e5e8 100644 --- a/Pipfile +++ b/Pipfile @@ -22,10 +22,11 @@ flask-cors = "*" click-log = "*" joblib = "*" nltk = "*" -gensim = "*" +gensim = "==3.8.*" sklearn = "*" rdflib = "*" gunicorn = "*" sphinxcontrib-apidoc = "*" +scikit-learn = "==0.21.*" [requires] From 64ce7a190e084834e72c8b14291974ebc5736d6f Mon Sep 17 00:00:00 2001 From: Juho Inkinen Date: Wed, 21 Aug 2019 15:19:41 +0300 Subject: [PATCH 2/7] Pin VW, Gensim, and Scikit-learn versions also in setup.py --- setup.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index 76c7e0720..75154fa33 100644 --- a/setup.py +++ b/setup.py @@ -27,14 +27,14 @@ def read(fname): 'click-log', 'joblib', 'nltk', - 'gensim', - 'sklearn', + 'gensim==3.8.*', + 'sklearn==0.21.*', 'rdflib'], tests_require=['py', 'pytest', 'requests'], extras_require={ 'fasttext': ['fasttext', 'fasttextmirror'], 'voikko': ['voikko'], - 'vw': ['vowpalwabbit', 'numpy'], + 'vw': ['vowpalwabbit==8.7.*', 'numpy'], }, entry_points={ 'console_scripts': ['annif=annif.cli:cli']}, From 290ae81e7d1bc36e1a02648a4dc3959aa916c582 Mon Sep 17 00:00:00 2001 From: Juho Inkinen Date: Wed, 21 Aug 2019 15:21:57 +0300 Subject: [PATCH 3/7] Pin fasttextmirror --- .travis.yml | 2 +- Dockerfile | 2 +- setup.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 24c9290e9..9a672d88c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,7 +27,7 @@ install: # For Python 3.5, also install optional dependencies that were not specified in Pipfile # For other Python versions we will only run the tests that depend on pure Python modules # - fastText dependencies -- if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then pip install fasttextmirror; fi +- if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then pip install fasttextmirror==0.8.22; fi # - voikko dependencies - if [[ $TRAVIS_PYTHON_VERSION == '3.5' ]]; then pip install voikko; fi # - vw dependencies diff --git a/Dockerfile b/Dockerfile index e49001866..d0856fc97 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,7 +15,7 @@ RUN apt-get update \ build-essential \ && pip install --no-cache-dir \ cython \ - fasttextmirror \ + fasttextmirror==0.8.22 \ ## Vowpal Wabbit && apt-get install -y --no-install-recommends \ libboost-program-options-dev \ diff --git a/setup.py b/setup.py index 75154fa33..d57283c25 100644 --- a/setup.py +++ b/setup.py @@ -32,7 +32,7 @@ def read(fname): 'rdflib'], tests_require=['py', 'pytest', 'requests'], extras_require={ - 'fasttext': ['fasttext', 'fasttextmirror'], + 'fasttext': ['fasttext', 'fasttextmirror==0.8.22'], 'voikko': ['voikko'], 'vw': ['vowpalwabbit==8.7.*', 'numpy'], }, From 199273495ce5ec80623500d74bb27c816efcf137 Mon Sep 17 00:00:00 2001 From: Juho Inkinen Date: Wed, 21 Aug 2019 15:39:05 +0300 Subject: [PATCH 4/7] Pin joblib --- Pipfile | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Pipfile b/Pipfile index 9f842e5e8..6d08c06a8 100644 --- a/Pipfile +++ b/Pipfile @@ -20,7 +20,7 @@ connexion = {extras = ["swagger-ui"]} swagger-ui-bundle = "*" flask-cors = "*" click-log = "*" -joblib = "*" +joblib = "==0.13.2" nltk = "*" gensim = "==3.8.*" sklearn = "*" diff --git a/setup.py b/setup.py index d57283c25..3dba023d8 100644 --- a/setup.py +++ b/setup.py @@ -25,7 +25,7 @@ def read(fname): 'flask-cors', 'click', 'click-log', - 'joblib', + 'joblib==0.13.2', 'nltk', 'gensim==3.8.*', 'sklearn==0.21.*', From ca8d9d15640a187a870aa568dfe22465fd2a38e7 Mon Sep 17 00:00:00 2001 From: Juho Inkinen Date: Wed, 21 Aug 2019 15:44:38 +0300 Subject: [PATCH 5/7] Remove (semi)duplicate scikit-learn entry; pin the sklearn entry --- Pipfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Pipfile b/Pipfile index 6d08c06a8..f2b524522 100644 --- a/Pipfile +++ b/Pipfile @@ -23,10 +23,9 @@ click-log = "*" joblib = "==0.13.2" nltk = "*" gensim = "==3.8.*" -sklearn = "*" +sklearn = "==0.21.*" rdflib = "*" gunicorn = "*" sphinxcontrib-apidoc = "*" -scikit-learn = "==0.21.*" [requires] From a4bf0622b5a4754919e6b9d1cb5e04073ead0c6e Mon Sep 17 00:00:00 2001 From: Juho Inkinen Date: Wed, 21 Aug 2019 15:55:20 +0300 Subject: [PATCH 6/7] Need use package name "scikit-learn" instead of "sklearn" when pinning version --- Pipfile | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Pipfile b/Pipfile index f2b524522..8cc9fe7f8 100644 --- a/Pipfile +++ b/Pipfile @@ -23,7 +23,7 @@ click-log = "*" joblib = "==0.13.2" nltk = "*" gensim = "==3.8.*" -sklearn = "==0.21.*" +scikit-learn = "==0.21.*" rdflib = "*" gunicorn = "*" sphinxcontrib-apidoc = "*" diff --git a/setup.py b/setup.py index 3dba023d8..811a9ebd3 100644 --- a/setup.py +++ b/setup.py @@ -28,7 +28,7 @@ def read(fname): 'joblib==0.13.2', 'nltk', 'gensim==3.8.*', - 'sklearn==0.21.*', + 'scikit-learn==0.21.*', 'rdflib'], tests_require=['py', 'pytest', 'requests'], extras_require={ From c6e89cd3331840a152d69285ad5be8071eedb288 Mon Sep 17 00:00:00 2001 From: Osma Suominen Date: Fri, 23 Aug 2019 11:14:59 +0300 Subject: [PATCH 7/7] relax joblib pinning so patch level upgrades are allowed --- Pipfile | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Pipfile b/Pipfile index 8cc9fe7f8..4ae6128d5 100644 --- a/Pipfile +++ b/Pipfile @@ -20,7 +20,7 @@ connexion = {extras = ["swagger-ui"]} swagger-ui-bundle = "*" flask-cors = "*" click-log = "*" -joblib = "==0.13.2" +joblib = "==0.13.*" nltk = "*" gensim = "==3.8.*" scikit-learn = "==0.21.*" diff --git a/setup.py b/setup.py index 811a9ebd3..fd6c9718e 100644 --- a/setup.py +++ b/setup.py @@ -25,7 +25,7 @@ def read(fname): 'flask-cors', 'click', 'click-log', - 'joblib==0.13.2', + 'joblib==0.13.*', 'nltk', 'gensim==3.8.*', 'scikit-learn==0.21.*',