This is an automated email from the ASF dual-hosted git repository.

damccorm pushed a commit to branch users/damccorm/protobufDep
in repository https://gitbox.apache.org/repos/asf/beam.git

commit fb640f606e51e0ab31134e7a58bf6ca1bc7cfaac
Author: Danny McCormick <[email protected]>
AuthorDate: Tue Feb 25 12:16:18 2025 -0500

    Add info on protobuf dependency
---
 contributor-docs/java-dependency-upgrades.md | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/contributor-docs/java-dependency-upgrades.md 
b/contributor-docs/java-dependency-upgrades.md
index 0ff962d6add..19abafadf6c 100644
--- a/contributor-docs/java-dependency-upgrades.md
+++ b/contributor-docs/java-dependency-upgrades.md
@@ -116,3 +116,14 @@ In the case of modifying the script or diagnose, the 
following commands may be u
     mvn help:effective-pom -f base.pom -Doutput=effective.pom && cat 
effective.pom | \
     grep -v 'dependencyManagement' > cleanup.pom && \
     mvn dependency:tree -f cleanup.pom
+
+# Protobuf Upgrades
+
+There are 2 versions of Protobuf used in Beam:
+
+1) The version driven by the GCP BOM version (see previous section). This 
version is defined as `protobuf_version` in `BeamModulePlugin.groovy` (example 
[update PR](protobuf_version)).
+2) The version driven by the vendored grpc version. This version is defined as 
`protobuf_version` in 
`buildSrc/src/main/groovy/org/apache/beam/gradle/GrpcVendoring_<version>.groovy`
 (example [PR #1](https://github.com/apache/beam/pull/33553) and [PR 
#2](https://github.com/apache/beam/pull/33555) to update).
+
+These versions should be compatible. This usually means they must be on the 
same major version, unless cross-version compatibility is explicitly guaranteed.
+
+Other dependencies are similarly defined with imported GRPC and may have 
similar requirements. For more info on vendoring dependencies see 
https://github.com/apache/beam/blob/master/vendor/README.md

Reply via email to