protoc v3.6 and v3.15 compatibility for different languages

43 views
Skip to first unread message

Luigi Riefolo

unread,
Apr 21, 2021, 4:23:35 AM4/21/21
to Protocol Buffers
Hello people,

I have two services that are exchanging protobuf messages (not over gRPC), one is written in Ruby and uses v3.6 while the other one is written in Go v3.15.

Recently I've come across a change that requires an update in the Ruby service, as it needs to support the new timestamp format. Unfortunately this will not be possible for a while.

So my question is: given that these two services are using different protobuf versions and different languages, is there any chance that I might introduce a compatibility issue? Or anything related?


Regards,

Luigi

Marc Gravell

unread,
Apr 21, 2021, 4:47:11 AM4/21/21
to Luigi Riefolo, Protocol Buffers
The actual serialization format hasn't changed since protobuf was released; as long as *your schemas* haven't changed in that time (at least, not in incompatible ways; adding fields etc is pretty safe as long as they aren't "required" in proto2), you should be absolutely fine. It is expected and normal that producers and consumers might be using different implementations / languages / library versions / etc.

Marc

--
You received this message because you are subscribed to the Google Groups "Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to protobuf+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/protobuf/f6be32d7-7f65-45fd-8574-add61e12c8abn%40googlegroups.com.


--
Regards,

Marc

Luigi Riefolo

unread,
Apr 21, 2021, 5:02:32 AM4/21/21
to Marc Gravell, Protocol Buffers
thanks Marc.
--
Regards,


Luigi
Reply all
Reply to author
Forward
0 new messages