Pin SQLAlchemy to <2.0.0

Rally code is not compatible with SQLAlchemy-2.0.0,
until it's compatible let's pin it.

CI jobs are broken with multiple errors, so to get
this in also need following fixes:-
- Remove python-dev from bindep to fix announce-release
  and docs jobs
- Update upper-constraints for testtools to 2.5.0 to fix
  issues with python3.10+
- Update tox.ini for tox4 compatibility
- Ignore warnings introdueced with oslo.db-12.1.0,
  SQLAlchemy-1.4.46
- Make tox-cover job non-voting as to get it passing
  coverage report need to succeed for previous commit,
  which will not succeed without the required changes
  in this patch. It will be made voting again in follow
  up patch.

Related-Bug: #2004022
Change-Id: Ifcffd11e300e1485fdbfa54b23bcdcaa6ad61011
This commit is contained in:
yatinkarel 2023-01-27 19:52:08 +05:30
parent 03155a82e2
commit 14d449b2f1
5 changed files with 21 additions and 8 deletions

View File

@ -6,7 +6,8 @@
rtd_webhook_id: "52691"
check:
jobs:
- rally-tox-cover
- rally-tox-cover:
voting: false
- rally-tox-docs
- rally-tox-pep8
- rally-tox-py36
@ -24,7 +25,7 @@
- rally-docker-build
gate:
jobs:
- rally-tox-cover
#- rally-tox-cover
- rally-tox-docs
- rally-tox-pep8
- rally-tox-py36

View File

@ -13,7 +13,6 @@ libxml2-devel [platform:rpm]
libxslt1-dev [platform:dpkg]
libxslt-devel [platform:rpm]
openssl-devel [platform:rpm]
python-dev [platform:dpkg]
python3-devel [platform:rpm]
redhat-rpm-config [platform:rpm !platform:suse]
iputils-ping [platform:dpkg]

View File

@ -19,5 +19,5 @@ pyOpenSSL # Apache License, Version
PyYAML # MIT
python-subunit # Apache-2.0 or BSD
requests!=2.20.0,!=2.24.0 # Apache License, Version 2.0
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8 # MIT
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,<2.0.0 # MIT
virtualenv!=16.3.0 # MIT

19
tox.ini
View File

@ -1,6 +1,5 @@
[tox]
minversion = 3.2.0
skipsdist = True
ignore_basepython_conflict = true
envlist = py36,py37,py38,pep8,samples
@ -13,7 +12,7 @@ setenv = VIRTUAL_ENV={envdir}
LC_ALL=C
PYTHONHASHSEED=0
TOX_ENV_NAME={envname}
whitelist_externals = find
allowlist_externals = find
rm
make
deps = -r{toxinidir}/requirements.txt
@ -25,7 +24,14 @@ commands =
python {toxinidir}/tests/ci/pytest_launcher.py tests/unit --posargs={posargs}
distribute = false
basepython = python3.6
passenv = PYTEST_REPORT http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
passenv =
PYTEST_REPORT
http_proxy
HTTP_PROXY
https_proxy
HTTPS_PROXY
no_proxy
NO_PROXY
[testenv:pep8]
commands = flake8
@ -71,6 +77,7 @@ commands =
[testenv:cover]
commands = {toxinidir}/tests/ci/cover.sh {posargs}
allowlist_externals = {toxinidir}/tests/ci/cover.sh
[testenv:docs]
# min py3.6
@ -152,6 +159,10 @@ commands = \
filterwarnings =
error
ignore:.*EngineFacade is deprecated; please use oslo_db.sqlalchemy.enginefacade*:
# Introduced with oslo.db-12.1.0
ignore:.*Support for the MySQL NDB Cluster storage engine has been deprecated and will be removed in a future release.:DeprecationWarning:
# Introuduced with SQLAlchemy-1.4.46, can be removed when rally supports SQLAlchemy>=2.0.0
ignore:.*Set environment variable SQLALCHEMY_SILENCE_UBER_WARNING=1 to silence this message.*
# instead of ignoring all modules, let's list only libraries that are failing
ignore:invalid escape sequence:DeprecationWarning:.*netaddr.*
ignore:invalid escape sequence:DeprecationWarning:.*prettytable
@ -166,3 +177,5 @@ filterwarnings =
ignore:Using or importing the ABCs:DeprecationWarning:unittest2.*
# python 3.8
ignore:::.*netaddr.strategy.*
# pytest-cov
ignore:The --rsyncdir command line argument and rsyncdirs config variable are deprecated.:DeprecationWarning:

View File

@ -60,7 +60,7 @@ stevedore===3.3.0
Tempita===0.5.2
testresources===2.0.1
testscenarios===0.5.0
testtools===2.4.0
testtools===2.5.0
traceback2===1.4.0
typing-extensions===3.10.0.0
unittest2===1.1.0