Skip to content

Commit e1911da

Browse files
committed
feat: Add support for Python 3.14
1 parent e60b551 commit e1911da

File tree

9 files changed

+19
-53
lines changed

9 files changed

+19
-53
lines changed

.github/sync-repo-settings.yaml

Lines changed: 0 additions & 39 deletions
This file was deleted.

.github/workflows/lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
- name: Setup Python
1313
uses: actions/setup-python@v5
1414
with:
15-
python-version: "3.10"
15+
python-version: "3.14"
1616
- name: Install nox
1717
run: |
1818
python -m pip install --upgrade setuptools pip wheel

.github/workflows/unittest.yml

Lines changed: 2 additions & 2 deletions
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.9', '3.10', '3.11', '3.12', '3.13']
14+
python: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
1515
steps:
1616
- name: Checkout
1717
uses: actions/checkout@v4
@@ -45,7 +45,7 @@ jobs:
4545
- name: Setup Python
4646
uses: actions/setup-python@v5
4747
with:
48-
python-version: "3.10"
48+
python-version: "3.14"
4949
- name: Install coverage
5050
run: |
5151
python -m pip install --upgrade setuptools pip wheel

.kokoro/presubmit/system-3.13.cfg renamed to .kokoro/presubmit/system-3.14.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@
33
# Only run the following session(s)
44
env_vars: {
55
key: "NOX_SESSION"
6-
value: "system-3.13"
6+
value: "system-3.14"
77
}

CONTRIBUTING.rst

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ In order to add a feature:
2222
documentation.
2323

2424
- The feature must work fully on the following CPython versions:
25-
3.9, 3.10, 3.11, 3.12 and 3.13 on both UNIX and Windows.
25+
3.9, 3.10, 3.11, 3.12, 3.13 and 3.14 on both UNIX and Windows.
2626

2727
- The feature must not add unnecessary dependencies (where
2828
"unnecessary" is of course subjective, but new dependencies should
@@ -72,7 +72,7 @@ We use `nox <https://nox.readthedocs.io/en/latest/>`__ to instrument our tests.
7272

7373
- To run a single unit test::
7474

75-
$ nox -s unit-3.13 -- -k <name of test>
75+
$ nox -s unit-3.14 -- -k <name of test>
7676

7777

7878
.. note::
@@ -143,12 +143,12 @@ Running System Tests
143143
$ nox -s system
144144

145145
# Run a single system test
146-
$ nox -s system-3.13 -- -k <name of test>
146+
$ nox -s system-3.14 -- -k <name of test>
147147

148148

149149
.. note::
150150

151-
System tests are only configured to run under Python 3.9, 3.10, 3.11, 3.12 and 3.13.
151+
System tests are only configured to run under Python 3.14.
152152
For expediency, we do not run them in older versions of Python 3.
153153

154154
This alone will not run the tests. You'll need to change some local
@@ -226,12 +226,14 @@ We support:
226226
- `Python 3.11`_
227227
- `Python 3.12`_
228228
- `Python 3.13`_
229+
- `Python 3.14`_
229230

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

236238

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

noxfile.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@
3232
ISORT_VERSION = "isort==5.10.1"
3333
LINT_PATHS = ["docs", "pandas_gbq", "tests", "noxfile.py", "setup.py"]
3434

35-
DEFAULT_PYTHON_VERSION = "3.10"
35+
DEFAULT_PYTHON_VERSION = "3.14"
3636

37-
UNIT_TEST_PYTHON_VERSIONS = ["3.9", "3.10", "3.11", "3.12", "3.13"]
37+
UNIT_TEST_PYTHON_VERSIONS = ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
3838
UNIT_TEST_STANDARD_DEPENDENCIES = [
3939
"mock",
4040
"asyncmock",
@@ -56,7 +56,7 @@
5656
"3.9": [],
5757
}
5858

59-
SYSTEM_TEST_PYTHON_VERSIONS = ["3.9", "3.10", "3.11", "3.12", "3.13"]
59+
SYSTEM_TEST_PYTHON_VERSIONS = ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
6060
SYSTEM_TEST_STANDARD_DEPENDENCIES = [
6161
"mock",
6262
"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.9", "3.10", "3.11", "3.12", "3.13"],
39-
system_test_python_versions=["3.9", "3.10", "3.11", "3.12", "3.13"],
38+
unit_test_python_versions=["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"],
39+
system_test_python_versions=["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"],
4040
cov_level=96,
4141
unit_test_external_dependencies=["freezegun"],
4242
unit_test_extras=extras,

setup.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@
2525
"db-dtypes >=1.0.4,<2.0.0",
2626
"numpy >=1.18.1",
2727
"pandas >=1.1.4",
28-
"pyarrow >=4.0.0",
28+
"pyarrow >= 4.0.0",
29+
# See https://arrow.apache.org/release/22.0.0.html
30+
"pyarrow >= 22.0.0; python_version >= '3.14'",
2931
"pydata-google-auth >=1.5.0",
3032
# Note: google-api-core and google-auth are also included via transitive
3133
# dependency on google-cloud-bigquery, but this library also uses them
@@ -90,6 +92,7 @@
9092
"Programming Language :: Python :: 3.11",
9193
"Programming Language :: Python :: 3.12",
9294
"Programming Language :: Python :: 3.13",
95+
"Programming Language :: Python :: 3.14",
9396
"Operating System :: OS Independent",
9497
"Topic :: Internet",
9598
"Topic :: Scientific/Engineering",

testing/constraints-3.14.txt

Whitespace-only changes.

0 commit comments

Comments
 (0)