Sourced from protobuf-java's releases.
Protocol Buffers v3.18.0
C++
- Fix warnings raised by clang 11 (#8664)
- Make StringPiece constructible from std::string_view (#8707)
- Add missing capability attributes for LLVM 12 (#8714)
- Stop using std::iterator (deprecated in C++17). (#8741)
- Move field_access_listener from libprotobuf-lite to libprotobuf (#8775)
- Fix #7047 Safely handle setlocale (#8735)
- Remove deprecated version of SetTotalBytesLimit() (#8794)
- Support arena allocation of google::protobuf::AnyMetadata (#8758)
- Fix undefined symbol error around SharedCtor() (#8827)
- Fix default value of enum(int) in json_util with proto2 (#8835)
- Better Smaller ByteSizeLong
- Introduce event filters for inject_field_listener_events
- Reduce memory usage of DescriptorPool
- For lazy fields copy serialized form when allowed.
- Re-introduce the InlinedStringField class
- v2 access listener
- Reduce padding in the proto's ExtensionRegistry map.
- GetExtension performance optimizations
- Make tracker a static variable rather than call static functions
- Support extensions in field access listener
- Annotate MergeFrom for field access listener
- Fix incomplete types for field access listener
- Add map_entry/new_map_entry to SpecificField in MessageDifferencer. They record the map items which are different in MessageDifferencer's reporter.
- Reduce binary size due to fieldless proto messages
- TextFormat: ParseInfoTree supports getting field end location in addition to start.
- Fix repeated enum extension size in field listener
- Enable Any Text Expansion for Descriptors::DebugString()
- Switch from int{8,16,32,64} to int{8,16,32,64}_t
Java
- Fix errorprone conflict (#8723)
- Removing deprecated TimeUtil class. (#8749)
- Optimized FieldDescriptor.valueOf() to avoid array copying.
- Removing deprecated TimeUtil class.
- Add Durations.parseUnchecked(String) and Timestamps.parseUnchecked(String)
- FieldMaskUtil: Add convenience method to mask the fields out of a given proto.
JavaScript
- Optimize binary parsing of repeated float64
- Fix for optimization when reading doubles from binary wire format
- Replace toArray implementation with toJSON.
PHP
... (truncated)
89b14b1 Update change log (#8974)12fb2b7 Update protobuf version (#8973)ac02d6c Merge pull request #8970 from haberman/ruby-repeated-plus-arena39dc8ad Merge pull request #8969 from haberman/php-destructor226e0ee8 Fixed multirequest.sh script for when nohup.out does not exist.66a3e1a Added missing file to EXTRA_DIST.79ac88b Fixed a memory bug with RepeatedField#+.759a539 Fixed PHP SEGV when constructing messages from a destructor.605ab95 Merge pull request #8964 from haberman/php-8.144df0ab Added support for PHP 8.1 (currently in RC1).