f0rmiga / gcc-toolchain

A fully-hermetic Bazel GCC toolchain for Linux.
Apache License 2.0
103 stars 24 forks source link

chore(deps): update dependency com_google_protobuf to v23 - autoclosed #144

Closed renovate[bot] closed 1 year ago

renovate[bot] commented 1 year ago

Mend Renovate

This PR contains the following updates:

Package Type Update Change
com_google_protobuf http_archive major v3.21.12 -> v23.4

Release Notes

protocolbuffers/protobuf (com_google_protobuf) ### [`v23.4`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v23.4): Protocol Buffers v23.4 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v23.3...v23.4) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### Compiler - Add dllexport_decl for generated default instance. ([#​13085](https://togithub.com/protocolbuffers/protobuf/issues/13085)) (https://github.com/protocolbuffers/protobuf/commit/0c70d9514090a2e5e5b35eba7e4d23d97592ec49) ### Java - Deps: Update Guava to 32.0.1 (https://github.com/protocolbuffers/protobuf/commit/40d577782b75aa4f3d9149a1eb6b01b2349f13af) ### [`v23.3`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v23.3): Protocol Buffers v23.3 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v23.2...v23.3) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### C++ - Regenerate stale files ([#​13046](https://togithub.com/protocolbuffers/protobuf/issues/13046)) (https://github.com/protocolbuffers/protobuf/commit/58b6ddb03ef8f186c9225d0107213f74750a82f3) - Use the same ABI for static and shared libraries on non-Windows platforms ([#​12983](https://togithub.com/protocolbuffers/protobuf/issues/12983)) (https://github.com/protocolbuffers/protobuf/commit/efa1ec75cf152991a64cedf9c4a1ec5cb826ee34) ### Objective-C - Regenerate stale files ([#​13046](https://togithub.com/protocolbuffers/protobuf/issues/13046)) (https://github.com/protocolbuffers/protobuf/commit/58b6ddb03ef8f186c9225d0107213f74750a82f3) ### UPB (Python/PHP/Ruby C-Extension) - Fixed a bug in `upb_Map_Delete()` that caused crashes in map.delete(k) for Ruby when string-keyed maps were in use. (https://github.com/protocolbuffers/upb/commit/2de798e976d6c12d75b8b7d40f38da1f0ef53c8b) ### [`v23.2`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v23.2): Protocol Buffers v23.2 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v23.1...v23.2) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### Compiler - Add missing header to Objective-c generator ### Java - Rollback of: Simplify protobuf Java message builder by removing methods that calls the super class only. (https://github.com/protocolbuffers/protobuf/commit/b556b8871cd07971b09df7b73ff6a461d78560fb) ### [`v23.1`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v23.1): Protocol Buffers v23.1 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v23.0...v23.1) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### Compiler - Add a workaround for GCC constexpr bug (https://github.com/protocolbuffers/protobuf/commit/67ecdde4f257094c4019ebfda62b2ae60facb6fa) ### C++ - Add a workaround for GCC constexpr bug (https://github.com/protocolbuffers/protobuf/commit/67ecdde4f257094c4019ebfda62b2ae60facb6fa) ### Csharp - \[C#] Replace regex that validates descriptor names ([#​12174](https://togithub.com/protocolbuffers/protobuf/issues/12174)) (https://github.com/protocolbuffers/protobuf/commit/0ced986277be52dcb666e802a4602081df4e7264) ### [`v23.0`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v23.0): Protocol Buffers v23.0 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v22.5...v23.0) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### Compiler - Implement a retain_options flag in protoc. (https://github.com/protocolbuffers/protobuf/commit/83507c7f4e8a53cc6e800efac5ce157cd960f657) - Make protoc --descriptor_set_out respect option retention (https://github.com/protocolbuffers/protobuf/commit/ae2531dcc2492c51554ea36d15540ff816ca6abd) - Modify release artifacts for protoc to statically link system libraries. (https://github.com/protocolbuffers/protobuf/commit/723bd4c3c1a51ccf7e9726453f0b710223c4b583) - Extension declaration: Enforce that if the extension range has a declaration then all extensions in that range must be declared. This should prevent non-declared extensions from being added. (https://github.com/protocolbuffers/protobuf/commit/5dc171f71eca66579b06d4400ee5c94bfa68947a) - Implement "reserved" for extension declaration. (https://github.com/protocolbuffers/protobuf/commit/41287bd5d5373e91277b849e93c7ae2a0238b5c3) - Open-source extension declaration definition. (https://github.com/protocolbuffers/protobuf/commit/145900f06c732974af996a28a3e2c211ae104888) ### C++ - Fix(libprotoc): export useful symbols from .so (https://github.com/protocolbuffers/protobuf/commit/46fb4aa8d2ade5e0067fce271fcb5293c5c70500) - Turn off clang::musttail on i386 (https://github.com/protocolbuffers/protobuf/commit/b40633ff0bf9b34bf3bec9f3d35eec2d951a98b8) - Fixes Clang 6 linker bug (https://github.com/protocolbuffers/protobuf/commit/49bb3f20647b914fc52909eec19f260fb9a945f3) - Remove PROTOBUF_DEPRECATED in favor of \[\[deprecated]]. (https://github.com/protocolbuffers/protobuf/commit/5c59290022dcbbea71099bc40097a149a2446f21) - Add `assert` to the list of keywords for C++. (https://github.com/protocolbuffers/protobuf/commit/a75c1a2761e49d8afb7838c03b923b909420f7fd) - Added Reflection::GetCord() method in C++ (https://github.com/protocolbuffers/protobuf/commit/6ecb5d097e8d9bfafeb5ec8d251827f0d444f2ce) - Support C++ protobuf ctype=CORD for bytes field (generated code). (https://github.com/protocolbuffers/protobuf/commit/714f97502662ae75ed64f8456b43d5536740b022) - Expand LazySerializerEmitter to cover proto3 cases. (https://github.com/protocolbuffers/protobuf/commit/fab7f928b5375a20fd8d33556632128e936ad436) - Unconditionally generate unknown field accessors. (https://github.com/protocolbuffers/protobuf/commit/dd8a3cf2b54a06ef0558c004f9fca570278ad4a1) - Introduce proto filter for inject_field_listener_events. (https://github.com/protocolbuffers/protobuf/commit/2dc5338ea222e1f4e0357e46b702ed6a0e82aaeb) - Add ParseFromCord to TextFormat (https://github.com/protocolbuffers/protobuf/commit/055a6c669fd1ee67803f71dcc55a3b746376934f) - Mark proto2::Arena::GetArena as deprecated. (https://github.com/protocolbuffers/protobuf/commit/9f959583da525ba006a6dc6b8b8b733e4d8c619a) ### Java - Adds `Timestamps.now()`. (https://github.com/protocolbuffers/protobuf/commit/295f1125ceff5e07dfb8bfd2d7bada6c28918c0c) - Added Reflection::GetCord() method in C++ (https://github.com/protocolbuffers/protobuf/commit/6ecb5d097e8d9bfafeb5ec8d251827f0d444f2ce) - Re-attach OSGI headers to lite,core, and util. This information was dropped in the move from maven to bazel. (https://github.com/protocolbuffers/protobuf/commit/4b5652b030eda12fa1c7ea3e1ddd8d0404bd4ac5) - Add Java FileDescriptor.copyHeadingTo() which copies file-level settings (e.g. syntax, package, file options) to FileDescriptorProto.Builder (https://github.com/protocolbuffers/protobuf/commit/6e6d0bce4a04fd13d50485c22ecc7e96d9a16000) - Remove unnecessary has bits from proto2 Java. (https://github.com/protocolbuffers/protobuf/commit/c440da9e1389db520b79acb19cb55e5b3266dfba) - Add casts to make protobuf compatible with Java 1.8 runtime. (https://github.com/protocolbuffers/protobuf/commit/d40aadf823cf7e1e62b65561656f689da8969463) - Fix mutability bug in Java proto lite: sub-messages inside of oneofs were not (https://github.com/protocolbuffers/protobuf/commit/fa82155c653776304bf6d03c33bea744db1b5eff) - Document known quirks of EnumDescriptor::is_closed() when importing across files with different syntaxes. (https://github.com/protocolbuffers/protobuf/commit/1de344fcd1c1b2c6ec937151d69634171463370d) ##### Kotlin - Remove errorprone dependency from kotlin protos. (https://github.com/protocolbuffers/protobuf/commit/7b6e8282157f0280ecb3fd9fd4c6519a7cd5afbc) ### Csharp - Make json_name take priority over name (fully) in C# parsing ([#​12262](https://togithub.com/protocolbuffers/protobuf/issues/12262)) (https://github.com/protocolbuffers/protobuf/commit/4326e0f852a3cf47c30bf99db66c3e3e77658dfb) - Add C# presence methods to proto3 oneof fields. (https://github.com/protocolbuffers/protobuf/commit/affadac847370221e2ec0e405d5715b4a22e518f) ### Objective-C - Enforce the max message size when serializing to binary form. (https://github.com/protocolbuffers/protobuf/commit/e6d01b2edcb04fdfb0f3cf79bf9d427f57fa2eac) - Mark mergeFromData:extensionRegistry: as deprecated. (https://github.com/protocolbuffers/protobuf/commit/e3b00511099838e22f59827bfb7c72e27fcc22fa) ### Python - Fix bug in \_internal_copy_files where the rule would fail in downstream repositories. (https://github.com/protocolbuffers/protobuf/commit/b36c39236e43f4ab9c1472064b6161d00aef21c5) - Make numpy/pip_deps a test-only dependency. (https://github.com/protocolbuffers/protobuf/commit/fe038fc9d2e6a469c3cd2f1a84a6560c0a123481) - Fix Python bug with required fields (https://github.com/protocolbuffers/protobuf/commit/579f4ab70dc5c37f075a0b3f186fe80dcdf8165d) - Mark deprecated SupportsUnknownEnumValues on Message reflection. Use FieldDescriptor or EnumDescriptor instead. (https://github.com/protocolbuffers/protobuf/commit/0b9134bb4eb281c3ed1446e8acf1aa354e0fe67e) - Raise warnings for MessageFactory class usages (https://github.com/protocolbuffers/protobuf/commit/dd9dd86fbca3ab5c1c7f0aa2534dc5da61530711) - Add Python support for retention attribute (https://github.com/protocolbuffers/protobuf/commit/63389c027f474954e8178e77ac624e8ef952626d) - Document known quirks of EnumDescriptor::is_closed() when importing across files with different syntaxes. (https://github.com/protocolbuffers/protobuf/commit/1de344fcd1c1b2c6ec937151d69634171463370d) ##### Python C-Extension (Default) - Fix Python bug with required fields (https://github.com/protocolbuffers/upb/commit/ea4cb79f669e69342d7ced4d0255050325df41e3) - *See also UPB changes below, which may affect Python C-Extension (Default).* ### PHP - RepeatedField: unset by index ([#​11425](https://togithub.com/protocolbuffers/protobuf/issues/11425)) (https://github.com/protocolbuffers/protobuf/commit/363fa89b1f02d4c51028f8c8bcd506f08eaa6b49) ##### PHP C-Extension - RepeatedField: unset by index ([#​11425](https://togithub.com/protocolbuffers/protobuf/issues/11425)) (https://github.com/protocolbuffers/protobuf/commit/363fa89b1f02d4c51028f8c8bcd506f08eaa6b49) - *See also UPB changes below, which may affect PHP C-Extension.* ### Ruby - Change the Ruby code generator to emit a serialized proto instead of the DSL ([#​12319](https://togithub.com/protocolbuffers/protobuf/issues/12319)) (https://github.com/protocolbuffers/protobuf/commit/bd52d0483987f1a5186fc3daa261d1d76a787bcf) - Feat(6178): emit ruby enum as integer ([#​11673](https://togithub.com/protocolbuffers/protobuf/issues/11673)) (https://github.com/protocolbuffers/protobuf/commit/8aa2b177f156393ce607b4ffea8c1ac28560c746) ##### Ruby C-Extension - Feat(6178): emit ruby enum as integer ([#​11673](https://togithub.com/protocolbuffers/protobuf/issues/11673)) (https://github.com/protocolbuffers/protobuf/commit/8aa2b177f156393ce607b4ffea8c1ac28560c746) - Ruby: Implement Write Barriers ([#​11793](https://togithub.com/protocolbuffers/protobuf/issues/11793)) (https://github.com/protocolbuffers/protobuf/commit/d82d8a48f6c50ae6c811dbd6b7383e36a691c6b3) - *See also UPB changes below, which may affect Ruby C-Extension.* ### UPB (Python/PHP/Ruby C-Extension) - Implements upb_Message_DeepClone. (https://github.com/protocolbuffers/upb/commit/3286f948f888f0c912c4ec483db9a1a50a6782a3) ### Other - Fix: missing -DPROTOBUF_USE_DLLS in pkg-config ([#​12700](https://togithub.com/protocolbuffers/protobuf/issues/12700)) (https://github.com/protocolbuffers/protobuf/commit/1ca4e9c4859a23112684138c78608ddc0b8f1770) - Avoid using string(JOIN..., which requires cmake 3.12 (https://github.com/protocolbuffers/protobuf/commit/54caf40312b3e7fd7794e267ef17e3be202de83d) - Bump Abseil submodule to [`2023012`](https://togithub.com/protocolbuffers/protobuf/commit/20230125).3 ([#​12660](https://togithub.com/protocolbuffers/protobuf/issues/12660)) (https://github.com/protocolbuffers/protobuf/commit/750a6e7d7cbd8c022e18834f0a57fcd76d2c3c58) - Fix btree issue in map tests. (https://github.com/protocolbuffers/protobuf/commit/9898418bd9188b22e9db7f94529df638e65b14f7) - Fix declared dependencies for pkg-config ([#​12518](https://togithub.com/protocolbuffers/protobuf/issues/12518)) (https://github.com/protocolbuffers/protobuf/commit/f79e35c821a50c6a37ffe365511b892f5409ac44) - Fix build for newlib ([#​12501](https://togithub.com/protocolbuffers/protobuf/issues/12501)) (https://github.com/protocolbuffers/protobuf/commit/945bf3c48de64eb3c8a96f5dd36c19670c3dbcdd) - Update usage disclaimer on FieldOptions.ctype (https://github.com/protocolbuffers/protobuf/commit/b8e7192a731a8ece54b11f2caf87c32209559525) - Add config option to print 64-bit integers in JSON as unquoted ints if they can be losslessly converted into a 64-bit float. (https://github.com/protocolbuffers/protobuf/commit/330e10d53fe1c12757f1cdd7293d0881eac4d01e) - Version protoc according to the compiler version number. (https://github.com/protocolbuffers/protobuf/commit/e67136d289e6cf4265e2763dd77216940c400ac9) - Fix shared object ABI exports ([#​5144](https://togithub.com/protocolbuffers/protobuf/issues/5144)) ([#​11032](https://togithub.com/protocolbuffers/protobuf/issues/11032)) (https://github.com/protocolbuffers/protobuf/commit/462964ed322503af52638d54c00a0a67d7133349) - Ensure VarintParseSlowArm{32,64} are exported with PROTOBUF_EXPORT (https://github.com/protocolbuffers/protobuf/commit/2ce56399e30db62e45869c6fd2d2bbacbb81a7ed) - Update the min required CMake version to 3.10 (https://github.com/protocolbuffers/protobuf/commit/bcb20bbdfa0cba15c869d413edaaeb8507526a2e) ### [`v22.5`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v22.5): Protocol Buffers v22.5 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v22.4...v22.5) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### C++ - Fix: avoid warnings on MSVC ([#​12697](https://togithub.com/protocolbuffers/protobuf/issues/12697)) (https://github.com/protocolbuffers/protobuf/commit/4483f10a1d7a553b17301d8fce477a12a6777c00) - Fix: avoid warnings on Windows ([#​12701](https://togithub.com/protocolbuffers/protobuf/issues/12701)) (https://github.com/protocolbuffers/protobuf/commit/a1435ade2aad3ce1171d7bdfcc051df3c97ec71c) - Add missing cstdint header (https://github.com/protocolbuffers/protobuf/commit/9daf5fb6ca8c8309548059c8f3c3574875036354) - Fix: missing -DPROTOBUF_USE_DLLS in pkg-config ([#​12700](https://togithub.com/protocolbuffers/protobuf/issues/12700)) (https://github.com/protocolbuffers/protobuf/commit/18fae1c15112efad2080c2b2f726d904fea48b35) - Avoid using string(JOIN..., which requires cmake 3.12 (https://github.com/protocolbuffers/protobuf/commit/0ce610ef46ce8937306778105a881cd7c28657ec) - Explicitly include GTest package in examples (https://github.com/protocolbuffers/protobuf/commit/5191c3b26435dd852cd57e9ab5c73f4ea8753183) - Bump Abseil submodule to [`2023012`](https://togithub.com/protocolbuffers/protobuf/commit/20230125).3 ([#​12660](https://togithub.com/protocolbuffers/protobuf/issues/12660)) (https://github.com/protocolbuffers/protobuf/commit/2880a20b01af3c955a76f2a1a58342fea8b5f741) ### [`v22.4`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v22.4): Protocol Buffers v22.4 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v22.3...v22.4) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### C++ - Fix libprotoc: export useful symbols from .so (https://github.com/protocolbuffers/protobuf/commit/860fbf10c7347a2ccca2ca27cb1cc80acacc929c) - Fix btree issue in map tests. (https://github.com/protocolbuffers/protobuf/commit/d379c083cb54ad3d908d7adbc46202b9e8a6f8e3) ### Python - Fix bug in \_internal_copy_files where the rule would fail in downstream repositories. (https://github.com/protocolbuffers/protobuf/commit/859410bccc59aeeef1c48e34960fe93827767bac) ### Other - Bump utf8\_range to version with working pkg-config ([#​12584](https://togithub.com/protocolbuffers/protobuf/issues/12584)) (https://github.com/protocolbuffers/protobuf/commit/b05ee4f0102e60dbf63c55ff79839879a6ca2a03) - Fix declared dependencies for pkg-config (https://github.com/protocolbuffers/protobuf/commit/2c55945fc55eddef4f38f5f43b2a7b0c9a45accf) - Update abseil dependency and reorder dependencies to ensure we use the version specified in protobuf_deps. (https://github.com/protocolbuffers/protobuf/commit/99529a22092fd2b06bfddc3d0af702ff7a1b39bf) - Turn off clang::musttail on i386 (https://github.com/protocolbuffers/protobuf/commit/5381f405067b28920c7a8dd37b892ce55c654e29) ### [`v22.3`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v22.3): Protocol Buffers v22.3 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v22.2...v22.3) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### UPB (Python/PHP/Ruby C-Extension) - Remove src prefix from proto import (https://github.com/protocolbuffers/upb/commit/e05f22a398cdfd6d760653ff862f290b06940e3b) ### Other - Fix .gitmodules to use the correct absl branch (https://github.com/protocolbuffers/protobuf/commit/f51da1fe664ad4e76a0238b7ddbf78bb72fb0d8b) - Remove erroneous dependency on googletest ([https://github.com/protocolbuffers/protobuf/pull/12276](https://togithub.com/protocolbuffers/protobuf/pull/12276)) ### [`v22.2`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v22.2): Protocol Buffers v22.2 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v22.1...v22.2) ### Announcements - **This release was only published for Java and Ruby.** - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### Java - Add version to intra proto dependencies and add kotlin stdlib dependency (https://github.com/protocolbuffers/protobuf/commit/99ed01009f14fbfb885f98c3512818af8033ef6a) - Add $ back for osgi header (https://github.com/protocolbuffers/protobuf/commit/d80c12d3221fd489b779fccf0020a17bd666a311) - Remove $ in pom files (https://github.com/protocolbuffers/protobuf/commit/8ac23375950e905f54f2523807b68618bd047835) ##### Kotlin - Add version to intra proto dependencies and add kotlin stdlib dependency (https://github.com/protocolbuffers/protobuf/commit/99ed01009f14fbfb885f98c3512818af8033ef6a) - Remove $ in pom files (https://github.com/protocolbuffers/protobuf/commit/8ac23375950e905f54f2523807b68618bd047835) ### [`v22.1`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v22.1): Protocol Buffers v22.1 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v22.0...v22.1) ### Announcements - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### Compiler - Modify release artifacts for protoc to statically link system libraries. (https://github.com/protocolbuffers/protobuf/commit/8ad6cdd007fe8c09ec95e69cc7a7419264d11655) - Add visibility of plugin.proto to python directory (https://github.com/protocolbuffers/protobuf/commit/620d21a8ac8ba9b00f4519df6af28f09d184ac3e) - Strip "src" from file name of plugin.proto (https://github.com/protocolbuffers/protobuf/commit/9c89a70e6b62ec2914fa7ff72570c553e530b9b7) ### Java - Add OSGi headers to pom files. (https://github.com/protocolbuffers/protobuf/commit/e909bfc5174b73d5bcf32199bc0f71dde7325c2f) ##### Kotlin - Remove errorprone dependency from kotlin protos. (https://github.com/protocolbuffers/protobuf/commit/66f80c3610b0cd61bedd42c78e78ae2eac002142) ### Other - Version protoc according to the compiler version number. (https://github.com/protocolbuffers/protobuf/commit/b1435864256653b18cb8c1fc40b1c9e0da5f978e) ### [`v22.0`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v22.0): Protocol Buffers v22.0 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v21.12...v22.0) ### Announcements - **This version includes breaking changes to: Cpp.** - \[Cpp] Migrate to Abseil's logging library. (https://github.com/protocolbuffers/protobuf/commit/a9f1ea6371c108876649f27a5940a59cc8594768) - \[Cpp] `proto2::Map::value_type` changes to `std::pair`. (https://github.com/protocolbuffers/protobuf/commit/46656ed080e959af3d0cb5329c063416b5a93ef0) - \[Cpp] Mark final ZeroCopyInputStream, ZeroCopyOutputStream, and DefaultFieldComparator classes. (https://github.com/protocolbuffers/protobuf/commit/bf9c22e1008670b497defde335f042ffd5ae25a1) - \[Cpp] Add a dependency on Abseil ([#​10416](https://togithub.com/protocolbuffers/protobuf/issues/10416)) - \[Cpp] Remove all autotools usage ([#​10132](https://togithub.com/protocolbuffers/protobuf/issues/10132)) - \[Cpp] Add C++20 reserved keywords - \[Cpp] Dropped C++11 Support - \[Cpp] Delete Arena::Init - \[Cpp] Replace JSON parser with new implementation - \[Cpp] Make RepeatedField::GetArena non-const in order to support split RepeatedFields. - You can refer to our [migration guide](https://protobuf.dev/programming-guides/migration/) for details on what C++ code changes will be necessary to be compatible with 22.0. - [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. ### Compiler - Breaking change: Migrate to Abseil's logging library. (https://github.com/protocolbuffers/protobuf/commit/a9f1ea6371c108876649f27a5940a59cc8594768) - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Protoc: accept capital X to indicate hex escape in string literals ([#​10757](https://togithub.com/protocolbuffers/protobuf/issues/10757)) - Gracefully handle weird placement of linebreaks around comments ([#​10660](https://togithub.com/protocolbuffers/protobuf/issues/10660)) - Open up visibility for some compiler internals ([#​10608](https://togithub.com/protocolbuffers/protobuf/issues/10608)) - Protoc: validate reserved names are identifiers ([#​10586](https://togithub.com/protocolbuffers/protobuf/issues/10586)) - Protoc: validate custom json_name configuration ([#​10581](https://togithub.com/protocolbuffers/protobuf/issues/10581)) - Protoc: fix consistency with parsing very large decimal numbers ([#​10555](https://togithub.com/protocolbuffers/protobuf/issues/10555)) - Use protoc version for --version ([#​10386](https://togithub.com/protocolbuffers/protobuf/issues/10386)) - Fix for grpc.tools [#​17995](https://togithub.com/protocolbuffers/protobuf/issues/17995) & protobuf [#​7474](https://togithub.com/protocolbuffers/protobuf/issues/7474) (handle UTF-8 paths in argumentfile) ([#​10200](https://togithub.com/protocolbuffers/protobuf/issues/10200)) - Print full path name of source .proto file on error - Include proto message type in the annotation comments. - Maven artifact suffix format has changed to -RCN instead of -rc-N ### C++ - Document known quirks of EnumDescriptor::is_closed() when importing across files with different syntaxes. (https://github.com/protocolbuffers/protobuf/commit/a594141cc408b972c9ffe2bcf14958174d0a4fe4) - Add C++ support for retention attribute (https://github.com/protocolbuffers/protobuf/commit/8f882e7f3d0535760c46f8cdde9f40006e33e02a) - Breaking change: Migrate to Abseil's logging library. (https://github.com/protocolbuffers/protobuf/commit/a9f1ea6371c108876649f27a5940a59cc8594768) - No longer define no_threadlocal on OpenBSD ([#​10610](https://togithub.com/protocolbuffers/protobuf/issues/10610)) - CMake: Enable projects to set the C++ version ([#​10464](https://togithub.com/protocolbuffers/protobuf/issues/10464)) - Breaking Change: Add a dependency on Abseil ([#​10416](https://togithub.com/protocolbuffers/protobuf/issues/10416)) - Upgrade third_party/googletest submodule to current main branch ([#​10393](https://togithub.com/protocolbuffers/protobuf/issues/10393)) - Breaking Change: Remove all autotools usage ([#​10132](https://togithub.com/protocolbuffers/protobuf/issues/10132)) - CMake: use add_compile_options instead of add_definitions for compile options ([#​10293](https://togithub.com/protocolbuffers/protobuf/issues/10293)) - Fix [#​9947](https://togithub.com/protocolbuffers/protobuf/issues/9947): make the ABI identical between debug and non-debug builds ([#​10271](https://togithub.com/protocolbuffers/protobuf/issues/10271)) - Allow for CMAKE_INSTALL_LIBDIR to be absolute ([#​10090](https://togithub.com/protocolbuffers/protobuf/issues/10090)) - Add header search paths to protobuf-c++ spec ([#​10024](https://togithub.com/protocolbuffers/protobuf/issues/10024)) - Cpp_generated_lib_linked support is removed in protoc - Reduced .pb.o object file size slightly by explicitly instantiating - Breaking Change: Add C++20 reserved keywords. - Breaking Change: Dropped C++11 Support - Fixed crash in ThreadLocalStorage for pre-C++17 compilers on 32-bit ARM. - Clarified that JSON API non-OK statuses are not a stable API. - Added a default implementation of MessageDifferencer::Reporter methods. - Proto2::MapPair is now an alias to std::pair. - Hide C++ RepeatedField::UnsafeArenaSwap - Use table-driven parser for reflection based objects. - Add ARM-optimized Varint decoding functions. - Minor optimization for parsing groups - Declare ReflectiveProtoHook class - Reduce size of VarintParse code in protocol buffers, by calling the shared - Avoid inlining some large heavily duplicated routines in repeated_ptr_field.h - Add ReflectiveProtoHook to Reflection. - Turns on table-driven parser for reflection based objects. - Save code space by avoiding inlining of large-in-aggregate code-space MessageLite::~MessageLite destructor. - Undefine the macro `linux` when compiling protobuf - Reduce memory consumption of MessageSet parsing. - Save code space by avoiding inlining of large-in-aggregate code-space MessageLite::~MessageLite destructor. - Breaking Change: Delete Arena::Init - Make a PROTOBUF_POISON/UNPOISON to reduce noise in the source - Put alignment functions in "arena_align.h" - Split off `cleanup` arena functions into "arena_cleanup.h" - Fix signed / unsigned match in CHECK_EQ - Kill Atomic<>. it's not pulling it's weight - Move AllocationPolicy out of arena_impl, and unify arena_config for bazel - Fix failure case in table-driven parser. - Breaking Change: Replace JSON parser with new implementation - Introduce the Printer::{SetRedactDebugString,SetRandomizeDebugString} private flags. - Introduce global flags to control Printer::{SetRedactDebugString, SetRandomizeDebugString}. - Proto3 string fields no longer trigger clang-tidy warning bugprone-branch-clone. - Fix the API of DescriptorUpgrader::set_allow_unknown_dependencies to set to True always, and to populate into the DescriptorPool as well. - Report line numbers consistently in text-format deprecated-field warnings. - Fixed C++ code generation for protos that use int32\_t, uint32\_t, int64\_t, uint64\_t, size_t as field names. - Annotate generated C++ public aliases for enum types. - Change default arena max block size from 8K to 32K. - Begin emitting semantic metadata for some C++ proto features. (https://github.com/protocolbuffers/protobuf/commit/2880fef06cb7443ba24dc1264ba9f02115407f2c) ### Java - Document known quirks of EnumDescriptor::is_closed() when importing across files with different syntaxes. (https://github.com/protocolbuffers/protobuf/commit/a594141cc408b972c9ffe2bcf14958174d0a4fe4) - Use LazyStringArrayList directly in gencode. (https://github.com/protocolbuffers/protobuf/commit/e6dd59e6cdd16664d60f9e2c2ee97cf1effb4fa7) - Add Java support for retention attribute (https://github.com/protocolbuffers/protobuf/commit/1325913afd65b39c268e5c4101d6b82f32957ae9) - Expect fail when serialize inf and nan for Value.number_value in json format. fixes [#​11259](https://togithub.com/protocolbuffers/protobuf/issues/11259) (https://github.com/protocolbuffers/protobuf/commit/ca1cb1ba80ef18f5dccfb5b6ee7fa623ba6caab5) - Create a helper function that can make a mutable copy of any ProtobufList (https://github.com/protocolbuffers/protobuf/commit/56696066132560c5de9ca888a097ba570cda1910) - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Remove unused package private class ProtobufLists. (https://github.com/protocolbuffers/protobuf/commit/b51c551e37b1036bf54ade9911d9a39aed879ab0) - Mark UnmodifiableLazyStringList deprecated. UnmodifiableLazyStringList is unnecessary and will be removed in a future release. (https://github.com/protocolbuffers/protobuf/commit/9595cbbf9a1dbd03edaf3def50befd99b727642c) - Make emptyList public and mark the public EMPTY field as deprecated. (https://github.com/protocolbuffers/protobuf/commit/c658e27529ccf4a000724ab3622f1b807c85449b) - Enable Text format parser to skip unknown short-formed repeated fields. (https://github.com/protocolbuffers/protobuf/commit/6dbd4131fa6b2ad29b2b1b827f21fc61b160aeeb) - Expose internal setExtension method for Kotlin (https://github.com/protocolbuffers/protobuf/commit/33d1070fc46ecb6189d57095bc483bc8637dc972) - Mark default instance as immutable first to avoid race during static initialization of default instances. ([#​10770](https://togithub.com/protocolbuffers/protobuf/issues/10770)) - Add serialVersionUID to ByteString and subclasses ([#​10718](https://togithub.com/protocolbuffers/protobuf/issues/10718)) - Fix serialization warnings in generated code when compiling with Java 18 and above ([#​10561](https://togithub.com/protocolbuffers/protobuf/issues/10561)) - Fix Timestamps fromDate for negative 'exact second' java.sql.Timestamps ([#​10321](https://togithub.com/protocolbuffers/protobuf/issues/10321)) - Fix Timestamps.fromDate to correctly handle java.sql.Timestamps before unix epoch ([#​10126](https://togithub.com/protocolbuffers/protobuf/issues/10126)) - Performance improvement for repeated use of FieldMaskUtil#merge by caching - Optimized Java proto serialization gencode for protos having many extension ranges with few fields in between. - More thoroughly annotate public generated code in Java lite protocol buffers. - Fixed Bug in proto3 java lite repeated enum fields. Failed to call copyOnWrite before modifying previously built message. Causes modification to already "built" messages that should be immutable. - Fix Java reflection serialization of empty packed fields. - Refactoring java full runtime to reuse sub-message builders and prepare to migrate parsing logic from parse constructor to builder. - Move proto wireformat parsing functionality from the private "parsing constructor" to the Builder class. - Change the Lite runtime to prefer merging from the wireformat into mutable messages rather than building up a new immutable object before merging. This way results in fewer allocations and copy operations. - Make message-type extensions merge from wire-format instead of building up instances and merging afterwards. This has much better performance. - Fix TextFormat parser to build up recurring (but supposedly not repeated) sub-messages directly from text rather than building a new sub-message and merging the fully formed message into the existing field. - Fix bug in nested builder caching logic where cleared sub-field builders would remain dirty after a clear and build in a parent layer. [https://github.com/protocolbuffers/protobuf/issues/10624](https://togithub.com/protocolbuffers/protobuf/issues/10624) - Add exemplar variants of the Java Any.is() and Any.unpack() methods. (https://github.com/protocolbuffers/protobuf/commit/60b71498d70a5645324385269c518b95c8c2feb0) - Use bit-field int values in buildPartial to skip work on unset groups of fields. (https://github.com/protocolbuffers/protobuf/commit/2326aef1a454a4eea363cc6ed8b8def8b88365f5) - Maven artifact suffix format has changed to -RCN instead of -rc-N ##### Kotlin - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Expose internal setExtension method for Kotlin (https://github.com/protocolbuffers/protobuf/commit/33d1070fc46ecb6189d57095bc483bc8637dc972) - Add missing `public` modifier to Kotlin generated code ([#​10616](https://togithub.com/protocolbuffers/protobuf/issues/10616)) - Add "public" modifier to Kotlin generated code ([#​10599](https://togithub.com/protocolbuffers/protobuf/issues/10599)) - Update rules_kotlin version ([#​10212](https://togithub.com/protocolbuffers/protobuf/issues/10212)) - Suppress deprecation warnings in Kotlin generated code. - Kotlin generated code comments now use kdoc format instead of javadoc. - Escape keywords in package names in proto generated code - Add Kotlin enum int value getters and setters ### Csharp - Make the MergeFrom method of type ReadOnlySequence public ([#​11124](https://togithub.com/protocolbuffers/protobuf/issues/11124)) (https://github.com/protocolbuffers/protobuf/commit/c4bac67464cfb52f998a2f942a85adedfad04895) - Fix a bug in which a possibly invalidated swisstable reference is used. (https://github.com/protocolbuffers/protobuf/commit/5c5dcdd11728d62a69e53f7a80ec2db8e16c4230) - Fix .NET Native AOT warnings in Protobuf reflection ([#​11128](https://togithub.com/protocolbuffers/protobuf/issues/11128)) (https://github.com/protocolbuffers/protobuf/commit/c019a797492791093bccfb8404c90bf83761b3a4) - Use forward slash instead of backslash in nuspec file ([#​11449](https://togithub.com/protocolbuffers/protobuf/issues/11449)) (https://github.com/protocolbuffers/protobuf/commit/724250d6e34c2734c876cdfa7208716757a6d50d) - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Expose internal setExtension method for Kotlin (https://github.com/protocolbuffers/protobuf/commit/33d1070fc46ecb6189d57095bc483bc8637dc972) - Apply Obsolete attribute to deprecated enums and enum values in C# generated code ([#​10520](https://togithub.com/protocolbuffers/protobuf/issues/10520)) - Fix 32-bit floating point JSON parsing of maximal values for C# ([#​10514](https://togithub.com/protocolbuffers/protobuf/issues/10514)) - Retain existing array in RepeatedField.Clear ([#​10508](https://togithub.com/protocolbuffers/protobuf/issues/10508)) - Implement IComparable for the Duration type (C#) ([#​10441](https://togithub.com/protocolbuffers/protobuf/issues/10441)) - Implement correct map merging behavior for C# ([#​10339](https://togithub.com/protocolbuffers/protobuf/issues/10339)) - Support indented JSON formatting in C# ([#​9391](https://togithub.com/protocolbuffers/protobuf/issues/9391)) - Disambiguate generated properties in C# ([#​10269](https://togithub.com/protocolbuffers/protobuf/issues/10269)) - Bugfix/issue 8101 ([#​10268](https://togithub.com/protocolbuffers/protobuf/issues/10268)) - Expose plugin protos for C# ([#​10244](https://togithub.com/protocolbuffers/protobuf/issues/10244)) - Update to C# 10 and upgrade code style ([#​10105](https://togithub.com/protocolbuffers/protobuf/issues/10105)) - Fix failing FieldMask.Merge for well-known wrapper field types ([#​9602](https://togithub.com/protocolbuffers/protobuf/issues/9602)) - Helper method on Any to allow an any to be unpacked more easily ([#​9695](https://togithub.com/protocolbuffers/protobuf/issues/9695)) ### Objective-C - \[ObjC] Mark classes that shouldn't be subclassed as such. (https://github.com/protocolbuffers/protobuf/commit/a185a6ea8a5cc1d85f8a91405a0fafd007207ca4) - \[ObjC] Boolean generation options support no value as "true". (https://github.com/protocolbuffers/protobuf/commit/7935932356b405c4f8962e1e5ac19db1afd753aa) - \[ObjC] Put out of range closed enum extension values in unknown fields. (https://github.com/protocolbuffers/protobuf/commit/903639c3287df7235537547d947cbbaf8da01feb) - \[ObjC] Raise the min OS versions (and required Xcode) ([#​10652](https://togithub.com/protocolbuffers/protobuf/issues/10652)) - \[ObjC] Provide a protocol for GPBExtensionRegistry's lookup support. ([#​10597](https://togithub.com/protocolbuffers/protobuf/issues/10597)) - Mark the `syntax` on `GPBFileDescriptor` as deprecated. (https://github.com/protocolbuffers/protobuf/commit/c79832bddc3931d798d31d417238e4377f869c79) - Add the concept of a "closed enum" and expose it from the `GPBEnumDescriptor`. (https://github.com/protocolbuffers/protobuf/commit/7bb699be43e230315cf23808eff28bd694df7c17) ### Python - Document known quirks of EnumDescriptor::is_closed() when importing across files with different syntaxes. (https://github.com/protocolbuffers/protobuf/commit/a594141cc408b972c9ffe2bcf14958174d0a4fe4) - Soft deprecate python MessageFactory (https://github.com/protocolbuffers/protobuf/commit/c80e7efac72510a2bc3e9365520055f6d6656c1d) - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Raise errors when serialize inf and nan for Value.number_value in json format. fixes [#​11259](https://togithub.com/protocolbuffers/protobuf/issues/11259) (https://github.com/protocolbuffers/protobuf/commit/883ec1c3ef8be0bae01cf9ad74e1adde977afeec) - Resolve [#​10949](https://togithub.com/protocolbuffers/protobuf/issues/10949): use raise from in json_format.py ([#​10966](https://togithub.com/protocolbuffers/protobuf/issues/10966)) (https://github.com/protocolbuffers/protobuf/commit/1e6f8761cd11796f8437f198499ef73aa7e8dc96) - Allow reserved enums to be negative (https://github.com/protocolbuffers/protobuf/commit/1f58f1d7b83ec333ab6076bf2e76797dd8de3e45) - Make generated python files compatible with Cython ([#​11011](https://togithub.com/protocolbuffers/protobuf/issues/11011)) (https://github.com/protocolbuffers/protobuf/commit/9aa5272420f5c666f2dbaba0892b174004c56257) - Raise KeyError in Python ServiceDescriptor.FindMethodByName ([#​9592](https://togithub.com/protocolbuffers/protobuf/issues/9592)) ([#​9998](https://togithub.com/protocolbuffers/protobuf/issues/9998)) - Changes ordering of printed fields in .pyi files from lexicographic to the same ordering found in the proto descriptor. - Adds GeneratedCodeInfo annotations to python proto .pyi outputs as a base64 encoded docstring in the last line of the .pyi file for code analysis tools. - Fix message factory's behavior in python cpp extension to return same message classes for same descriptor, even if the factories are different. - Add type annotation for enum value fields in enum classes. - Update sphinx 2.3.1 to 3.0.4 (https://github.com/protocolbuffers/protobuf/commit/c1a42b34e56f8b7ac51c56a700c489b24de1c214) - Added is_closed to EnumDescriptor in protobuf python (https://github.com/protocolbuffers/protobuf/commit/da9de8d4d4cb5d16cfee726e52d06e91846e3578) ##### Python C-Extension (Default) - Add license file to pypi wheels. (https://github.com/protocolbuffers/upb/commit/92dbe4b8bbb026282111f4d45d01feed35209803) - Append "ByDef" to names of message accessors that use reflection (https://github.com/protocolbuffers/upb/commit/b747edb830b0fab524e0063fb2e156c390405dfa) - Implement upb_Map_Next() as the new upb_Map iterator (https://github.com/protocolbuffers/upb/commit/03b1dee5cc8339fa60d45c2b3038f6141201bd19) - Move the wire type definitions into upb/wire/ where they belong (https://github.com/protocolbuffers/upb/commit/ff6439fba0ff16b54150a1eb4ef511c080f3cb13) - Replace and repair the integer hash table iterator: (https://github.com/protocolbuffers/upb/commit/70566461f97d1f03ed32ffe9f03aa126b721ed3a) - Add Parse/Serialize templates to support shared_ptr/unique_ptr. (https://github.com/protocolbuffers/upb/commit/d3ec4b63c9f5fd6858580f8d19e41eaaaccf9fd7) - Fixes [https://github.com/protocolbuffers/upb/issues/869](https://togithub.com/protocolbuffers/upb/issues/869) (https://github.com/protocolbuffers/upb/commit/41017ef8dc3d03e1ac8c24820ad8ed9aca522bef) - Silently succeed when adding the same serialized file in Python (https://github.com/protocolbuffers/upb/commit/e779b9d90aa8f8df7117c0f1870a158d54ab8d95) - Different message factories will return same message class for same descriptor in python. (https://github.com/protocolbuffers/upb/commit/470f06cccbf26f98dd2df7ddecf24a78f140fe11) - Make upb numpy type checks consistent with pure python and cpp. (https://github.com/protocolbuffers/upb/commit/79b735a7d720bd982d6dd9f0ced287d2e2c91b46) - Upb: fix NULL pointer bug in Python FFI (https://github.com/protocolbuffers/upb/commit/c2c6427f606b7feb17a1c1f85ecd747a39978b3d) - *See also UPB changes below, which may affect Python C-Extension (Default).* ### PHP - Drop support for PHP <7.4 - Fix: php 8.2 dynamic property warning in MapFieldIter ([#​11485](https://togithub.com/protocolbuffers/protobuf/issues/11485)) (https://github.com/protocolbuffers/protobuf/commit/8e636d53e9aee98bc775e44bb38f1a103624816a) - Chore: fix php lint ([#​11417](https://togithub.com/protocolbuffers/protobuf/issues/11417)) (https://github.com/protocolbuffers/protobuf/commit/ade256e153ea7bfff85987a7f1bf2e9c9632cb10) - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - \[PHP]Added missing files and fix phpext_protobuf_ptr export in pecl version ([#​10689](https://togithub.com/protocolbuffers/protobuf/issues/10689)) - \[PHP] Fix empty message serialization for Any ([#​10595](https://togithub.com/protocolbuffers/protobuf/issues/10595)) - \[PHP] allow dynamic properties in Message ([#​10594](https://togithub.com/protocolbuffers/protobuf/issues/10594)) - \[PHP] Added getContainingOneof and getRealContainingOneof to descriptor. ([#​10356](https://togithub.com/protocolbuffers/protobuf/issues/10356)) - Fix: PHP readonly legacy files for nested messages ([#​10320](https://togithub.com/protocolbuffers/protobuf/issues/10320)) - Migrating macos php builds from 7.0/7.3 to 7.4/8.0 ([#​10274](https://togithub.com/protocolbuffers/protobuf/issues/10274)) - Exposed more functions in FieldDescriptor and OneofDescriptor. ([#​10102](https://togithub.com/protocolbuffers/protobuf/issues/10102)) - Fixed PHP SEGV by not writing to shared memory for zend_class_entry. ([#​9995](https://togithub.com/protocolbuffers/protobuf/issues/9995)) - Feat: \[PHP] remove legacy generate class file ([#​9621](https://togithub.com/protocolbuffers/protobuf/issues/9621)) ##### PHP C-Extension - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Update PHP and Ruby to use the new accessors, delete the old ones (https://github.com/protocolbuffers/protobuf/commit/3f36a914427aecaa620f777c9aa5d49bd23592ee) - Update Ruby to use the newer upb_Map_Next() iterator (https://github.com/protocolbuffers/protobuf/commit/8809a113bc0a00b685b787a03d0698aa8c3e10e8) - Fix the ruby and php builds which were broken by a recent upb change (https://github.com/protocolbuffers/protobuf/commit/9cdf347d1977d328754c1e03f43f06dfa7887d51) - *See also UPB changes below, which may affect PHP C-Extension.* ### Ruby - For Ruby oneof fields, generate hazzers for members ([#​11655](https://togithub.com/protocolbuffers/protobuf/issues/11655)) (https://github.com/protocolbuffers/protobuf/commit/d1a3c6d08b3238415cb5c08609f42d88d9b227d3) - Migrate ruby release targets to genrule to work around Bazel 5 bug ([#​11619](https://togithub.com/protocolbuffers/protobuf/issues/11619)) (https://github.com/protocolbuffers/protobuf/commit/e207bcd940400fd8b99b838aae1117f1860ff495) - Add ruby release targets ([#​11468](https://togithub.com/protocolbuffers/protobuf/issues/11468)) (https://github.com/protocolbuffers/protobuf/commit/5b27b4f300c9c8fdb1f178151ef29a22a674d184) - Remove support for ruby 2.5. (https://github.com/protocolbuffers/protobuf/commit/49589719e241a83d82ce67139006d2a9be391fce) - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Update PHP and Ruby to use the new accessors, delete the old ones (https://github.com/protocolbuffers/protobuf/commit/3f36a914427aecaa620f777c9aa5d49bd23592ee) - Replace libc strdup usage with internal impl to restore musl compat. ([#​10811](https://togithub.com/protocolbuffers/protobuf/issues/10811)) - Auto capitalize enums name in Ruby ([#​10454](https://togithub.com/protocolbuffers/protobuf/issues/10454)) - Ruby: Use class inheritance to save memory ([#​10281](https://togithub.com/protocolbuffers/protobuf/issues/10281)) - Ruby: use a valid instance variable name for `descriptor` ([#​10282](https://togithub.com/protocolbuffers/protobuf/issues/10282)) ##### Ruby C-Extension - For Ruby oneof fields, generate hazzers for members ([#​11655](https://togithub.com/protocolbuffers/protobuf/issues/11655)) (https://github.com/protocolbuffers/protobuf/commit/d1a3c6d08b3238415cb5c08609f42d88d9b227d3) - Add retention and target field options in descriptor.proto (https://github.com/protocolbuffers/protobuf/commit/5a5683781003c399a00d2ed210d4a5102ca65696) - Add ruby release targets ([#​11468](https://togithub.com/protocolbuffers/protobuf/issues/11468)) (https://github.com/protocolbuffers/protobuf/commit/5b27b4f300c9c8fdb1f178151ef29a22a674d184) - Add debug_redact field option to protobuf. (https://github.com/protocolbuffers/protobuf/commit/9238c4843a1a25c588f11da5101c858f6ae6f7a8) - Update PHP and Ruby to use the new accessors, delete the old ones (https://github.com/protocolbuffers/protobuf/commit/3f36a914427aecaa620f777c9aa5d49bd23592ee) - Hide ruby native extension symbols on FreeBSD ([#​10832](https://togithub.com/protocolbuffers/protobuf/issues/10832)) (https://github.com/protocolbuffers/protobuf/commit/2a73e3bdfbad01be6b88c5cfaa84f5cfcb072126) - Update Ruby to use the newer upb_Map_Next() iterator (https://github.com/protocolbuffers/protobuf/commit/8809a113bc0a00b685b787a03d0698aa8c3e10e8) - *See also UPB changes below, which may affect Ruby C-Extension.* ### UPB (Python/PHP/Ruby C-Extension) - Update protobuf commit (https://github.com/protocolbuffers/upb/commit/1fb480bc76bc0e331564d672e60b97a388aa3f76) - Ensure that extensions respect deterministic serialization. (https://github.com/protocolbuffers/upb/commit/57a79de7cc34cc2ca4436483834aebd44e8f4f4b) - Add ExtensionRegistry version of Parse to message templates. (https://github.com/protocolbuffers/upb/commit/28de62f4636ec6c271bf238a205684b8542b8f13) - Fix Upb PromotoUnknownToMessage for OneOf fields. (https://github.com/protocolbuffers/upb/commit/10e57c038aef9154a4ddc03b627c4e5cbef9da04) - Implement UPB OneOf MiniTable apis. (https://github.com/protocolbuffers/upb/commit/067dfeacfd02a9dedfa7fcfb1b1c2e8566cc8325) - Remove reflection dependency for UPB compare utility. (https://github.com/protocolbuffers/upb/commit/84a3fd2d2d943c8ff37f09feadb1dd3f60f954ee) - Expect fail when serialize inf and nan for Value.number_value in json format. fixes [#​11259](https://togithub.com/protocolbuffers/protobuf/issues/11259) (https://github.com/protocolbuffers/upb/commit/651550cece034b8e3a6667e817ca654ab63dd694) - Add ::protos::Parse template for Ptr. (https://github.com/protocolbuffers/upb/commit/b5384af913af9f96784a4c5b8a166e23f507c0c4) - Upb_Array_Resize() now correctly clears new values (https://github.com/protocolbuffers/upb/commit/02cf7aaa1d97bc5268639e56f735d2ec30e7c4ed) - Fix unset mini table field presence bug (https://github.com/protocolbuffers/upb/commit/9ab09b47fad2d0673689236bbb2d6ee9dfee1fbd) - Allow reserved enums to be negative (https://github.com/protocolbuffers/upb/commit/1b0b06f082508f1d6856550e8ddb9b8112922984) - Fix UPB_LIKELY() for 32-bit Windows builds (https://github.com/protocolbuffers/upb/commit/9582dc2058e2f8a9d789c6184e5e32602758ed0d) - Fix C compiler failure when there are fields names prefixed with accessor prefixes such as set\_ and clear\_. (https://github.com/protocolbuffers/upb/commit/d76e286631eb89b621be) - Make upb backwards and forwards compatible with Bazel 4.x, 3.5.x and LTS (https://github.com/protocolbuffers/upb/commit/04957b106174080e839b60c07c3a4c052646102b) ### Other - Rename Maven artifacts to use “RC” instead of “rc-” as the release candidate prefix. - Remove unused headers, include missing headers, match args, etc. (https://github.com/protocolbuffers/protobuf/commit/21a6a26d6736dfc2bf8e638e5054a3dc5f7fc2a5) - Add a non-const overload of RepeatedPtrField::GetArena and deprecate the const overload. (https://github.com/protocolbuffers/protobuf/commit/4bf33da229156c60794c63bbd129cbae542d450b) - Optimize Varint Parsing for 32 and 64 bits (https://github.com/protocolbuffers/protobuf/commit/ac76ae9a6b76104da66cd550acd9d04cc817a64a) - Fix reflection based parser for map entries with closed enum values. (https://github.com/protocolbuffers/protobuf/commit/55d21239e950164f810f3e8c348ce5bf0d7537d6) - Upgrade to Abseil LTS [`2023011`](https://togithub.com/protocolbuffers/protobuf/commit/20230117) ([#​11622](https://togithub.com/protocolbuffers/protobuf/issues/11622)) (https://github.com/protocolbuffers/protobuf/commit/7930cd1f9d1ec9c6632ed29e9aede3c6ab362960) - Fixed Visual Studio 2022: protobuf\src\google\protobuf\arena.cc(457,51): error C2127: 'thread_cache\_': illegal initialization of 'constinit' entity with a non-constant expression [#​11672](https://togithub.com/protocolbuffers/protobuf/issues/11672) ([#​11674](https://togithub.com/protocolbuffers/protobuf/issues/11674)) (https://github.com/protocolbuffers/protobuf/commit/c2e99a1ee4df28261c2e3229b77b5d881b5db5db) - Clean up a few issues with ARM-optimized varint decoding. (https://github.com/protocolbuffers/protobuf/commit/bbe2e68686d8517185f7bb67596f925b27058d34) - Fix bool parser for map entries to look at the whole 64-bit varint and not just (https://github.com/protocolbuffers/protobuf/commit/43e5937bf65968f5cb4b17f2994dd65df849a7f3) - Breaking Change: `proto2::Map::value_type` changes to `std::pair`. (https://github.com/protocolbuffers/protobuf/commit/46656ed080e959af3d0cb5329c063416b5a93ef0) - Breaking Change: Mark final ZeroCopyInputStream, ZeroCopyOutputStream, and DefaultFieldComparator classes. (https://github.com/protocolbuffers/protobuf/commit/bf9c22e1008670b497defde335f042ffd5ae25a1) - Deprecate repeated field cleared elements API. (https://github.com/protocolbuffers/protobuf/commit/84d8b0037ba2a7ade615221175571c7a9c4c6f90) - Breaking change: Make RepeatedField::GetArena non-const in order to support split RepeatedFields. (https://github.com/protocolbuffers/protobuf/commit/514c9a8e2ac85ad4c29e2394f3480341f0df27dc) - Add EpsCopyInputStream::ReadCord() providing an efficient direct Cord API (https://github.com/protocolbuffers/protobuf/commit/bc4c156eb2310859d8b8002da050aab9cd78dd34) - Add static asserts to container classes. (https://github.com/protocolbuffers/protobuf/commit/5a8abe1c2027d7595becdeb948340c97e85e7aa7) - Fix proto deserialization issue when parsing a packed repeated enum field whose (https://github.com/protocolbuffers/protobuf/commit/afdf6dafc224258c450b47c5c7fcbc9365bbc302) - Use the "shldq" decoder for the specialized 64-bit Varint parsers, rather than (https://github.com/protocolbuffers/protobuf/commit/0ca97a1d7de4c8f59b4a808541ce7c555cc17f33) - Use @​utf8\_range to reference //third_party/utf8\_range ([#​11352](https://togithub.com/protocolbuffers/protobuf/issues/11352)) (https://github.com/protocolbuffers/protobuf/commit/2dcd7d8f70c9a9b5bed07b614eaf006c79a99134) - Place alignas() before lifetime specifiers ([#​11248](https://togithub.com/protocolbuffers/protobuf/issues/11248)) (https://github.com/protocolbuffers/protobuf/commit/5712e1a746abe0786a62014a24840dd44533422a) - Add UnknownFieldSet::SerializeToCord() (https://github.com/protocolbuffers/protobuf/commit/8661e45075427162a962998279959bbabd11e0c8) - Add support for repeated Cord fields. (https://github.com/protocolbuffers/protobuf/commit/b97005bda54f7f2a4e9791e0a5750bf39338ce89) - Add Cord based Parse and Serialize logic to MessageLite (https://github.com/protocolbuffers/protobuf/commit/ddde013bd899702a1e78dd9e31a3e703bbb173b7) - Add 'ReadCord` and 'WriteCord ` functions to CodedStream (https://github.com/protocolbuffers/protobuf/commit/e5e2ad866c01804a56a11da97555a023eaf07a52) - Add CordInputStream and CordOutputStream providing stream support directly from/to Cord data (https://github.com/protocolbuffers/protobuf/commit/8afd1b670a19e6af9af7a9830e365178b969bf57) - Add a `WriteCord()` method to `ZeroCopyInputStream` (https://github.com/protocolbuffers/protobuf/commit/192cd096b18619d5ccd2d3b01b086106ec428d04) - Unify string and cord cleanup nodes in TaggedNode (https://github.com/protocolbuffers/protobuf/commit/0783c82bb48fc60edc4d1d5b179b5ebdf8a36424) - Open source google/protobuf/bridge/message_set.proto (https://github.com/protocolbuffers/protobuf/commit/c04f84261327bf1a2bd02c0db3c8538fd403d7e7) - FileOutputStream: Properly pass block_size to CopyingOutputStreamAdaptor (https://github.com/protocolbuffers/protobuf/commit/1b1e399e2ec720cd93785ece148ec081255bd908) - Implement ZeroCopyInputStream::ReadCord() in terms of absl::CordBuffer (https://github.com/protocolbuffers/protobuf/commit/75d31befc6475178d6c4cd920602c9709e714519) - Changing bazel skylib version from 1.2.1 to 1.3.0 ([#​10979](https://togithub.com/protocolbuffers/protobuf/issues/10979)) (https://github.com/protocolbuffers/protobuf/commit/1489e8d224741ca4b1455b02257c3537efe9f1c9) - Update zlib to 1.2.13. ([#​10786](https://togithub.com/protocolbuffers/protobuf/issues/10786)) - Make jsoncpp a formal dependency ([#​10739](https://togithub.com/protocolbuffers/protobuf/issues/10739)) - Upgrade to MSVC 2017, since 2015 is no longer supported ([#​10437](https://togithub.com/protocolbuffers/protobuf/issues/10437)) - Update CMake configuration to add a dependency on Abseil ([#​10401](https://togithub.com/protocolbuffers/protobuf/issues/10401)) - Use release version instead of libtool version in Makefile ([#​10355](https://togithub.com/protocolbuffers/protobuf/issues/10355)) - Fix missing `google::protobuf::RepeatedPtrField` issue in GCC (https://github.com/protocolbuffers/protobuf/commit/225b936c0183e98b7c5e072d9979c01f952c2d5a) ### [`v21.12`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v21.12): Protocol Buffers v21.12 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v21.11...v21.12) ### Python - Fix broken enum ranges ([#​11171](https://togithub.com/protocolbuffers/protobuf/issues/11171)) - Stop requiring extension fields to have a sythetic oneof ([#​11091](https://togithub.com/protocolbuffers/protobuf/issues/11091)) - Python runtime 4.21.10 not works generated code can not load valid proto. ([#​11171](https://togithub.com/protocolbuffers/protobuf/issues/11171)) ### [`v21.11`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v21.11): Protocol Buffers v21.11 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v21.10...v21.11) ### Python - Add license file to pypi wheels ([#​10936](https://togithub.com/protocolbuffers/protobuf/issues/10936)) - Fix round-trip bug ([#​10158](https://togithub.com/protocolbuffers/protobuf/issues/10158)) ### [`v21.10`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v21.10): Protocol Buffers v21.10 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v21.9...v21.10) ### Java - Use bit-field int values in buildPartial to skip work on unset groups of fields. ([#​10960](https://togithub.com/protocolbuffers/protobuf/issues/10960)) - Mark nested builder as clean after clear is called ([#​10984](https://togithub.com/protocolbuffers/protobuf/issues/10984)) ### UPB - Fix UPB_LIKELY() for 32-bit Windows builds; update protobuf_deps to point to the current upb 21.x ([#​11028](https://togithub.com/protocolbuffers/protobuf/issues/11028)) ### Other - Add public modifiers to kotlin code ([#​11068](https://togithub.com/protocolbuffers/protobuf/issues/11068)) ### [`v21.9`](https://togithub.com/protocolbuffers/protobuf/releases/tag/v21.9): Protocol Buffers v21.9 [Compare Source](https://togithub.com/protocolbuffers/protobuf/compare/v21.8...v21.9) ### C++ - Update zlib to 1.2.13 ([#​10819](https://togithub.com/protocolbuffers/protobuf/issues/10819)) ### Python - Target MacOS 10.9 to fix [#​10799](https://togithub.com/protocolbuffers/protobuf/issues/10799) ([#​10807](https://togithub.com/protocolbuffers/protobuf/issues/10807)) ### Ruby - Replace libc strdup

Configuration

📅 Schedule: Branch creation - "before 4am on Monday" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.