From e47bd34578f2d9599cbcb254d3b60d6d6537fe23 Mon Sep 17 00:00:00 2001 From: Sakthivel Subramanian Date: Fri, 8 May 2026 07:07:59 +0000 Subject: [PATCH 1/2] fix(spanner): drop support for Python 3.9 Python 3.9 is EOL and missing from the Kokoro test image, causing nightly failures. - Remove "3.9" from noxfile.py ALL_PYTHON and sessions - Remove "3.9" from setup.py classifiers and update python_requires to >=3.10 BREAKING CHANGE: Python 3.9 is no longer supported. Minimum supported version is now 3.10. --- packages/google-cloud-spanner/noxfile.py | 2 -- packages/google-cloud-spanner/setup.py | 3 +-- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/google-cloud-spanner/noxfile.py b/packages/google-cloud-spanner/noxfile.py index 39c7c32036b4..e1a13b2ea098 100644 --- a/packages/google-cloud-spanner/noxfile.py +++ b/packages/google-cloud-spanner/noxfile.py @@ -31,7 +31,6 @@ SYSTEM_TEST_PYTHON_VERSIONS: List[str] = ["3.12"] ALL_PYTHON: List[str] = [ - "3.9", "3.10", "3.11", "3.12", @@ -71,7 +70,6 @@ CURRENT_DIRECTORY = pathlib.Path(__file__).parent.absolute() nox.options.sessions = [ - "unit-3.9", "unit-3.10", "unit-3.11", "unit-3.12", diff --git a/packages/google-cloud-spanner/setup.py b/packages/google-cloud-spanner/setup.py index 6c076979fbe7..babf000c3928 100644 --- a/packages/google-cloud-spanner/setup.py +++ b/packages/google-cloud-spanner/setup.py @@ -86,7 +86,6 @@ "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", @@ -97,7 +96,7 @@ ], platforms="Posix; MacOS X; Windows", packages=packages, - python_requires=">=3.9", + python_requires=">=3.10", install_requires=dependencies, extras_require=extras, include_package_data=True, From 60215ee47050f175587467dd3d7971e384033ffc Mon Sep 17 00:00:00 2001 From: Sakthivel Subramanian Date: Fri, 8 May 2026 07:56:09 +0000 Subject: [PATCH 2/2] fix(spanner): remove constraints-3.9.txt --- .../testing/constraints-3.9.txt | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 packages/google-cloud-spanner/testing/constraints-3.9.txt diff --git a/packages/google-cloud-spanner/testing/constraints-3.9.txt b/packages/google-cloud-spanner/testing/constraints-3.9.txt deleted file mode 100644 index ac3833d41b9a..000000000000 --- a/packages/google-cloud-spanner/testing/constraints-3.9.txt +++ /dev/null @@ -1,13 +0,0 @@ -# -*- coding: utf-8 -*- -# This constraints file is used to check that lower bounds -# are correct in setup.py -# List all library dependencies and extras in this file, -# pinning their versions to their lower bounds. -# For example, if setup.py has "google-cloud-foo >= 1.14.0, < 2.0.0", -# then this file should have google-cloud-foo==1.14.0 -google-api-core==2.21.0 -google-auth==2.35.0 -# TODO(https://github.com/googleapis/gapic-generator-python/issues/2453) -# Add the minimum supported version of grpcio to constraints files -proto-plus==1.22.3 -protobuf==4.25.8