Skip to content

Commit b073c32

Browse files
committed
test with Python 3.13.0-rc.1
no mypyc support yet fixup
1 parent 19ac14b commit b073c32

File tree

3 files changed

+37
-43
lines changed

3 files changed

+37
-43
lines changed

.github/workflows/ci-tests.yml

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,10 @@ jobs:
2020
strategy:
2121
matrix:
2222
py-ver-major: [3]
23-
py-ver-minor: [8, 9, 10, 11, 12]
24-
step: [lint, unit, mypy, memleak]
23+
py-ver-minor: [8, 9, 10, 11, 12, "13.0-rc.1"]
2524

2625
env:
2726
py-semver: ${{ format('{0}.{1}', matrix.py-ver-major, matrix.py-ver-minor) }}
28-
TOXENV: ${{ format('py{0}{1}-{2}', matrix.py-ver-major, matrix.py-ver-minor, matrix.step) }}
2927

3028
steps:
3129
- uses: actions/checkout@v4
@@ -47,7 +45,6 @@ jobs:
4745
pip install 'tox<4' tox-gh-actions
4846
4947
- name: MyPy cache
50-
if: ${{ matrix.step == 'mypy' }}
5148
uses: actions/cache@v4
5249
with:
5350
path: .mypy_cache/${{ env.py-semver }}
@@ -57,7 +54,6 @@ jobs:
5754
run: tox
5855

5956
- name: Upload coverage to Codecov
60-
if: ${{ matrix.step == 'unit' }}
6157
uses: codecov/codecov-action@v4
6258
with:
6359
fail_ci_if_error: true
@@ -75,7 +71,7 @@ jobs:
7571

7672
env:
7773
py-semver: "3.12"
78-
TOXENV: ${{ format('py312-{0}', matrix.step) }}
74+
TOXENV: ${{ matrix.step }}
7975

8076
steps:
8177
- uses: actions/checkout@v4
@@ -86,12 +82,7 @@ jobs:
8682
uses: actions/setup-python@v5
8783
with:
8884
python-version: ${{ env.py-semver }}
89-
90-
- name: Cache for pip
91-
uses: actions/cache@v4
92-
with:
93-
path: ~/.cache/pip
94-
key: ${{ runner.os }}-pip-${{ matrix.step }}-${{ hashFiles('requirements.txt') }}
85+
cache: pip
9586

9687
- name: Upgrade setuptools and install tox
9788
run: |

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@
116116
download_url="https://github.com/common-workflow-language/schema_salad/releases",
117117
ext_modules=ext_modules,
118118
license="Apache 2.0",
119-
python_requires=">=3.8,<3.13",
119+
python_requires=">=3.8,<3.14",
120120
use_scm_version=True,
121121
setup_requires=pytest_runner + ["setuptools_scm>=8.0.4,<9"],
122122
packages=["schema_salad", "schema_salad.tests", "schema_salad.avro"],

tox.ini

Lines changed: 33 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
[tox]
22
envlist =
3-
py3{8,9,10,11,12}-lint,
4-
py3{8,9,10,11,12}-unit,
5-
py3{8,9,10,11,12}-mypy,
3+
py3{8,9,10,11,12,13}-lint,
4+
py3{8,9,10,11,12,13}-unit,
5+
py3{8,9,10,11,12,13}-mypy,
66
py3{8,9,10,11,12}-memleak,
7-
py312-lintreadme,
8-
py312-pydocstyle
7+
lintreadme,
8+
pydocstyle
99

1010
skip_missing_interpreters = True
1111

@@ -20,59 +20,62 @@ python =
2020
3.10: py310
2121
3.11: py311
2222
3.12: py312
23+
3.13: py313
2324

2425
[testenv]
2526
description =
26-
py3{8,9,10,11,12}-unit: Run the unit tests
27-
py3{8,9,10,11,12}-lint: Lint the Python code and search for common security issues
28-
py3{8,9,10,11,12}-mypy: Check for type safety
27+
py3{8,9,10,11,12,13}-unit: Run the unit tests
28+
py3{8,9,10,11,12,13}-lint: Lint the Python code and search for common security issues
29+
py3{8,9,10,11,12,13}-mypy: Check for type safety
2930
py3{8,9,10,11,12}-memleak: Simple test for memory leaks with mypyc
30-
py312-pydocstyle: docstring style checker
31-
py312-lintreadme: Lint the README.rst->.md conversion
31+
pydocstyle: docstring style checker
32+
lintreadme: Lint the README.rst->.md conversion
3233

3334
passenv =
3435
CI
3536
GITHUB_*
3637
deps =
37-
py3{8,9,10,11,12}-{unit,mypy}: -rrequirements.txt
38-
py3{8,9,10,11,12}-{unit,mypy}: -rtest-requirements.txt
39-
py3{8,9,10,11,12}-lint: -rlint-requirements.txt
40-
py3{8,9,10,11,12}-{mypy,memleak,lint}: -rmypy-requirements.txt
41-
py3{8,9,10,11,12}-memleak: cwl-utils
42-
py3{8,9,10,11,12}-memleak: objgraph
38+
py3{8,9,10,11,12,13}-{unit,mypy}: -rrequirements.txt
39+
py3{8,9,10,11,12,13}-{unit,mypy}: -rtest-requirements.txt
40+
py3{8,9,10,11,12,13}-lint: -rlint-requirements.txt
41+
py3{8,9,10,11,12,13}-{mypy,memleak,lint}: -rmypy-requirements.txt
42+
py3{8,9,10,11,12,13}-memleak: cwl-utils
43+
py3{8,9,10,11,12,13}-memleak: objgraph
4344
# don't forget to update dev-requirements.txt as well
4445

4546
setenv =
46-
py3{8,9,10,11,12}-unit: LC_ALL = C.UTF-8
47+
py3{8,9,10,11,12,13}-unit: LC_ALL = C.UTF-8
4748

4849
commands =
49-
py3{8,9,10,11,12}-unit: python -m pip install -U pip setuptools wheel
50-
py3{8,9,10,11,12}-unit: make --always-make coverage-report coverage.xml PYTEST_EXTRA="{posargs}"
51-
py3{8,9,10,11,12}-lint: make bandit flake8 format-check diff_pylint_report diff_pydocstyle_report
52-
py3{8,9,10,11,12}-mypy: make mypy mypyc
53-
py3{8,9,10,11,12}-memleak: make mypyi
54-
py3{8,9,10,11,12}-memleak: python schema_salad/tests/memory-leak-check.py schema_salad/tests/test_real_cwl/ICGC-TCGA-PanCancer/complete/preprocess_vcf.cwl
50+
py3{8,9,10,11,12,13}-unit: python -m pip install -U pip setuptools wheel
51+
py3{8,9,10,11,12,13}-unit: make --always-make coverage-report coverage.xml PYTEST_EXTRA="{posargs}"
52+
py3{8,9,10,11,12,13}-lint: make bandit flake8 format-check diff_pylint_report diff_pydocstyle_report
53+
py3{8,9,10,11,12,13}-mypy: make mypy
54+
py3{8,9,10,11,12}-mypy: make mypyc
55+
py3{8,9,10,11,12,13}-memleak: make mypyi
56+
py3{8,9,10,11,12,13}-memleak: python schema_salad/tests/memory-leak-check.py schema_salad/tests/test_real_cwl/ICGC-TCGA-PanCancer/complete/preprocess_vcf.cwl
5557

5658
allowlist_externals =
57-
py3{8,9,10,11,12}-lint: flake8
58-
py3{8,9,10,11,12}-lint: black
59-
py3{8,9,10,11,12}-{mypy,memleak,shellcheck,lint,lintreadme,unit}: make
59+
py3{8,9,10,11,12,13}-lint: flake8
60+
py3{8,9,10,11,12,13}-lint: black
61+
py3{8,9,10,11,12,13}-{mypy,memleak,shellcheck,lint,unit}: make
62+
lintreadme: make
6063

6164
skip_install =
62-
py3{8,9,10,11,12}-lint: true
65+
py3{8,9,10,11,12,13}-lint: true
6366

6467
extras =
65-
py3{8,9,10,11,12}-unit: pycodegen
68+
py3{8,9,10,11,12,13}-unit: pycodegen
6669

67-
[testenv:py312-pydocstyle]
70+
[testenv:pydocstyle]
6871
allowlist_externals = make
6972
commands = make diff_pydocstyle_report
7073
deps =
7174
pydocstyle
7275
diff-cover
7376
skip_install = true
7477

75-
[testenv:py312-lintreadme]
78+
[testenv:lintreadme]
7679
description = Lint the README.rst->.md conversion
7780
commands =
7881
make clean dist

0 commit comments

Comments
 (0)