Protocol Buffers v3.11.0 Release Notes

Release Date: 2019-11-26 // over 2 years ago
  • C++

    • ๐Ÿ‘‰ Make serialization method naming consistent
    • ๐Ÿ—„ Make proto runtime + generated code free of deprecation warnings
    • Moved ShutdownProtobufLibrary() to message_lite.h. For backward compatibility a declaration is still available in stubs/common.h, but users should prefer message_lite.h
    • โœ‚ Removed non-namespace macro EXPECT_OK()
    • โœ‚ Removed mathlimits.h from stubs in favor of using std::numeric_limits from C++11
    • ๐Ÿ›  Fixed bug in parser when ending on a group tag
    • โž• Add a helper function to UnknownFieldSet to deal with the changing return value of message::unknown_fields()
    • ๐Ÿ›  Fix incorrect use of string_view iterators
    • ๐Ÿ‘Œ Support direct pickling of nested messages
    • Skip extension tag validation for MessageSet if unknown dependencies are allowed
    • โšก๏ธ Updated deprecation macros to annotate deprecated code (#6612)
    • โœ‚ Remove conversion warning in MapEntryFuncs::ByteSizeLong (#6766)
    • โช Revert "Make shared libraries be able to link to MSVC static runtime libraries, so that VC runtime is not required." (#6914)

    Java

    • โœ‚ Remove the usage of MethodHandle, so that Android users prior to API version 26 can use protobuf-java
    • Publish ProGuard config for javalite
    • ๐Ÿ›  Fix for StrictMode disk read violation in ExtensionRegistryLite
    • โœ… Include part of the ByteString's content in its toString().
    • ๐Ÿ— Include unknown fields when merging proto3 messages in Java lite builders

    Python

    • โž• Add float_precision option in json format printer
    • ๐Ÿ–จ Optionally print bytes fields as messages in unknown fields, if possible
    • โœ… FieldPath: fix testing IsSet on root path ''
    • Experimental code gen (fast import protobuf module) which only work with cpp generated code linked in

    JavaScript

    • โœ‚ Remove guard for Symbol iterator for jspb.Map

    PHP

    • Avoid too much overhead in layout_init (#6716)
    • Lazily Create Singular Wrapper Message (#6833)
    • Implement lazy loading of php class for proto messages (#6911)

    ๐Ÿ’Ž Ruby

    • ๐Ÿ’Ž Ruby lazy wrappers optimization (#6797)

    C

    Objective C

    • ๐Ÿ›  Fixed unaligned reads for 32bit arm with newer Xcode versions (#6678)