diff --git a/.github/workflows/tox.yaml b/.github/workflows/tox.yaml index 2e50218e..8182e6b4 100644 --- a/.github/workflows/tox.yaml +++ b/.github/workflows/tox.yaml @@ -9,7 +9,10 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.8', '3.10', '3.11', '3.12'] + python-version: + - '3.8' # focal + - '3.10' # jammy + - '3.12' # noble steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} diff --git a/setup.py b/setup.py index 91739dda..b93f897c 100644 --- a/setup.py +++ b/setup.py @@ -25,16 +25,13 @@ version = "0.0.1.dev1" install_require = [ + 'importlib-metadata<8.0.0', # compatible with py38 + 'setuptools_scm<8.2.0', # https://github.com/canonical/charmcraft/pull/2275 'aiohttp<4.0.0', # aiohttp/_http_parser.c:16227:5: error: lvalue required as increment operand 'oslo.config<6.12.0', # pin at stable/train to retain Py3.5 support 'async_generator', - - # Newer versions require a Rust compiler to build, see - # * https://github.com/openstack-charmers/zaza/issues/421 - # * https://mail.python.org/pipermail/cryptography-dev/2021-January/001003.html - 'cryptography<3.4', - - 'hvac<0.7.0', + 'cryptography', + 'hvac', 'jinja2', 'juju-wait', 'PyYAML', diff --git a/test-requirements.txt b/test-requirements.txt index 5557c6f9..cce41cee 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -1,8 +1,8 @@ aiounittest +pydocstyle<4.0.0 flake8>=5 # Python 3.8 compatibility in pyflakes 2.1.0+ flake8-docstrings flake8-per-file-ignores -pydocstyle<4.0.0 coverage mock>=1.2 pytest diff --git a/tox.ini b/tox.ini index f6423005..0c62fa97 100644 --- a/tox.ini +++ b/tox.ini @@ -21,6 +21,7 @@ passenv = deps = -c{env:PIP_CONSTRAINTS:{toxinidir}/constraints-juju29.txt} -r{toxinidir}/test-requirements.txt +install_command = python -I -m pip install --no-binary ":all:" {opts} {packages} commands = pytest --cov=./zaza/ {posargs} {toxinidir}/unit_tests [testenv:.pkg]