Skip to content

Commit 5cb6528

Browse files
authored
Merge pull request #18 from jwodder/pyup
Support Python 3.14; drop support for Python 3.8 & 3.9
2 parents aca5c26 + cec9456 commit 5cb6528

File tree

8 files changed

+17
-20
lines changed

8 files changed

+17
-20
lines changed

.github/workflows/test.yml

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,23 +19,20 @@ jobs:
1919
fail-fast: false
2020
matrix:
2121
python-version:
22-
- '3.8'
23-
- '3.9'
2422
- '3.10'
2523
- '3.11'
2624
- '3.12'
2725
- '3.13'
28-
- 'pypy-3.8'
29-
- 'pypy-3.9'
26+
- '3.14'
3027
- 'pypy-3.10'
3128
- 'pypy-3.11'
3229
toxenv:
3330
- py-click8
3431
- py-click81
3532
include:
36-
- python-version: '3.8'
33+
- python-version: '3.10'
3734
toxenv: lint
38-
- python-version: '3.8'
35+
- python-version: '3.10'
3936
toxenv: typing
4037
steps:
4138
- name: Check out repository

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
v0.8.0 (in development)
2+
-----------------------
3+
- Support Python 3.14
4+
- Drop support for Python 3.8 and 3.9
5+
16
v0.7.0 (2025-10-28)
27
-------------------
38
- **Breaking**: In order to use `click-loglevel` with asyncclick, import the

README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ and custom) is also supported.
4444

4545
Installation
4646
============
47-
``click-loglevel`` requires Python 3.8 or higher. Just use `pip
47+
``click-loglevel`` requires Python 3.10 or higher. Just use `pip
4848
<https://pip.pypa.io>`_ for Python 3 (You have pip, right?) to install it::
4949

5050
python3 -m pip install click-loglevel

pyproject.toml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ name = "click-loglevel"
77
dynamic = ["version"]
88
description = "Log level parameter type for Click"
99
readme = "README.rst"
10-
requires-python = ">=3.8"
10+
requires-python = ">=3.10"
1111
license = "MIT"
1212
license-files = ["LICENSE"]
1313
authors = [
@@ -27,12 +27,11 @@ keywords = [
2727
classifiers = [
2828
"Programming Language :: Python :: 3 :: Only",
2929
"Programming Language :: Python :: 3",
30-
"Programming Language :: Python :: 3.8",
31-
"Programming Language :: Python :: 3.9",
3230
"Programming Language :: Python :: 3.10",
3331
"Programming Language :: Python :: 3.11",
3432
"Programming Language :: Python :: 3.12",
3533
"Programming Language :: Python :: 3.13",
34+
"Programming Language :: Python :: 3.14",
3635
"Programming Language :: Python :: Implementation :: CPython",
3736
"Programming Language :: Python :: Implementation :: PyPy",
3837
"Environment :: Console",

src/click_loglevel/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
from click.shell_completion import CompletionItem
2323
from .core import LevelParser
2424

25-
__version__ = "0.7.0"
25+
__version__ = "0.8.0.dev1"
2626
__author__ = "John Thorvald Wodder II"
2727
__author_email__ = "[email protected]"
2828
__license__ = "MIT"

test/test_with_asyncclick.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -146,8 +146,7 @@ def test_loglevel_extra_help(script: str) -> None:
146146
def test_invalid_loglevel_extra(value: str, script: str) -> None:
147147
r = subprocess.run(
148148
[sys.executable, str(DATA_DIR / script), "--log-level", value],
149-
stdout=subprocess.PIPE,
150-
stderr=subprocess.PIPE,
149+
capture_output=True,
151150
text=True,
152151
)
153152
assert r.returncode != 0
@@ -221,8 +220,7 @@ def test_loglevel_extra_nonupper_help(script: str) -> None:
221220
def test_invalid_loglevel_extra_nonupper(value: str, script: str) -> None:
222221
r = subprocess.run(
223222
[sys.executable, str(DATA_DIR / script), "--log-level", value],
224-
stdout=subprocess.PIPE,
225-
stderr=subprocess.PIPE,
223+
capture_output=True,
226224
text=True,
227225
)
228226
assert r.returncode != 0

test/test_with_click.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -141,8 +141,7 @@ def test_loglevel_extra_help(script: str) -> None:
141141
def test_invalid_loglevel_extra(value: str, script: str) -> None:
142142
r = subprocess.run(
143143
[sys.executable, str(DATA_DIR / script), "--log-level", value],
144-
stdout=subprocess.PIPE,
145-
stderr=subprocess.PIPE,
144+
capture_output=True,
146145
text=True,
147146
)
148147
assert r.returncode != 0
@@ -216,8 +215,7 @@ def test_loglevel_extra_nonupper_help(script: str) -> None:
216215
def test_invalid_loglevel_extra_nonupper(value: str, script: str) -> None:
217216
r = subprocess.run(
218217
[sys.executable, str(DATA_DIR / script), "--log-level", value],
219-
stdout=subprocess.PIPE,
220-
stderr=subprocess.PIPE,
218+
capture_output=True,
221219
text=True,
222220
)
223221
assert r.returncode != 0

tox.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[tox]
2-
envlist = lint,typing,py{38,39,310,311,312,313,py3}-{click8,click81}
2+
envlist = lint,typing,py{310,311,312,313,314,py3}-{click8,click81}
33
skip_missing_interpreters = True
44
isolated_build = True
55
minversion = 3.3.0

0 commit comments

Comments
 (0)