Avro
  1. Avro
  2. AVRO-1550

Move protobuf dependency to 2.5.0

    Details

    • Type: Improvement Improvement
    • Status: Patch Available
    • Priority: Minor Minor
    • Resolution: Unresolved
    • Affects Version/s: 1.7.6
    • Fix Version/s: 1.8.0
    • Component/s: java
    • Labels:
      None

      Description

      Protobuf dependency in java module should be moved up to current version 2.5.0 from 2.4.1.
      Need to regenerate Java source for Test class under org.apache.avro.protobuf with new protobuf version.

      1. AVRO-1550.patch
        97 kB
        Thomas Friedrich

        Activity

        Hide
        Thomas Friedrich added a comment -

        Patch changes protobuf dependency to 2.5.0 and includes regenerated Test.java

        Show
        Thomas Friedrich added a comment - Patch changes protobuf dependency to 2.5.0 and includes regenerated Test.java
        Hide
        Doug Cutting added a comment -

        This pom change might be considered incompatible. If a project doesn't specify an explicit version of Protobuf, but inherits Avro's version, then this change will cause the project to upgrade to 2.5, which might break it. So we should probably target this for Avro 1.8 (which permits such incompatibilities).

        Also, I think the 1.7.x avro-protobuf jars work with Protobuf 2.5, since they contain no generated code and only call public Protobuf APIs that haven't incompatibly changed, so a project that explicitly depends on Protobuf 2.5 will currently work with avro-protobuf, no? So I don't think this change is urgent.

        Show
        Doug Cutting added a comment - This pom change might be considered incompatible. If a project doesn't specify an explicit version of Protobuf, but inherits Avro's version, then this change will cause the project to upgrade to 2.5, which might break it. So we should probably target this for Avro 1.8 (which permits such incompatibilities). Also, I think the 1.7.x avro-protobuf jars work with Protobuf 2.5, since they contain no generated code and only call public Protobuf APIs that haven't incompatibly changed, so a project that explicitly depends on Protobuf 2.5 will currently work with avro-protobuf, no? So I don't think this change is urgent.
        Hide
        Thomas Friedrich added a comment -

        Thanks, Doug. You are right, the public Protobuf APIs that avro-protobuf use haven't changed between Protobuf 2.4 and 2.5. The only reason the avro-protobuf UTs fail with Protobuf 2.5 is because they included generated code.
        Since other Apache projects like Hadoop, HBase and Hive already moved their dependency to Protobuf 2.5. I think Avro should move up as well for 1.8.0.

        Show
        Thomas Friedrich added a comment - Thanks, Doug. You are right, the public Protobuf APIs that avro-protobuf use haven't changed between Protobuf 2.4 and 2.5. The only reason the avro-protobuf UTs fail with Protobuf 2.5 is because they included generated code. Since other Apache projects like Hadoop, HBase and Hive already moved their dependency to Protobuf 2.5. I think Avro should move up as well for 1.8.0.

          People

          • Assignee:
            Thomas Friedrich
            Reporter:
            Thomas Friedrich
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:

              Development