-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot upgrade to Protobuf 3.3.0 #2989
Comments
@carl-mastrangelo @ejona86 Can you give me a sense of the severity of the problem? I can make a patch release and rollback our guava dependency for now. |
gRPC has downstream dependencies on Guava less-than-20 which means that by pulling in protobuf java util, it bumps us up. We can't upgrade without risking breaking downstream deps. In effect, we can't really upgrade. @ejona86 thinks that some of the more prominent users may be able to upgrade now, but it isn't clear who those users are. gRPC Java rolled back from 20 in #2751 |
The Cassandra issue appears to be resolved now, but @elandau would probably still have problems. Given that people were reporting issues with Guava 20 within 3 and 5 days of our release, I wouldn't be surprised if more were lurking. That said, our release did encourage Cassandra to improve compatibility, so there is something to say about being slightly aggressive with upgrades. At the moment, we don't have a clear idea when it will be "okay" to upgrade the dependency. That makes me very sad and is not a long-term solution. But we have made sure to be compatible with Guava 20 to avoid us being the cause of breakages in the future. I figure some of the discussions internally may help give us a better grasp of when we want to bump past 20. @xfxyjwf, if using Guava 19 (or 18) is easy, that would be a convenient solution for the moment. If you aren't using Preconditions, maybe your JAR is compatible with Guava 19 already. I'd suggest we can override the version you specified, but I'm not aware of an easy tool to find whether a JAR is impacted by ABI changes. |
Protobuf doesn't depend on anything specifically in Guava 20. I updated the dependency just because the Truth version we use happens to depend on Guava 20. It should be easy enough to revert back. |
Oh, that is a bit interesting, compile dependency on Guava 19 but then tests will run with Guava 20. I honestly don't expect any subtle problems because of that, but it would be another reason that we would consider pushing harder to get on Guava 20. Making that change sounds great. @carl-mastrangelo, we can update your protobuf-upgrade PR once a new version is out. Timeline isn't a huge deal since users can choose the new version of protobuf without concern. |
That's fine. FWIW this will likely miss the 1.4 Window. |
Having 3.3.0 ASAP would be great! 👍 |
FYI. I have made a protobuf patch release 3.3.1 that reverted the guava dependency to guava:19. grpc and grpc users should be able to upgrade protobuf Java runtime to 3.3.1. |
@bxqgit, what are you needing? You should be able to use protobuf 3.3.0 yourself by just using the newer library. Or if the problem is the Guava piece, it's important for us to know what software is incompatible with newer Guava. |
Fixed by #2990 |
As of protocolbuffers/protobuf@c2b3b3e Protobuf is depending on Guava 20, while gRPC is stuck at 19.0 for compatibility.
@xfxyjwf and @ejona86 fyi
The text was updated successfully, but these errors were encountered: