Skip to content

Commit 93b8c57

Browse files
Add Python 3.13 support
This commit introduces support for Python 3.13 as a runtime dependency. The following changes were made: - Updated `noxfile.py` to include Python 3.13 in unit and system test versions. - Created `testing/constraints-3.13.txt` (initially empty, copied from an empty constraints-3.12.txt). - Updated `.github/workflows/unittest.yml` to include Python 3.13 in the test matrix. - Updated `setup.py` to add the Python 3.13 classifier. - Updated `CONTRIBUTING.rst` to list Python 3.13 as a supported version. - Created `.kokoro/presubmit/system-3.13.cfg` for Kokoro system tests. - Updated `.github/sync-repo-settings.yaml` to include Python 3.13 in required status checks. - Updated `owlbot.py` to include Python 3.13 in unit and system test versions for templated files.
1 parent bcd5c3c commit 93b8c57

File tree

8 files changed

+17
-5
lines changed

8 files changed

+17
-5
lines changed

.github/sync-repo-settings.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ branchProtectionRules:
1616
- 'unit (3.10)'
1717
- 'unit (3.11)'
1818
- 'unit (3.12)'
19+
- 'unit (3.13)'
1920
- 'cover'
2021
- 'Kokoro'
2122
- 'Samples - Lint'
@@ -24,6 +25,7 @@ branchProtectionRules:
2425
- 'Samples - Python 3.10'
2526
- 'Samples - Python 3.11'
2627
- 'Samples - Python 3.12'
28+
- 'Samples - Python 3.13'
2729
permissionRules:
2830
- team: actools-python
2931
permission: admin

.github/workflows/unittest.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
runs-on: ubuntu-22.04
1212
strategy:
1313
matrix:
14-
python: ['3.8', '3.9', '3.10', '3.11', '3.12']
14+
python: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
1515
steps:
1616
- name: Checkout
1717
uses: actions/checkout@v4

.kokoro/presubmit/system-3.13.cfg

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Format: //devtools/kokoro/config/proto/build.proto
2+
3+
# Only run the following session(s)
4+
env_vars: {
5+
key: "NOX_SESSION"
6+
value: "system-3.13"
7+
}

CONTRIBUTING.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -226,12 +226,14 @@ We support:
226226
- `Python 3.10`_
227227
- `Python 3.11`_
228228
- `Python 3.12`_
229+
- `Python 3.13`_
229230

230231
.. _Python 3.8: https://docs.python.org/3.8/
231232
.. _Python 3.9: https://docs.python.org/3.9/
232233
.. _Python 3.10: https://docs.python.org/3.10/
233234
.. _Python 3.11: https://docs.python.org/3.11/
234235
.. _Python 3.12: https://docs.python.org/3.12/
236+
.. _Python 3.13: https://docs.python.org/3.13/
235237

236238

237239
Supported versions can be found in our ``noxfile.py`` `config`_.

noxfile.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
DEFAULT_PYTHON_VERSION = "3.10"
3636

3737

38-
UNIT_TEST_PYTHON_VERSIONS = ["3.8", "3.9", "3.10", "3.11", "3.12"]
38+
UNIT_TEST_PYTHON_VERSIONS = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
3939
UNIT_TEST_STANDARD_DEPENDENCIES = [
4040
"mock",
4141
"asyncmock",
@@ -57,7 +57,7 @@
5757
"3.9": [],
5858
}
5959

60-
SYSTEM_TEST_PYTHON_VERSIONS = ["3.8", "3.9", "3.10", "3.11", "3.12"]
60+
SYSTEM_TEST_PYTHON_VERSIONS = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
6161
SYSTEM_TEST_STANDARD_DEPENDENCIES = [
6262
"mock",
6363
"pytest",

owlbot.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@
3535
extras = ["tqdm", "geopandas"]
3636
templated_files = common.py_library(
3737
default_python_version="3.10",
38-
unit_test_python_versions=["3.8", "3.9", "3.10", "3.11", "3.12"],
39-
system_test_python_versions=["3.8", "3.9", "3.10", "3.11", "3.12"],
38+
unit_test_python_versions=["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"],
39+
system_test_python_versions=["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"],
4040
cov_level=96,
4141
unit_test_external_dependencies=["freezegun"],
4242
unit_test_extras=extras,

setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@
9090
"Programming Language :: Python :: 3.10",
9191
"Programming Language :: Python :: 3.11",
9292
"Programming Language :: Python :: 3.12",
93+
"Programming Language :: Python :: 3.13",
9394
"Operating System :: OS Independent",
9495
"Topic :: Internet",
9596
"Topic :: Scientific/Engineering",

testing/constraints-3.13.txt

Whitespace-only changes.

0 commit comments

Comments
 (0)