Skip to content

Commit 88ab3ea

Browse files
committed
Test against Click 8.2
1 parent 228858f commit 88ab3ea

File tree

7 files changed

+59
-27
lines changed

7 files changed

+59
-27
lines changed

.github/workflows/python_ci.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ jobs:
3131
- {python-version: "3.7", testenvs: "py37-click{7,8.0,8.1},build", experimental: False}
3232
- {python-version: "3.8", testenvs: "py38-click{7,8.0,8.1},build", experimental: False}
3333
- {python-version: "3.9", testenvs: "py39-click{7,8.0,8.1},build", experimental: False}
34-
- {python-version: "3.10", testenvs: "py310-click{7,8.0,8.1},build", experimental: False}
35-
- {python-version: "3.11", testenvs: "py311-click{7,8.0,8.1},build", experimental: False}
36-
- {python-version: "3.12", testenvs: "py312-click{7,8.0,8.1},build", experimental: False}
37-
- {python-version: "3.13", testenvs: "py313-click{7,8.0,8.1},build", experimental: False}
34+
- {python-version: "3.10", testenvs: "py310-click{7,8.0,8.1,8.2},build", experimental: False}
35+
- {python-version: "3.11", testenvs: "py311-click{7,8.0,8.1,8.2},build", experimental: False}
36+
- {python-version: "3.12", testenvs: "py312-click{7,8.0,8.1,8.2},build", experimental: False}
37+
- {python-version: "3.13", testenvs: "py313-click{7,8.0,8.1,8.2},build", experimental: False}
3838
- {python-version: "pypy-3.7", testenvs: "pypy37-click{7,8.0,8.1},build", experimental: False}
3939
- {python-version: "pypy-3.8", testenvs: "pypy38-click{7,8.0,8.1},build", experimental: False}
4040
- {python-version: "pypy-3.9-v7.3.15", testenvs: "pypy39-click{7,8.0,8.1},build", experimental: True}

.github/workflows/python_ci_linux.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ jobs:
3232
- {python-version: "3.7", testenvs: "py37-click{7,8.0,8.1},build", experimental: False}
3333
- {python-version: "3.8", testenvs: "py38-click{7,8.0,8.1},build", experimental: False}
3434
- {python-version: "3.9", testenvs: "py39-click{7,8.0,8.1},build", experimental: False}
35-
- {python-version: "3.10", testenvs: "py310-click{7,8.0,8.1},build", experimental: False}
36-
- {python-version: "3.11", testenvs: "py311-click{7,8.0,8.1},build", experimental: False}
37-
- {python-version: "3.12", testenvs: "py312-click{7,8.0,8.1},build", experimental: False}
38-
- {python-version: "3.13", testenvs: "py313-click{7,8.0,8.1},build", experimental: False}
35+
- {python-version: "3.10", testenvs: "py310-click{7,8.0,8.1,8.2},build", experimental: False}
36+
- {python-version: "3.11", testenvs: "py311-click{7,8.0,8.1,8.2},build", experimental: False}
37+
- {python-version: "3.12", testenvs: "py312-click{7,8.0,8.1,8.2},build", experimental: False}
38+
- {python-version: "3.13", testenvs: "py313-click{7,8.0,8.1,8.2},build", experimental: False}
3939
- {python-version: "pypy-3.7", testenvs: "pypy37-click{7,8.0,8.1},build", experimental: False}
4040
- {python-version: "pypy-3.8", testenvs: "pypy38-click{7,8.0,8.1},build", experimental: False}
4141
- {python-version: "pypy-3.9", testenvs: "pypy39-click{7,8.0,8.1},build", experimental: True}

.github/workflows/python_ci_macos.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ jobs:
3131
- {python-version: "3.7", os-ver: "13", testenvs: "py37-click{7,8.0,8.1},build", experimental: False}
3232
- {python-version: "3.8", os-ver: "14", testenvs: "py38-click{7,8.0,8.1},build", experimental: False}
3333
- {python-version: "3.9", os-ver: "14", testenvs: "py39-click{7,8.0,8.1},build", experimental: False}
34-
- {python-version: "3.10", os-ver: "14", testenvs: "py310-click{7,8.0,8.1},build", experimental: False}
35-
- {python-version: "3.11", os-ver: "14", testenvs: "py311-click{7,8.0,8.1},build", experimental: False}
36-
- {python-version: "3.12", os-ver: "14", testenvs: "py312-click{7,8.0,8.1},build", experimental: False}
37-
- {python-version: "3.13", os-ver: "14", testenvs: "py313-click{7,8.0,8.1},build", experimental: False}
34+
- {python-version: "3.10", os-ver: "14", testenvs: "py310-click{7,8.0,8.1,8.2},build", experimental: False}
35+
- {python-version: "3.11", os-ver: "14", testenvs: "py311-click{7,8.0,8.1,8.2},build", experimental: False}
36+
- {python-version: "3.12", os-ver: "14", testenvs: "py312-click{7,8.0,8.1,8.2},build", experimental: False}
37+
- {python-version: "3.13", os-ver: "14", testenvs: "py313-click{7,8.0,8.1,8.2},build", experimental: False}
3838
- {python-version: "pypy-3.7", os-ver: "13", testenvs: "pypy37-click{7,8.0,8.1},build", experimental: False}
3939
- {python-version: "pypy-3.8", os-ver: "14", testenvs: "pypy38-click{7,8.0,8.1},build", experimental: False}
4040
- {python-version: "pypy-3.9", os-ver: "14", testenvs: "pypy39-click{7,8.0,8.1},build", experimental: True}

repo_helper.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,33 @@ conda_channels:
2323

2424
python_versions:
2525
'3.7':
26+
matrix_exclude:
27+
click:
28+
- 8.2
2629
'3.8':
30+
matrix_exclude:
31+
click:
32+
- 8.2
2733
'3.9':
34+
matrix_exclude:
35+
click:
36+
- 8.2
2837
'3.10':
2938
'3.11':
3039
'3.12':
3140
'3.13':
3241
pypy37:
42+
matrix_exclude:
43+
click:
44+
- 8.2
3345
pypy38:
46+
matrix_exclude:
47+
click:
48+
- 8.2
3449
pypy39:
50+
matrix_exclude:
51+
click:
52+
- 8.2
3553

3654
keywords:
3755
- formatting
@@ -95,3 +113,4 @@ third_party_version_matrix:
95113
- 7
96114
- 8.0
97115
- 8.1
116+
- 8.2

tests/test_click_version.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# stdlib
2+
import os
3+
import re
4+
5+
# 3rd party
6+
from domdf_python_tools.compat import importlib_metadata
7+
8+
9+
def test_click_version_against_tox():
10+
m = re.match(r"py.*-click(\d)\.(\d)", os.getenv("TOX_ENV_NAME", ''))
11+
if m is not None:
12+
target_version = tuple(map(int, m.groups()))
13+
click_version = tuple(map(int, importlib_metadata.version("click").split('.')[:2]))
14+
assert target_version == click_version

tests/test_integration.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from coincidence.regressions import AdvancedDataRegressionFixture, AdvancedFileRegressionFixture
1010
from coincidence.selectors import max_version, min_version, not_pypy, only_pypy
1111
from consolekit.terminal_colours import strip_ansi
12-
from consolekit.testing import CliRunner, Result
12+
from consolekit.testing import CliRunner, Result, click_version
1313
from domdf_python_tools.paths import PathPlus, in_directory
1414

1515
# this package
@@ -338,7 +338,7 @@ def test_cli_syntax_error_py310(
338338
check_out(result, advanced_data_regression)
339339

340340

341-
@pytest.mark.skipif(click.__version__.split('.')[0] != '7', reason="Output differs on Click 8")
341+
@pytest.mark.skipif(click_version[0] != 7, reason="Output differs on Click 8")
342342
def test_cli_no_config(
343343
tmp_pathplus: PathPlus,
344344
advanced_data_regression: AdvancedDataRegressionFixture,
@@ -355,7 +355,7 @@ def test_cli_no_config(
355355
check_out(result, advanced_data_regression)
356356

357357

358-
@pytest.mark.skipif(click.__version__.split('.')[0] == '7', reason="Output differs on Click 8")
358+
@pytest.mark.skipif(click_version[0] == 7, reason="Output differs on Click 8")
359359
def test_cli_no_config_click8(
360360
tmp_pathplus: PathPlus,
361361
advanced_data_regression: AdvancedDataRegressionFixture,

tox.ini

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,10 @@ envlist =
2626
py37-click{7,8.0,8.1}
2727
py38-click{7,8.0,8.1}
2828
py39-click{7,8.0,8.1}
29-
py310-click{7,8.0,8.1}
30-
py311-click{7,8.0,8.1}
31-
py312-click{7,8.0,8.1}
32-
py313-click{7,8.0,8.1}
29+
py310-click{7,8.0,8.1,8.2}
30+
py311-click{7,8.0,8.1,8.2}
31+
py312-click{7,8.0,8.1,8.2}
32+
py313-click{7,8.0,8.1,8.2}
3333
pypy37-click{7,8.0,8.1}
3434
pypy38-click{7,8.0,8.1}
3535
pypy39-click{7,8.0,8.1}
@@ -48,10 +48,10 @@ test =
4848
py37-click{7,8.0,8.1}
4949
py38-click{7,8.0,8.1}
5050
py39-click{7,8.0,8.1}
51-
py310-click{7,8.0,8.1}
52-
py311-click{7,8.0,8.1}
53-
py312-click{7,8.0,8.1}
54-
py313-click{7,8.0,8.1}
51+
py310-click{7,8.0,8.1,8.2}
52+
py311-click{7,8.0,8.1,8.2}
53+
py312-click{7,8.0,8.1,8.2}
54+
py313-click{7,8.0,8.1,8.2}
5555
pypy37-click{7,8.0,8.1}
5656
pypy38-click{7,8.0,8.1}
5757
pypy39-click{7,8.0,8.1}
@@ -68,6 +68,7 @@ deps =
6868
click7: click~=7.0
6969
click8.0: click~=8.0.0
7070
click8.1: click~=8.1.0
71+
click8.2: click~=8.2.0
7172
commands =
7273
python --version
7374
python -m pytest --cov=formate -r aR tests/ {posargs}
@@ -82,7 +83,6 @@ download = True
8283
setenv =
8384
PYTHONDEVMODE=1
8485
PIP_DISABLE_PIP_VERSION_CHECK=1
85-
UNSAFE_PYO3_SKIP_VERSION_CHECK=1
8686

8787
[testenv:py312]
8888
download = True
@@ -247,15 +247,14 @@ filterwarnings =
247247
ignore:lib2to3 package is deprecated and may not be able to parse Python 3.10+:PendingDeprecationWarning
248248
always:ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead:DeprecationWarning
249249
250-
[testenv:py312-click{7,8.0,8.1}]
250+
[testenv:py312-click{7,8.0,8.1,8.2}]
251251
download = True
252252
setenv =
253253
PYTHONDEVMODE=1
254254
PIP_DISABLE_PIP_VERSION_CHECK=1
255255
256-
[testenv:py313-click{7,8.0,8.1}]
256+
[testenv:py313-click{7,8.0,8.1,8.2}]
257257
download = True
258258
setenv =
259259
PYTHONDEVMODE=1
260260
PIP_DISABLE_PIP_VERSION_CHECK=1
261-
UNSAFE_PYO3_SKIP_VERSION_CHECK=1

0 commit comments

Comments
 (0)