Skip to content

Commit

Permalink
test with Python 3.11
Browse files Browse the repository at this point in the history
  • Loading branch information
mr-c committed Sep 29, 2022
1 parent fb816b4 commit 88fa3e4
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 42 deletions.
17 changes: 14 additions & 3 deletions .github/workflows/ci-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ jobs:
tox:
name: CI tests via Tox

runs-on: ubuntu-20.04
runs-on: ubuntu-20.04 # 22.04 doesn't support Python 3.6

strategy:
matrix:
py-ver-major: [3]
py-ver-minor: [6, 7, 8, 9, 10]
py-ver-minor: [6, 7, 8, 9, 10, 11]
step: [lint, unit, bandit, mypy]
exclude:
- py-ver-major: 3
Expand All @@ -51,6 +51,7 @@ jobs:
run: sudo usermod -c 'CI Runner' $(whoami)

- name: Set up Python
if: matrix.py-ver-minor != 11
uses: actions/setup-python@v4
with:
python-version: ${{ env.py-semver }}
Expand All @@ -59,6 +60,16 @@ jobs:
requirements.txt
tox.ini
- name: Set up Python 3.11.0-rc.2
if: matrix.py-ver-minor == 11
uses: actions/setup-python@v4
with:
python-version: 3.11.0-rc.2
cache: pip
cache-dependency-path: |
requirements.txt
tox.ini
- name: Upgrade setuptools and install tox
run: |
pip install -U pip setuptools wheel
Expand Down Expand Up @@ -156,7 +167,7 @@ jobs:
release_test:
name: cwltool release test

runs-on: ubuntu-20.04
runs-on: ubuntu-22.04

steps:
- uses: actions/checkout@v3
Expand Down
1 change: 1 addition & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Bio-Informatics",
"Topic :: Scientific/Engineering :: Astronomy",
Expand Down
79 changes: 40 additions & 39 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
[tox]
envlist =
py3{6,7,8,9,10}-lint
py3{6,7,8,9,10}-unit
py3{6,7,8,9,10}-bandit
py3{7,8,9,10}-mypy
py39-lintreadme
py39-shellcheck
py39-pydocstyle
py3{6,7,8,9,10,11}-lint
py3{6,7,8,9,10,11}-unit
py3{6,7,8,9,10,11}-bandit
py3{7,8,9,10,11}-mypy
py310-lintreadme
py310-shellcheck
py310-pydocstyle

skip_missing_interpreters = True

Expand All @@ -21,60 +21,61 @@ python =
3.8: py38
3.9: py39
3.10: py310
3.11: py311

[testenv]
skipsdist =
py3{6,7,8,9,10}-!{unit,mypy,lintreadme} = True
py3{6,7,8,9,10,11}-!{unit,mypy,lintreadme} = True

description =
py3{6,7,8,9,10}-unit: Run the unit tests
py3{6,7,8,9,10}-lint: Lint the Python code
py3{6,7,8,9,10}-bandit: Search for common security issues
py3{7,8,9,10}-mypy: Check for type safety
py39-pydocstyle: docstring style checker
py39-shellcheck: syntax check for shell scripts
py39-lintreadme: Lint the README.rst→.md conversion
py3{6,7,8,9,10,11}-unit: Run the unit tests
py3{6,7,8,9,10,11}-lint: Lint the Python code
py3{6,7,8,9,10,11}-bandit: Search for common security issues
py3{7,8,9,10,11}-mypy: Check for type safety
py310-pydocstyle: docstring style checker
py310-shellcheck: syntax check for shell scripts
py310-lintreadme: Lint the README.rst→.md conversion

passenv =
CI
GITHUB_*
PROOT_NO_SECCOMP

extras =
py3{6,7,8,9,10}-unit: deps
py3{6,7,8,9,10,11}-unit: deps

deps =
py3{6,7,8,9,10}-{unit,lint,bandit,mypy}: -rrequirements.txt
py3{6,7,8,9,10}-{unit,mypy}: -rtest-requirements.txt
py3{6,7,8,9,10}-lint: -rlint-requirements.txt
py3{6,7,8,9,10}-bandit: bandit
py3{6,7,8,9,10}-bandit: importlib_metadata != 4.8.0
py3{7,8,9,10}-mypy: -rmypy-requirements.txt
py39-pydocstyle: pydocstyle
py39-pydocstyle: diff-cover
py39-lintreadme: twine
py39-lintreadme: wheel
py39-lintreadme: readme_renderer[md]
py3{6,7,8,9,10,11}-{unit,lint,bandit,mypy}: -rrequirements.txt
py3{6,7,8,9,10,11}-{unit,mypy}: -rtest-requirements.txt
py3{6,7,8,9,10,11}-lint: -rlint-requirements.txt
py3{6,7,8,9,10,11}-bandit: bandit
py3{6,7,8,9,10,11}-bandit: importlib_metadata != 4.8.0
py3{7,8,9,10,11}-mypy: -rmypy-requirements.txt
py310-pydocstyle: pydocstyle
py310-pydocstyle: diff-cover
py310-lintreadme: twine
py310-lintreadme: wheel
py310-lintreadme: readme_renderer[md]

setenv =
py3{6,7,8,9,10}-unit: LC_ALL = C.UTF-8
py3{6,7,8,9,10,11}-unit: LC_ALL = C.UTF-8

commands_pre =
py3{6,7,8,9,10}-unit: python -m pip install -U pip setuptools wheel
py39-lintreadme: python setup.py sdist --dist-dir {distdir}
py39-lintreadme: python setup.py bdist_wheel --dist-dir {distdir}
py3{6,7,8,9,10,11}-unit: python -m pip install -U pip setuptools wheel
py310-lintreadme: python setup.py sdist --dist-dir {distdir}
py310-lintreadme: python setup.py bdist_wheel --dist-dir {distdir}

commands =
py3{6,7,8,9,10}-unit: make coverage-report coverage.xml PYTEST_EXTRA={posargs}
py3{6,7,8,9,10}-bandit: bandit -r cwltool
py3{6,7,8,9,10}-lint: make flake8 format-check codespell
py3{7,8,9,10}-mypy: make mypy mypyc PYTEST_EXTRA={posargs}
py3{6,7,8,9,10,11}-unit: make coverage-report coverage.xml PYTEST_EXTRA={posargs}
py3{6,7,8,9,10,11}-bandit: bandit -r cwltool
py3{6,7,8,9,10,11}-lint: make flake8 format-check codespell
py3{7,8,9,10,11}-mypy: make mypy mypyc PYTEST_EXTRA={posargs}
py37-mypy: make mypy_3.6
py39-shellcheck: make shellcheck
py39-pydocstyle: make diff_pydocstyle_report
py39-lintreadme: twine check {distdir}/*
py310-shellcheck: make shellcheck
py310-pydocstyle: make diff_pydocstyle_report
py310-lintreadme: twine check {distdir}/*

skip_install =
py3{6,7,8,9,10}-{bandit,lint,mypy,shellcheck,pydocstyle,lintreadme}: true
py3{6,7,8,9,10,11}-{bandit,lint,mypy,shellcheck,pydocstyle,lintreadme}: true

allowlist_externals = make

0 comments on commit 88fa3e4

Please sign in to comment.