Skip to content

Commit 3705570

Browse files
authored
chore: 3.10-3.14 active range (#652)
Signed-off-by: Henry Schreiner <[email protected]>
1 parent b96eb22 commit 3705570

File tree

13 files changed

+29
-39
lines changed

13 files changed

+29
-39
lines changed

.github/workflows/reusable-cookie.yml

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ jobs:
2424
strategy:
2525
fail-fast: false
2626
matrix:
27-
python-version: ["3.9", "3.13"]
27+
python-version: ["3.10", "3.14"]
2828
runs-on: [ubuntu-latest, windows-latest, macos-latest]
2929

3030
include:
31-
- python-version: pypy-3.10
31+
- python-version: pypy-3.11
3232
runs-on: ubuntu-latest
3333

3434
steps:
@@ -38,9 +38,6 @@ jobs:
3838
with:
3939
python-version: ${{ matrix.python-version }}
4040
allow-prereleases: true
41-
# Python 3.13.4 broken on Windows
42-
check-latest: >-
43-
${{ matrix.python-version == '3.13' && runner.os == 'Windows' }}
4441

4542
- name: Setup uv
4643
uses: astral-sh/setup-uv@v7
@@ -76,7 +73,7 @@ jobs:
7673
run: nox -s 'tests(setuptools, novcs)' -s 'tests(setuptools, vcs)'
7774

7875
- name: Native poetry tooling
79-
if: matrix.python-version != 'pypy-3.10'
76+
if: matrix.python-version != 'pypy-3.11'
8077
run: |
8178
nox -s 'native(poetry, novcs)'
8279
nox -s 'native(poetry, vcs)'

.github/workflows/reusable-rr-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
strategy:
1616
fail-fast: false
1717
matrix:
18-
python-version: ["3.10", "3.11", "3.12", "3.13"]
18+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
1919
runs-on: [ubuntu-latest, macos-14, windows-latest]
2020

2121
steps:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ Check the key setup files, `pyproject.toml`, and possibly `setup.cfg` and
125125
`setup.py` (pybind11 example). Update `README.md`. Also update and add docs to
126126
`docs/`.
127127

128-
There are a few example dependencies and a minimum Python version of 3.9, feel
128+
There are a few example dependencies and a minimum Python version of 3.10, feel
129129
free to change it to whatever you actually need/want. There is also a basic
130130
backports structure with a small typing example.
131131

docs/_includes/pyproject.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ authors = [
1515
maintainers = [
1616
{ name = "My Organization", email = "[email protected]" },
1717
]
18-
requires-python = ">=3.9"
18+
requires-python = ">=3.10"
1919

2020
dependencies = [
2121
"typing_extensions",
@@ -24,11 +24,11 @@ dependencies = [
2424
classifiers = [
2525
"Development Status :: 4 - Beta",
2626
"Programming Language :: Python :: 3 :: Only",
27-
"Programming Language :: Python :: 3.9",
2827
"Programming Language :: Python :: 3.10",
2928
"Programming Language :: Python :: 3.11",
3029
"Programming Language :: Python :: 3.12",
3130
"Programming Language :: Python :: 3.13",
31+
"Programming Language :: Python :: 3.14",
3232
"Topic :: Scientific/Engineering :: Physics",
3333
]
3434

docs/pages/guides/gha_basic.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,9 +99,9 @@ tests:
9999
fail-fast: false
100100
matrix:
101101
python-version:
102-
- "3.9"
103-
- "3.11"
104-
- "3.13"
102+
- "3.10"
103+
- "3.12"
104+
- "3.14"
105105
name: Check Python ${{ matrix.python-version }}
106106
steps:
107107
- uses: actions/checkout@v5

docs/pages/guides/packaging_classic.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -288,11 +288,11 @@ classifiers =
288288
Programming Language :: C++
289289
Programming Language :: Python
290290
Programming Language :: Python :: 3 :: Only
291-
Programming Language :: Python :: 3.9
292291
Programming Language :: Python :: 3.10
293292
Programming Language :: Python :: 3.11
294293
Programming Language :: Python :: 3.12
295294
Programming Language :: Python :: 3.13
295+
Programming Language :: Python :: 3.14
296296
Topic :: Scientific/Engineering
297297
Topic :: Scientific/Engineering :: Information Analysis
298298
Topic :: Scientific/Engineering :: Mathematics
@@ -310,7 +310,7 @@ project_urls =
310310
packages = find:
311311
install_requires =
312312
numpy>=1.19.3
313-
python_requires = >=3.9
313+
python_requires = >=3.10
314314
include_package_data = True
315315
package_dir =
316316
=src

docs/pages/guides/packaging_compiled.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -183,8 +183,8 @@ rand = "0.8.3"
183183
[dependencies.pyo3]
184184
version = "0.19.1"
185185
# "extension-module" tells pyo3 we want to build an extension module (skips linking against libpython.so)
186-
# "abi3-py39" tells pyo3 (and maturin) to build using the stable ABI with minimum Python version 3.9
187-
features = ["extension-module", "abi3-py39"]
186+
# "abi3-py310" tells pyo3 (and maturin) to build using the stable ABI with minimum Python version 3.10
187+
features = ["extension-module", "abi3-py310"]
188188
```
189189
<!-- prettier-ignore-end -->
190190
<!-- [[[end]]] -->

docs/pages/guides/style.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -555,7 +555,7 @@ this:
555555
```ini
556556
[tool.mypy]
557557
files = "src"
558-
python_version = "3.9"
558+
python_version = "3.10"
559559
strict = true
560560
enable_error_code = ["ignore-without-code", "redundant-expr", "truthy-bool"]
561561
warn_unreachable = true
@@ -840,7 +840,7 @@ started:
840840

841841
```toml
842842
[tool.pylint]
843-
py-version = "3.9"
843+
py-version = "3.10"
844844
jobs = "0"
845845
reports.output-format = "colorized"
846846
similarities.ignore-imports = "yes"

docs/pages/guides/tasks.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ customize the versions of Python prepared for you, then use input like this:
8686
```yaml
8787
- uses: wntrblm/[email protected]
8888
with:
89-
python-versions: "3.9, 3.10, 3.11, 3.12, 3.13, pypy-3.10"
89+
python-versions: "3.10, 3.11, 3.12, 3.13, 3.13t, 3.14, 3.14t, pypy-3.11"
9090
```
9191

9292
### Introduction
@@ -137,7 +137,7 @@ You can parametrize sessions. either on Python or on any other item.
137137

138138
```python
139139
# Shortcut to parametrize Python
140-
@nox.session(python=["3.9", "3.10", "3.11", "3.12", "3.13"])
140+
@nox.session(python=["3.10", "3.11", "3.12", "3.13", "3.14"])
141141
def my_session(session: nox.Session) -> None: ...
142142
143143

{{cookiecutter.project_name}}/.github/workflows/ci.yml

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ jobs:
4444
strategy:
4545
fail-fast: false
4646
matrix:
47-
python-version: ["3.9", "3.13"]
48-
runs-on: [ubuntu-latest, windows-latest, macos-14]
47+
python-version: ["3.10", "3.14"]
48+
runs-on: [ubuntu-latest, windows-latest, macos-latest]
4949

5050
include:
51-
- python-version: "pypy-3.10"
51+
- python-version: "pypy-3.11"
5252
runs-on: ubuntu-latest
5353

5454
steps:
@@ -60,13 +60,6 @@ jobs:
6060
with:
6161
python-version: {% raw %}${{ matrix.python-version }}{% endraw %}
6262
allow-prereleases: true
63-
{%- if cookiecutter.__type == "compiled" %}
64-
{%- raw %}
65-
# Python 3.13.4 broken on Windows
66-
check-latest: >-
67-
${{ matrix.python-version == '3.13' && runner.os == 'Windows' }}
68-
{%- endraw %}
69-
{%- endif %}
7063

7164
- uses: astral-sh/setup-uv@v7
7265

0 commit comments

Comments
 (0)