Established based on what conventions? I'm going based on the semantic
versioning guidelines here:

http://semver.org/

Basically what I'd like to understand is whether Google cares about this or
not, because changing public API's is a big problem for downstream
projects. It means that if you want to write a library that uses proto-bufs
you can't inter-operate with other libraries that also use protobufs.

- Patrick


On Wed, Apr 16, 2014 at 3:24 PM, Ilia Mirkin <[email protected]> wrote:

> While I don't speak for Google, I believe it's fairly well-established
> that 2.4 and 2.5 are considered to be "major" releases. Switching
> between them requires regenerating the java files with protoc, as the
> internal APIs used by the generated code tend to change. I believe
> that in general the public API's remain the same, however that doesn't
> let you have multiple protobuf versions without something like jarjar.
> The minor releases (2.4.0 vs 2.4.1, etc) should be binary-compatible
> AFAIK.
>
>   -ilia
>
> On Wed, Apr 16, 2014 at 4:24 PM, Patrick Wendell <[email protected]>
> wrote:
> > Hi All,
> >
> > I work on Apache Spark which is an open source project. We have recently
> > been dealing with a lot of pain due to the fact that the Java Protobuf
> > libraries for 2.4.X and 2.5.0 are not binary compatible. This makes it
> > really difficult for users to include two dependencies A and B that
> depend
> > on different versions of protobuf-java.
> >
> > Are these incompatibilities an omission, or is this an intentional policy
> > that protobuf is okay making API-breaking changes in minor versions? This
> > violates typical semantic-versioning conventions and makes it pretty
> tough
> > for downstream users.
> >
> > I don't see any references to library compatibility in the Java protobuf
> > page or the FAQ - apologies if this is covered somewhere...
> > https://developers.google.com/protocol-buffers/docs/javatutorial
> > https://developers.google.com/protocol-buffers/docs/faq
> >
> > - Patrick
> >
> > --
> > 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 [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at http://groups.google.com/group/protobuf.
> > For more options, visit https://groups.google.com/d/optout.
>

-- 
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 [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to