Browse Source

build(requirements): pin python package versions

Package version pinning in all requirements files introduced.
Necessary for a stable and reproducible testing environment.
Also to provide clear guidance about tested package versions.
Maximum package versions defined based on common ground between:
rpm - F34, F36, CentOS8 Stream, pip - F34, F36 and FreeBSD 13.1.
Dominik Wombacher 1 year ago
parent
commit
c9376756f7
4 changed files with 55 additions and 49 deletions
  1. 2 2
      requirements-ci.txt
  2. 1 1
      requirements-ev.txt
  3. 16 15
      requirements-testing.txt
  4. 36 31
      requirements.txt

+ 2 - 2
requirements-ci.txt

@@ -1,2 +1,2 @@
-cryptography
-python-jenkins
+cryptography <= 36.0.0
+python-jenkins <= 1.7.0

+ 1 - 1
requirements-ev.txt

@@ -1 +1 @@
-trololio
+trololio == 1.0

+ 16 - 15
requirements-testing.txt

@@ -1,18 +1,19 @@
-bcrypt
-beautifulsoup4
-black
-cryptography
-eventlet
-fedmsg
-flake8
-flask-oidc
-mock
+bcrypt <= 3.2.2
+beautifulsoup4 <= 4.11.1
+black <= 22.8.0
+cryptography <= 36.0.0
+eventlet <= 0.33.2
+fedmsg <= 1.1.2
+flake8 <= 4.0.1
+flask-oidc <= 1.4.0
+mock <= 4.0.3
 pagure-messages >= 0.0.1
-pytest
-pytest-cov
-pytest-xdist
-python-fedora
-trololio
+pytest <= 6.2.5
+pytest-cov <= 4.0.0
+pytest-xdist <= 2.5.0
+
+python-fedora == 1.1.1
+trololio == 1.0
 
 # Seems that mock doesn't list this one
-funcsigs
+funcsigs <= 1.0.2

+ 36 - 31
requirements.txt

@@ -1,42 +1,47 @@
 # Used for when working from a virtualenv.
 # Use this file by running "$ pip install -r requirements.txt"
-alembic
-arrow
-bcrypt
-binaryornot
-bleach
-blinker
-celery
-chardet
-cryptography
-docutils
+alembic <= 1.8.1
+arrow <= 1.2.3
+bcrypt <= 3.2.2
+binaryornot == 0.4.4
+bleach <= 5.0.1
+blinker <= 1.5
+celery <= 5.2.6
+chardet <= 4.0.0
+cryptography <= 36.0.0
+docutils <= 0.17.1
+
+# required for backward compatibility
 email_validator
-flask
-flask-wtf
-kitchen
-markdown
-munch
-Pillow
-psutil
-pygit2 >= 0.26.0
-python3-openid
-python-openid-cla
-python-openid-teams
-redis
-requests
+
+flask <= 2.2.2
+flask-wtf <= 1.0.0
+kitchen == 1.2.6
+markdown <= 3.3.7
+munch <= 2.5.0
+Pillow <= 9.2.0
+psutil <= 5.9.2
+pygit2 >= 0.26.0, <=1.8.0
+python3-openid <= 3.2.0
+python-openid-cla == 1.2
+python-openid-teams == 1.1
+redis <= 3.5.3
+requests <= 2.28.1
+six <= 1.16.0
+
+# required for backward compatibility
 setuptools
-six
-# sqlalchemy minimum 0.8
-sqlalchemy >= 0.8
-straight.plugin >= 1.5.0
-whitenoise
-wtforms
+
+sqlalchemy >= 0.8, <=1.4.46
+straight.plugin == 1.5.0
+whitenoise <= 6.2.0
+wtforms <= 3.0.1
 
 # Required only for the `oidc` authentication backend
-# flask-oidc
+# flask-oidc <= 1.4.0
 
 # Required only if `USE_FLASK_SESSION_EXT` is set to `True`
 # flask-session
 
 # Required only for the `fas` and `openid` authentication backends
-# python-fedora
+# python-fedora == 1.1.1