Skip to content

Commit fea58d1

Browse files
committed
Test on Python 3.12
1 parent 2374e3b commit fea58d1

File tree

7 files changed

+29
-15
lines changed

7 files changed

+29
-15
lines changed

.github/workflows/python_ci.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
runs-on: "windows-2019"
2323
continue-on-error: ${{ matrix.config.experimental }}
2424
env:
25-
USING_COVERAGE: '3.6,3.7,3.8,3.9,3.10,3.11,pypy-3.6,pypy-3.7,pypy-3.8,pypy-3.9'
25+
USING_COVERAGE: '3.6,3.7,3.8,3.9,3.10,3.11,3.12.0-alpha.3,pypy-3.6,pypy-3.7,pypy-3.8,pypy-3.9'
2626

2727
strategy:
2828
fail-fast: False
@@ -33,7 +33,8 @@ jobs:
3333
- {python-version: "3.8", testenvs: "py38-click{7.1,8.0,8.1},build", experimental: False}
3434
- {python-version: "3.9", testenvs: "py39-click{7.1,8.0,8.1},build", experimental: False}
3535
- {python-version: "3.10", testenvs: "py310-click{7.1,8.0,8.1},build", experimental: False}
36-
- {python-version: "3.11", testenvs: "py311-dev-click{7.1,8.0,8.1},build", experimental: True}
36+
- {python-version: "3.11", testenvs: "py311-click{7.1,8.0,8.1},build", experimental: False}
37+
- {python-version: "3.12.0-alpha.3", testenvs: "py312-dev-click{7.1,8.0,8.1},build", experimental: True}
3738
- {python-version: "pypy-3.6", testenvs: "pypy36-click{7.1,8.0},build", experimental: False}
3839
- {python-version: "pypy-3.7", testenvs: "pypy37-click{7.1,8.0,8.1},build", experimental: True}
3940
- {python-version: "pypy-3.8", testenvs: "pypy38-click{7.1,8.0,8.1},build", experimental: True}

.github/workflows/python_ci_linux.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
runs-on: "ubuntu-20.04"
2424
continue-on-error: ${{ matrix.config.experimental }}
2525
env:
26-
USING_COVERAGE: '3.6,3.7,3.8,3.9,3.10,3.11,pypy-3.6,pypy-3.7,pypy-3.8,pypy-3.9'
26+
USING_COVERAGE: '3.6,3.7,3.8,3.9,3.10,3.11,3.12.0-alpha.3,pypy-3.6,pypy-3.7,pypy-3.8,pypy-3.9'
2727

2828
strategy:
2929
fail-fast: False
@@ -34,7 +34,8 @@ jobs:
3434
- {python-version: "3.8", testenvs: "py38-click{7.1,8.0,8.1},build", experimental: False}
3535
- {python-version: "3.9", testenvs: "py39-click{7.1,8.0,8.1},build", experimental: False}
3636
- {python-version: "3.10", testenvs: "py310-click{7.1,8.0,8.1},build", experimental: False}
37-
- {python-version: "3.11", testenvs: "py311-dev-click{7.1,8.0,8.1},build", experimental: True}
37+
- {python-version: "3.11", testenvs: "py311-click{7.1,8.0,8.1},build", experimental: False}
38+
- {python-version: "3.12.0-alpha.3", testenvs: "py312-dev-click{7.1,8.0,8.1},build", experimental: True}
3839
- {python-version: "pypy-3.6", testenvs: "pypy36-click{7.1,8.0},build", experimental: False}
3940
- {python-version: "pypy-3.7", testenvs: "pypy37-click{7.1,8.0,8.1},build", experimental: True}
4041
- {python-version: "pypy-3.8", testenvs: "pypy38-click{7.1,8.0,8.1},build", experimental: True}

.github/workflows/python_ci_macos.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
runs-on: "macos-latest"
2323
continue-on-error: ${{ matrix.config.experimental }}
2424
env:
25-
USING_COVERAGE: '3.6,3.7,3.8,3.9,3.10,3.11,pypy-3.7,pypy-3.8,pypy-3.9'
25+
USING_COVERAGE: '3.6,3.7,3.8,3.9,3.10,3.11,3.12.0-alpha.3,pypy-3.7,pypy-3.8,pypy-3.9'
2626

2727
strategy:
2828
fail-fast: False
@@ -33,7 +33,8 @@ jobs:
3333
- {python-version: "3.8", testenvs: "py38-click{7.1,8.0,8.1},build", experimental: False}
3434
- {python-version: "3.9", testenvs: "py39-click{7.1,8.0,8.1},build", experimental: False}
3535
- {python-version: "3.10", testenvs: "py310-click{7.1,8.0,8.1},build", experimental: False}
36-
- {python-version: "3.11", testenvs: "py311-dev-click{7.1,8.0,8.1},build", experimental: True}
36+
- {python-version: "3.11", testenvs: "py311-click{7.1,8.0,8.1},build", experimental: False}
37+
- {python-version: "3.12.0-alpha.3", testenvs: "py312-dev-click{7.1,8.0,8.1},build", experimental: True}
3738
- {python-version: "pypy-3.7", testenvs: "pypy37-click{7.1,8.0,8.1},build", experimental: True}
3839
- {python-version: "pypy-3.8", testenvs: "pypy38-click{7.1,8.0,8.1},build", experimental: True}
3940
- {python-version: "pypy-3.9", testenvs: "pypy39-click{7.1,8.0,8.1}", experimental: True}

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ base-classifiers = [
3434
"Intended Audience :: Developers",
3535
"Typing :: Typed",
3636
]
37-
python-versions = [ "3.6", "3.7", "3.8", "3.9", "3.10",]
37+
python-versions = [ "3.6", "3.7", "3.8", "3.9", "3.10", "3.11",]
3838
python-implementations = [ "CPython", "PyPy",]
3939
platforms = [ "Windows", "macOS", "Linux",]
4040
license-key = "MIT"

repo_helper.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ python_versions:
2727
3.8:
2828
3.9:
2929
'3.10':
30-
3.11-dev:
30+
'3.11':
31+
3.12-dev:
3132
pypy36:
3233
matrix_exclude:
3334
click:

tests/test_importcheck.py

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@
66
# 3rd party
77
import pytest
88
from coincidence.regressions import AdvancedDataRegressionFixture, AdvancedFileRegressionFixture
9-
from coincidence.selectors import only_version
10-
from domdf_python_tools.paths import PathPlus
9+
from coincidence.selectors import min_version, only_version
1110

1211
# this package
1312
from importcheck import ImportChecker
@@ -24,7 +23,6 @@
2423
)
2524
@pytest.mark.parametrize("show", [True, False])
2625
def test_importchecker(
27-
tmp_pathplus: PathPlus,
2826
advanced_file_regression: AdvancedFileRegressionFixture,
2927
advanced_data_regression: AdvancedDataRegressionFixture,
3028
modules: Iterable[str],
@@ -45,12 +43,11 @@ def test_importchecker(
4543
pytest.param(3.8, marks=only_version(3.8, reason="Output differs on Python 3.8")),
4644
pytest.param(3.9, marks=only_version(3.9, reason="Output differs on Python 3.9")),
4745
pytest.param("3.10", marks=only_version("3.10", reason="Output differs on Python 3.10")),
48-
pytest.param("3.11", marks=only_version("3.11", reason="Output differs on Python 3.11")),
46+
pytest.param("3.11", marks=min_version("3.11", reason="Output differs on Python 3.11")),
4947
]
5048
)
5149
@pytest.mark.parametrize("show", [True, False])
5250
def test_importchecker_errors_show(
53-
tmp_pathplus: PathPlus,
5451
advanced_file_regression: AdvancedFileRegressionFixture,
5552
advanced_data_regression: AdvancedDataRegressionFixture,
5653
version: str,

tox.ini

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
# * tox
44
# * envlists
55
# * testenv
6+
# * testenv:py312-dev
67
# * testenv:docs
78
# * testenv:build
89
# * testenv:lint
@@ -23,7 +24,8 @@ envlist =
2324
py38-click{7.1,8.0,8.1}
2425
py39-click{7.1,8.0,8.1}
2526
py310-click{7.1,8.0,8.1}
26-
py311-dev-click{7.1,8.0,8.1}
27+
py311-click{7.1,8.0,8.1}
28+
py312-dev-click{7.1,8.0,8.1}
2729
pypy36-click{7.1,8.0}
2830
pypy37-click{7.1,8.0,8.1}
2931
pypy38-click{7.1,8.0,8.1}
@@ -45,7 +47,8 @@ test =
4547
py38-click{7.1,8.0,8.1}
4648
py39-click{7.1,8.0,8.1}
4749
py310-click{7.1,8.0,8.1}
48-
py311-dev-click{7.1,8.0,8.1}
50+
py311-click{7.1,8.0,8.1}
51+
py312-dev-click{7.1,8.0,8.1}
4952
pypy36-click{7.1,8.0}
5053
pypy37-click{7.1,8.0,8.1}
5154
pypy38-click{7.1,8.0,8.1}
@@ -67,6 +70,11 @@ commands =
6770
python --version
6871
python -m pytest --cov=importcheck -r aR tests/ {posargs}
6972

73+
[testenv:py312-dev]
74+
setenv =
75+
PYTHONDEVMODE=1
76+
PIP_DISABLE_PIP_VERSION_CHECK=1
77+
7078
[testenv:docs]
7179
setenv = SHOW_TODOS = 1
7280
passenv = SPHINX_BUILDER
@@ -210,3 +218,8 @@ package = importcheck
210218
[pytest]
211219
addopts = --color yes --durations 25
212220
timeout = 300
221+
222+
[testenv:py312-dev-click{7.1,8.0,8.1}]
223+
setenv =
224+
PYTHONDEVMODE=1
225+
PIP_DISABLE_PIP_VERSION_CHECK=1

0 commit comments

Comments
 (0)