-
Notifications
You must be signed in to change notification settings - Fork 35
chore(deps): com.google.api.grpc:proto-google-common-protos: protobuf-java dependency upgrade to the latest 3.11.1 #680
base: master
Are you sure you want to change the base?
Conversation
|
@lukesneeringer @noahdietz Would you review/merge this PR? |
|
@vam-google I don't know how this repo is used by any of the mentioned dependencies. This repo probably shouldn't be used as I don't think it is being maintained. Would you mind taking a look? |
|
I often see proto-google-common-protos dependency in Google-related repositories. At least the following artifacts use proto-google-common-protos: |
|
@noahdietz The status of this repo is "undefined". This means it should not be used, but it used to be used, and I used recently once because there was no alternative (to release iam protos, because those are upsed very rarely and there were no new place for them). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe the problems described in this CL should be resolved by using BOMs. Please check the related instructions in google-cloud-java.
There is a bom maintained for google-cloud-java libraries (to ensure that the consumers of the libraries don't have the deps versions incompatibility issues): https://github.com/googleapis/java-cloud-bom (the examle is for maven, but there is a way to import the bom in gradle as well).
proto-google-common-protos is grpc-independent package, since it depends on protobuf, but does not know anything about grpc. Trying to pick a correct protobuf version such that is also does not conflict with all potential gRPC versions would be an impossible task.
|
@suztomo @noahdietz FYI (sorry, I forgot to mention you in the previous comment) |
|
@vam-google Thank you for response. Yes, I’m familiar with BOM, with which users can solve the inconsistency. (You can forget about grpc. It happened to be the artifact that had conflict) I feel concerned, because this widely-used artifact being unmaintained may cause a risk of diamond dependency problem in Google-related Java libraries. Would you share the reason why this repository is not maintained any more? (team change, difficult release process, etc.?) |
|
@suztomo The artifact is maintained, but this repo is not... This repository existed solely to push the generated stuff on github, because the root-level gradle build script in this repo has the "pushing" logic in it. The artifact |
|
@vam-google Thanks. It’s good to hear the artifact is maintained. The directory name “generated” was strange to me as well. But you also edited a build.gradle few months back https://github.com/googleapis/api-client-staging/pull/678/files#r363570370 . Should I try to edit different files (this repo or google3?) to upgrade the dependencies of proto-google-common-protos for a future release? |

protobuf-java dependency upgrade to the latest 3.11.1 for Maven artifact
com.google.api.grpc:proto-google-common-protos.Background
The class path generated by the pair
com.google.api:gax-grpc:1.52.0xcom.google.api.grpc:proto-google-common-protos:1.17.0has the following linkage errors, because proto-google-common-protos has old protobuf-java dependencies.com.google.api:gax-grpcneeds protobuf-java 3.10 or higher.