Skip to content

Commit be9ee54

Browse files
ci: Add Python 3.13 to tests (#2621)
* Add Python 3.13 to Python versions tested. * Default to using Python 3.13 for all CI operations. * Update trove classifiers to add Python 3.13 metadata. * Update Dockerfile base image OS to Bookworm. * Use macos-15-intel over macos-13 runner image in all workflows. - Amends PR #2620.
1 parent 35acce8 commit be9ee54

File tree

15 files changed

+42
-41
lines changed

15 files changed

+42
-41
lines changed

.github/workflows/bump-version.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,11 +195,11 @@ jobs:
195195
echo "steps.script.outputs.old_tag=v${current_tag}"
196196
echo "old_tag=v${current_tag}" >> $GITHUB_OUTPUT
197197
198-
- name: Set up Python 3.12
198+
- name: Set up Python
199199
if: success()
200200
uses: actions/setup-python@v6
201201
with:
202-
python-version: '3.12'
202+
python-version: '3.13'
203203

204204
- name: Install Python dependencies
205205
run: |

.github/workflows/ci-windows.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
strategy:
2121
matrix:
2222
os: [windows-latest]
23-
python-version: ['3.9', '3.10', '3.11', '3.12']
23+
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
2424

2525
steps:
2626
- uses: actions/checkout@v5

.github/workflows/ci.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,13 @@ jobs:
3030
strategy:
3131
matrix:
3232
os: [ubuntu-latest]
33-
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
33+
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
3434
include:
3535
- os: macos-latest
36-
python-version: '3.12'
36+
python-version: '3.13'
3737
# Intel runner
3838
- os: macos-15-intel
39-
python-version: '3.12'
39+
python-version: '3.13'
4040

4141
steps:
4242
- uses: actions/checkout@v5
@@ -89,7 +89,7 @@ jobs:
8989
coverage xml
9090
9191
- name: Report contrib coverage with Codecov
92-
if: github.event_name != 'schedule' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-latest'
92+
if: github.event_name != 'schedule' && matrix.python-version == '3.13' && matrix.os == 'ubuntu-latest'
9393
uses: codecov/codecov-action@v5
9494
with:
9595
fail_ci_if_error: true
@@ -99,17 +99,17 @@ jobs:
9999

100100
- name: Test docstring examples with doctest
101101
# TODO: Don't currently try to match amd64 and arm64 floating point for docs, but will in the future.
102-
if: matrix.python-version == '3.12' && matrix.os != 'macos-latest'
102+
if: matrix.python-version == '3.13' && matrix.os != 'macos-latest'
103103
run: coverage run --data-file=.coverage-doctest --module pytest src/ README.rst
104104

105105
- name: Coverage report for doctest only
106-
if: matrix.python-version == '3.12' && matrix.os != 'macos-latest'
106+
if: matrix.python-version == '3.13' && matrix.os != 'macos-latest'
107107
run: |
108108
coverage report --data-file=.coverage-doctest
109109
coverage xml --data-file=.coverage-doctest -o doctest-coverage.xml
110110
111111
- name: Report doctest coverage with Codecov
112-
if: github.event_name != 'schedule' && matrix.python-version == '3.12' && matrix.os == 'ubuntu-latest'
112+
if: github.event_name != 'schedule' && matrix.python-version == '3.13' && matrix.os == 'ubuntu-latest'
113113
uses: codecov/codecov-action@v5
114114
with:
115115
fail_ci_if_error: true
@@ -118,6 +118,6 @@ jobs:
118118
token: ${{ secrets.CODECOV_TOKEN }}
119119

120120
- name: Run benchmarks
121-
if: github.event_name == 'schedule' && matrix.python-version == '3.12'
121+
if: github.event_name == 'schedule' && matrix.python-version == '3.13'
122122
run: |
123123
pytest --benchmark-sort=mean tests/benchmarks/test_benchmark.py

.github/workflows/dependencies-head.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ jobs:
1919
runs-on: ${{ matrix.os }}
2020
strategy:
2121
matrix:
22-
os: [ubuntu-latest, macos-latest, macos-13]
23-
python-version: ['3.12']
22+
os: [ubuntu-latest, macos-latest, macos-15-intel]
23+
python-version: ['3.13']
2424

2525
steps:
2626
- uses: actions/checkout@v5
@@ -50,7 +50,7 @@ jobs:
5050
strategy:
5151
matrix:
5252
os: [ubuntu-latest]
53-
python-version: ['3.12']
53+
python-version: ['3.13']
5454

5555
steps:
5656
- uses: actions/checkout@v5
@@ -79,7 +79,7 @@ jobs:
7979
strategy:
8080
matrix:
8181
os: [ubuntu-latest]
82-
python-version: ['3.12']
82+
python-version: ['3.13']
8383

8484
steps:
8585
- uses: actions/checkout@v5
@@ -105,7 +105,7 @@ jobs:
105105
strategy:
106106
matrix:
107107
os: [ubuntu-latest]
108-
python-version: ['3.12']
108+
python-version: ['3.13']
109109

110110
steps:
111111
- uses: actions/checkout@v5
@@ -130,7 +130,7 @@ jobs:
130130
strategy:
131131
matrix:
132132
os: [ubuntu-latest]
133-
python-version: ['3.12']
133+
python-version: ['3.13']
134134

135135
steps:
136136
- uses: actions/checkout@v5
@@ -168,7 +168,7 @@ jobs:
168168
strategy:
169169
matrix:
170170
os: [ubuntu-latest]
171-
python-version: ['3.12']
171+
python-version: ['3.13']
172172

173173
steps:
174174
- uses: actions/checkout@v5

.github/workflows/docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
- name: Set up Python
2828
uses: actions/setup-python@v6
2929
with:
30-
python-version: '3.12'
30+
python-version: '3.13'
3131

3232
- name: Install Python dependencies
3333
run: |

.github/workflows/notebooks.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
runs-on: ubuntu-latest
2020
strategy:
2121
matrix:
22-
python-version: ['3.12']
22+
python-version: ['3.13']
2323

2424
steps:
2525
- uses: actions/checkout@v5

.github/workflows/publish-package.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,10 @@ jobs:
4141
with:
4242
fetch-depth: 0
4343

44-
- name: Set up Python 3.12
44+
- name: Set up Python
4545
uses: actions/setup-python@v6
4646
with:
47-
python-version: '3.12'
47+
python-version: '3.13'
4848

4949
- name: Install python-build and twine
5050
run: |

.github/workflows/release_tests.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,13 @@ jobs:
2121
strategy:
2222
matrix:
2323
os: [ubuntu-latest]
24-
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
24+
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
2525
include:
2626
- os: macos-latest
27-
python-version: '3.12'
27+
python-version: '3.13'
2828
# Intel runner
29-
- os: macos-13
30-
python-version: '3.12'
29+
- os: macos-15-intel
30+
python-version: '3.13'
3131
fail-fast: false
3232

3333
steps:

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,8 @@ repos:
6464
['numpy', 'types-tqdm', 'click', 'types-jsonpatch', 'types-pyyaml', 'types-jsonschema', 'importlib_metadata', 'packaging']
6565
args: ["--python-version=3.8"]
6666
- <<: *mypy
67-
name: mypy with Python 3.12
68-
args: ["--python-version=3.12"]
67+
name: mypy with Python 3.13
68+
args: ["--python-version=3.13"]
6969

7070
- repo: https://github.com/codespell-project/codespell
7171
rev: v2.3.0

.readthedocs.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ version: 2
99
build:
1010
os: ubuntu-22.04
1111
tools:
12-
python: "3.12"
12+
python: "3.13"
1313
apt_packages:
1414
- curl
1515
- jq

0 commit comments

Comments
 (0)