Skip to content

Commit 1e844d4

Browse files
committed
Drop support for 3.9, which is EOL, add 3.14.
1 parent 45b8408 commit 1e844d4

File tree

3 files changed

+20
-9
lines changed

3 files changed

+20
-9
lines changed

.github/workflows/ci.yml

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
steps:
2121
- uses: actions/checkout@v5
2222
- name: Set up uv
23-
uses: astral-sh/setup-uv@v6
23+
uses: astral-sh/setup-uv@v7
2424
with:
2525
enable-cache: true
2626
- id: noxenvs-matrix
@@ -41,7 +41,7 @@ jobs:
4141
posargs: [""]
4242
include:
4343
- os: ubuntu-latest
44-
noxenv: tests-3.13
44+
noxenv: tests-3.14
4545
posargs: coverage github
4646

4747
steps:
@@ -56,16 +56,17 @@ jobs:
5656
uses: actions/setup-python@v6
5757
with:
5858
python-version: |
59-
3.9
6059
3.10
6160
3.11
6261
3.12
6362
3.13
64-
pypy3.10
63+
3.14
64+
3.14t
65+
pypy3.11
6566
allow-prereleases: true
6667

6768
- name: Set up uv
68-
uses: astral-sh/setup-uv@v6
69+
uses: astral-sh/setup-uv@v7
6970
with:
7071
enable-cache: true
7172

@@ -86,7 +87,7 @@ jobs:
8687
steps:
8788
- uses: actions/checkout@v5
8889
- name: Set up uv
89-
uses: astral-sh/setup-uv@v6
90+
uses: astral-sh/setup-uv@v7
9091
with:
9192
enable-cache: true
9293

noxfile.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,15 @@
1717
(path.parent / f"{path.stem}.in", path) for path in REQUIREMENTS.values()
1818
]
1919

20-
SUPPORTED = ["3.9", "3.10", "pypy3.10", "3.11", "3.12", "3.13"]
20+
SUPPORTED = [
21+
"3.10",
22+
"pypy3.11",
23+
"3.11",
24+
"3.12",
25+
"3.13",
26+
"3.14t",
27+
"3.14",
28+
]
2129
LATEST = SUPPORTED[-1]
2230

2331
nox.options.default_venv_backend = "uv|virtualenv"

pyproject.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ classifiers = [
2121
"Intended Audience :: Developers",
2222
"Operating System :: OS Independent",
2323
"Programming Language :: Python",
24-
"Programming Language :: Python :: 3.9",
2524
"Programming Language :: Python :: 3.10",
2625
"Programming Language :: Python :: 3.11",
2726
"Programming Language :: Python :: 3.12",
2827
"Programming Language :: Python :: 3.13",
28+
"Programming Language :: Python :: 3.14",
2929
"Programming Language :: Python :: Implementation :: CPython",
3030
"Programming Language :: Python :: Implementation :: PyPy",
3131
"Topic :: File Formats :: JSON",
@@ -106,7 +106,9 @@ ignore = [
106106
"FBT", # It's worth avoiding boolean args but I don't care to enforce it
107107
"FIX", # Yes thanks, if I could it wouldn't be there
108108
"N", # These naming rules are silly
109+
"PLC0415", # too noisy, there are too many cases this is fine
109110
"PLR0912", # These metrics are fine to be aware of but not to enforce
111+
"PLR0912",
110112
"PLR0913",
111113
"PLR0915",
112114
"PLW2901", # Shadowing for loop variables is occasionally fine.
@@ -117,10 +119,10 @@ ignore = [
117119
"RET505", # These push you to use `if` instead of `elif`, but for no reason
118120
"RET506",
119121
"RSE102", # Ha, what, who even knew you could leave the parens off. But no.
122+
"RUF043", # This rule makes no sense. "foo.*bar" is a string containing a regex
120123
"SIM300", # Not sure what heuristic this uses, but it's easily incorrect
121124
"SLF001", # Private usage within this package itself is fine
122125
"TD", # These TODO style rules are also silly
123-
"UP007", # We support 3.9
124126
]
125127

126128
[tool.ruff.lint.flake8-pytest-style]

0 commit comments

Comments
 (0)