Änderungen bekannt gegeben am 5. Februar 2024

Bekanntmachungen zu Änderungen bei Protocol Buffers am 5. Februar 2024.

Dieses Thema behandelt abwärtskompatible Änderungen in Java, C++ und Python in der 26.x-Linie.

Änderungen an JSON-Formatierungsoptionen

Ab der 26.x-Linie wird die JSON-Formatierungsoption zum Drucken von Feldern mit Standardwerten durch eine feste Methode zum konsistenten Behandeln von optional-Feldern in proto2 und proto3 ersetzt.

  • Java: includingDefaultValueFields() wird durch alwaysPrintFieldsWithNoPresence() ersetzt.
  • C++: always_print_default_values wird durch always_print_fields_with_no_presence=True ersetzt.
  • Py: including_default_value_fields=True wird durch always_print_fields_with_no_presence=True ersetzt.

Die neue Flagge verhält sich bei proto3-Nachrichten identisch zur alten Flagge, ist aber nicht mehr auf proto2 optional-Felder anwendbar. Die alten Flaggen waren auf proto2 optional-Felder anwendbar, aber nicht auf proto3 optional-Felder.