Skip to content

Commit

Permalink
Merge pull request #18798 from protocolbuffers/gberg-cp-28
Browse files Browse the repository at this point in the history
Fix compatibility issues with 3.22 gencode
  • Loading branch information
googleberg authored Oct 11, 2024
2 parents fe3bb07 + 3b62d78 commit ce5174a
Show file tree
Hide file tree
Showing 2 changed files with 74 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@
import com.google.protobuf.Descriptors.Descriptor;
import com.google.protobuf.Descriptors.FieldDescriptor;
import com.google.protobuf.Descriptors.OneofDescriptor;
import com.google.protobuf.Internal.BooleanList;
import com.google.protobuf.Internal.DoubleList;
import com.google.protobuf.Internal.FloatList;
import com.google.protobuf.Internal.IntList;
import com.google.protobuf.Internal.LongList;
import java.util.List;

/**
Expand All @@ -36,6 +41,46 @@ protected GeneratedMessageV3(Builder<?> builder) {
super(builder);
}

/* @deprecated This method is deprecated, and slated for removal in the next Java breaking change
* (5.x). Users should update gencode to >= 4.26.x which uses makeMutableCopy() instead.
*/
@Deprecated
protected static IntList mutableCopy(IntList list) {
return makeMutableCopy(list);
}

/* @deprecated This method is deprecated, and slated for removal in the next Java breaking change
* (5.x). Users should update gencode to >= 4.26.x which uses makeMutableCopy() instead.
*/
@Deprecated
protected static LongList mutableCopy(LongList list) {
return makeMutableCopy(list);
}

/* @deprecated This method is deprecated, and slated for removal in the next Java breaking change
* (5.x). Users should update gencode to >= 4.26.x which uses makeMutableCopy() instead.
*/
@Deprecated
protected static FloatList mutableCopy(FloatList list) {
return makeMutableCopy(list);
}

/* @deprecated This method is deprecated, and slated for removal in the next Java breaking change
* (5.x). Users should update gencode to >= 4.26.x which uses makeMutableCopy() instead.
*/
@Deprecated
protected static DoubleList mutableCopy(DoubleList list) {
return makeMutableCopy(list);
}

/* @deprecated This method is deprecated, and slated for removal in the next Java breaking change
* (5.x). Users should update gencode to >= 4.26.x which uses makeMutableCopy() instead.
*/
@Deprecated
protected static BooleanList mutableCopy(BooleanList list) {
return makeMutableCopy(list);
}

/* Overrides abstract GeneratedMessage.internalGetFieldAccessorTable().
*
* @deprecated This method is deprecated, and slated for removal in the next Java breaking change
Expand Down
29 changes: 29 additions & 0 deletions java/util/src/main/java/com/google/protobuf/util/JsonFormat.java
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,35 @@ public Printer usingTypeRegistry(com.google.protobuf.TypeRegistry registry) {
sortingMapKeys);
}

/**
* Creates a new {@link Printer} that will always print fields unless they are a message type or
* in a oneof.
*
* <p>Note that this does print Proto2 Optional but does not print Proto3 Optional fields, as
* the latter is represented using a synthetic oneof.
*
* <p>The new Printer clones all other configurations from the current {@link Printer}.
*
* @deprecated This method is deprecated, and slated for removal in the next Java breaking
* change (5.x). Prefer {@link #alwaysPrintFieldsWithNoPresence}
*/
@Deprecated
public Printer includingDefaultValueFields() {
if (shouldPrintDefaults != ShouldPrintDefaults.ONLY_IF_PRESENT) {
throw new IllegalStateException(
"JsonFormat includingDefaultValueFields has already been set.");
}
return new Printer(
registry,
oldRegistry,
ShouldPrintDefaults.ALWAYS_PRINT_EXCEPT_MESSAGES_AND_ONEOFS,
ImmutableSet.of(),
preservingProtoFieldNames,
omittingInsignificantWhitespace,
printingEnumsAsInts,
sortingMapKeys);
}

/**
* Creates a new {@link Printer} that will also print default-valued fields if their
* FieldDescriptors are found in the supplied set. Empty repeated fields and map fields will be
Expand Down

0 comments on commit ce5174a

Please sign in to comment.