firrtl icon indicating copy to clipboard operation
firrtl copied to clipboard

Update protobuf-java to 3.12.4

Open scala-steward opened this issue 4 years ago • 5 comments

Updates com.google.protobuf:protobuf-java from 3.5.1 to 3.12.4.

I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.

If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.

Configure Scala Steward for your repository with a .scala-steward.conf file.

Have a fantastic day writing Scala!

Ignore future updates

Add this to your .scala-steward.conf file to ignore future updates of this dependency:

updates.ignore = [ { groupId = "com.google.protobuf", artifactId = "protobuf-java" } ]

labels: library-update, semver-minor

scala-steward avatar Jul 29 '20 00:07 scala-steward

There is an advantage to sticking with older Protobuf. Whereas with most JVM dependencies are handled well by the tools and don't impact the larger system, Protobuf has to stay relatively in sync (there was a hard break somewhere, maybe protobuf 3.8) with the protoc binary which is often installed as a standard Linux dependency.

We probably should bump protobuf at some point, but such a bump would affect anyone building FIRRTL (eg. https://github.com/sifive/api-firrtl-sifive/issues/6)

jackkoenig avatar Jul 31 '20 17:07 jackkoenig

So does that mean we should maybe bump this with the 1.4 release?

azidar avatar Jul 31 '20 18:07 azidar

I think Jack wants to hold off on this since upgrading protobuf-java might also require a newer version of protoc to be available on user's computers.

ekiwi avatar Aug 12 '20 19:08 ekiwi

So, fortunately for building via SBT, the SBT plugin takes care of downloading the right version of protoc for the system, but going a different route runs into this issue (see api-scala-sifive link). That being said, we can't just never upgrade so we should probably just go for it. It's not that hard to download the statically linked binaries of protoc

jackkoenig avatar Aug 12 '20 23:08 jackkoenig

I'm leaving this open until either I can fix it or we tell it to ignore protobuf. Unfortunately we can't bump the Java library without also bumping protoc. It is passing tests so maybe it's actually okay, but typically having those too far out of sync is a problem. I tried to bump it manually, but get some incredibly bizarre issues only on the Scala 2.11 build, which is especially strange because the Protobuf stuff is the same for all versions of Scala.

jackkoenig avatar Aug 14 '20 22:08 jackkoenig