From f734dd4ef7c5267d0ea6497cfa600898d8605dfa Mon Sep 17 00:00:00 2001 From: blag Date: Fri, 27 Mar 2020 00:01:25 -0700 Subject: [PATCH 1/4] Use pip-compile from pip-tools to check for dependency version conflicts --- Makefile | 4 +++- test-requirements.txt | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 4d68fa4972..40bd191052 100644 --- a/Makefile +++ b/Makefile @@ -495,7 +495,9 @@ requirements: virtualenv .sdist-requirements install-runners git submodule update --recursive --remote # Verify there are no conflicting dependencies - $(VIRTUALENV_DIR)/bin/pipconflictchecker + cat st2*/requirements.txt contrib/runners/*/requirements.txt | sort -u > req.txt && \ + $(VIRTUALENV_DIR)/bin/pip-compile req.txt; \ + if [[ -e req.txt ]]; then rm req.txt; fi .PHONY: virtualenv # Note: We always want to update virtualenv/bin/activate file to make sure diff --git a/test-requirements.txt b/test-requirements.txt index db927f9997..c4970ef10e 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -32,4 +32,4 @@ pyrabbit # (those tests only run under Python 2.7 since keyczar doesn't support Python 3.x). # See https://github.com/StackStorm/st2/pull/4165 python-keyczar -git+https://github.com/StackStorm/pip-conflict-checker.git@fix_pip_issue#egg=pip-conflict-checker +pip-tools # For pip-compile, to check for version conflicts From 75f63922454b95dfa961abf47597a3133c548778 Mon Sep 17 00:00:00 2001 From: blag Date: Fri, 27 Mar 2020 00:02:46 -0700 Subject: [PATCH 2/4] Specify .git to remain consistent with st2actions/in-requirements.txt --- st2api/in-requirements.txt | 2 +- st2api/requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/st2api/in-requirements.txt b/st2api/in-requirements.txt index 1ad7b3002e..76ea3129ee 100644 --- a/st2api/in-requirements.txt +++ b/st2api/in-requirements.txt @@ -8,5 +8,5 @@ oslo.config oslo.utils pymongo six -git+https://github.com/StackStorm/python-mistralclient#egg=python-mistralclient +git+https://github.com/StackStorm/python-mistralclient.git#egg=python-mistralclient gunicorn diff --git a/st2api/requirements.txt b/st2api/requirements.txt index 735c125d26..854a05e273 100644 --- a/st2api/requirements.txt +++ b/st2api/requirements.txt @@ -6,7 +6,7 @@ # in-requirements.txt for that component and then run 'make requirements' to # update the component requirements.txt eventlet==0.25.1 -git+https://github.com/StackStorm/python-mistralclient#egg=python-mistralclient +git+https://github.com/StackStorm/python-mistralclient.git#egg=python-mistralclient gunicorn==19.9.0 jsonschema==2.6.0 kombu==4.6.6 From fabe46b520d3bb0208754211457faff8d684c311 Mon Sep 17 00:00:00 2001 From: blag Date: Fri, 27 Mar 2020 00:03:18 -0700 Subject: [PATCH 3/4] Pin openstacksdk to <0.44.0, to keep Python 2.7 compatibility --- fixed-requirements.txt | 5 +++++ requirements.txt | 1 + st2actions/in-requirements.txt | 2 ++ st2actions/requirements.txt | 1 + st2api/in-requirements.txt | 2 ++ st2api/requirements.txt | 1 + 6 files changed, 12 insertions(+) diff --git a/fixed-requirements.txt b/fixed-requirements.txt index af2c1baf05..bb05516767 100644 --- a/fixed-requirements.txt +++ b/fixed-requirements.txt @@ -59,3 +59,8 @@ bcrypt==3.1.7 jinja2==2.10.3 more-itertools==5.0.0 zipp>=0.5,<=1.0.0 +# python-mistralclient +# --> osc-lib >= 1.8.0 --> 2.0.0 +# --> openstacksdk >= 0.15.0 --> 0.44.0 +# --> futurist >= 2.1.0, which is Python 3 only +openstacksdk<0.44.0 # 0.43.0 --> futures 3.0.0, which also supports Python 2.7 diff --git a/requirements.txt b/requirements.txt index 3898401f16..0a0069cc51 100644 --- a/requirements.txt +++ b/requirements.txt @@ -33,6 +33,7 @@ networkx==1.11 nose nose-parallel==0.3.1 nose-timer==0.7.5 +openstacksdk<0.44.0 oslo.config<1.13,>=1.12.1 oslo.utils<=3.37.0,>=3.36.2 paramiko==2.6.0 diff --git a/st2actions/in-requirements.txt b/st2actions/in-requirements.txt index 2d47af1e0b..7cbf185111 100644 --- a/st2actions/in-requirements.txt +++ b/st2actions/in-requirements.txt @@ -5,6 +5,8 @@ eventlet jinja2 kombu git+https://github.com/StackStorm/python-mistralclient.git#egg=python-mistralclient +# Need to specify this explicitly to pin it to 0.43.0 +openstacksdk oslo.config oslo.utils requests diff --git a/st2actions/requirements.txt b/st2actions/requirements.txt index f102a5c49f..5caaee2919 100755 --- a/st2actions/requirements.txt +++ b/st2actions/requirements.txt @@ -13,6 +13,7 @@ gitpython==2.1.15 jinja2==2.10.3 kombu==4.6.6 lockfile==0.12.2 +openstacksdk<0.44.0 oslo.config<1.13,>=1.12.1 oslo.utils<=3.37.0,>=3.36.2 pyinotify==0.9.6 diff --git a/st2api/in-requirements.txt b/st2api/in-requirements.txt index 76ea3129ee..e0b40105c4 100644 --- a/st2api/in-requirements.txt +++ b/st2api/in-requirements.txt @@ -9,4 +9,6 @@ oslo.utils pymongo six git+https://github.com/StackStorm/python-mistralclient.git#egg=python-mistralclient +# Need to specify this explicitly to pin it to 0.43.0 +openstacksdk gunicorn diff --git a/st2api/requirements.txt b/st2api/requirements.txt index 854a05e273..02f9146d5a 100644 --- a/st2api/requirements.txt +++ b/st2api/requirements.txt @@ -11,6 +11,7 @@ gunicorn==19.9.0 jsonschema==2.6.0 kombu==4.6.6 mongoengine==0.18.2 +openstacksdk<0.44.0 oslo.config<1.13,>=1.12.1 oslo.utils<=3.37.0,>=3.36.2 pymongo==3.10.0 From 97a8a4e4a080d33b7d48a830498964898ef5bedf Mon Sep 17 00:00:00 2001 From: blag Date: Fri, 27 Mar 2020 13:59:09 -0700 Subject: [PATCH 4/4] Update the CHANGELOG --- CHANGELOG.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index aebe1b2371..b22a001185 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -56,6 +56,7 @@ Changed * Remove `.scrutinizer.yml` config file. No longer used. * Convert escaped dict and dynamic fields in workflow db models to normal dict and dynamic fields. (performnce improvement) +* Use ``pip-compile`` from ``pip-tools`` instead of ``pip-conflict-checker`` (improvement) #4896 Fixed ~~~~~ @@ -112,6 +113,7 @@ Fixed Contributed by Tatsuma Matsuki (@mtatsuma) * Fix dependency conflicts by updating ``requests`` (2.23.0) and ``gitpython`` (2.1.15). #4869 +* Fix dependency conflicts by specifying ``openstacksdk`` < 0.44.0. #4896 3.1.0 - June 27, 2019 ---------------------