You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Looking to bump protobuf dependency > 7.0.0 #16172
####################################################
# Protobuf rules
# This is the Way to load py_proto_library and proto_library for bazel 7.x and beyond
#
-bazel_dep(name = "protobuf", version = "33.5", dev_dependency = True)
+bazel_dep(name = "protobuf", version = "34.1", dev_dependency = True)
-bazel_dep(name = "rules_python", version = "1.8.3")
+bazel_dep(name = "rules_python", version = "1.9.0")
The protobuf rules bump has led me to an unresolvable constraint in the spanner
driver. First I tried with 3.59.0, then I increased the google-cloud-spanner version up to the latest 3.63.0.
$ update-requirements-lock.sh
× No solution found when resolving dependencies:
╰─▶ Because google-cloud-spanner==3.63.0 depends on one of:
protobuf>=3.20.2,<4.21.0
protobuf>4.21.0,<4.21.1
protobuf>4.21.1,<4.21.2
protobuf>4.21.2,<4.21.3
protobuf>4.21.3,<4.21.4
protobuf>4.21.4,<4.21.5
protobuf>4.21.5,<7.0.0
and you require protobuf>=7.34.1, we can conclude that your requirements and google-cloud-spanner==3.63.0 are incompatible.
And because you require google-cloud-spanner==3.63.0, we can conclude that your requirements are unsatisfiable.
I'm not sure if there is good reason to have the <7.0.0 constraint on the protobuf package. The new protobuf rules seem to use: 7.34.1 by default. Here are the release notes for 7.x: https://protobuf.dev/news/2025-09-19/ from September 2025
We should be able to allow Protobuf 7.x in client libraries because we have prerelease tests via the Kokoro Prerelease Dependencies presubmit that runs against Protobuf 7.x, but we will still see conflicts due to grpcio-status.
In the build log for Kokoro Prerelease Dependencies , see this line where we have already tested Protobuf 7.x
Activity
ericzundel commentedon Mar 25, 2026
Note, this isn't blocking for me, I just moved to protobuf 33.6 for now.
olavloite commentedon Mar 25, 2026
Assigning to @parthea as the last to update this specifically to <7.0.0 in googleapis/python-spanner#1320.
Is there a specific reason for requiring
<7.0.0?parthea commentedon Mar 25, 2026
We're currently blocked on grpc/grpc#41933. There is a dependency on
grpcio-statusvia thegrpcextra ofgoogle-api-core(google-api-core[grpc]).https://github.com/googleapis/python-spanner/blob/c37532c65ee2b2ecc52d8a4a2f5bf002cb8e039c/setup.py#L43
google-cloud-python/packages/google-api-core/pyproject.toml
Lines 63 to 70 in 4b400fa
We should be able to allow Protobuf 7.x in client libraries because we have prerelease tests via the
Kokoro Prerelease Dependenciespresubmit that runs against Protobuf 7.x, but we will still see conflicts due togrpcio-status.In the build log for
Kokoro Prerelease Dependencies, see this line where we have already tested Protobuf 7.xWe can't run tests using Protobuf 7.x outside of
Kokoro Prerelease Dependenciesbecause of grpc/grpc#41933.Googlers see b/495851781
parthea commentedon Mar 25, 2026
Transferring to google-cloud-python as the code for
google-cloud-spannerwill be migrated there this week (likely tomorrow)parthea commentedon May 1, 2026
Completed
google-cloud-python/packages/google-cloud-spanner/setup.py
Line 48 in daa0423