Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update protobuf to v23 (major) #11386

Closed

Conversation

renovate-bot
Copy link
Contributor

@renovate-bot renovate-bot commented Apr 25, 2023

Mend Renovate

This PR contains the following updates:

Package Type Update Change
com_google_protobuf http_archive major v21.12 -> v23.0-rc1
protocolbuffers/protobuf major v21.12 -> v23.0-rc1

Release Notes

protocolbuffers/protobuf

v23.0-rc1: Protocol Buffers v23.0-rc1 (Incomplete)

Compare Source

Announcements
Compiler
C++
Java
Kotlin
Csharp
Objective-C
Python
Python C-Extension (Default)
  • Fix Python bug with required fields (protocolbuffers/upb@ea4cb79)
  • See also UPB changes below, which may affect Python C-Extension (Default).
PHP
PHP C-Extension
Ruby
Ruby C-Extension
UPB (Python/PHP/Ruby C-Extension)
Other

v22.3: Protocol Buffers v22.3

Compare Source

Announcements

  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.

UPB (Python/PHP/Ruby C-Extension)

Other

v22.2: Protocol Buffers v22.2

Compare Source

Announcements

  • This release was only published for Java and Ruby.
  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.

Java

Kotlin

v22.1: Protocol Buffers v22.1

Compare Source

Announcements

  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.

Compiler

Java

Kotlin

Other

v22.0: Protocol Buffers v22.0

Compare Source

Announcements
  • This version includes breaking changes to: Cpp.

    • [Cpp] Migrate to Abseil's logging library. (protocolbuffers/protobuf@a9f1ea6)
    • [Cpp] proto2::Map::value_type changes to std::pair<const K, V>. (protocolbuffers/protobuf@46656ed)
    • [Cpp] Mark final ZeroCopyInputStream, ZeroCopyOutputStream, and DefaultFieldComparator classes. (protocolbuffers/protobuf@bf9c22e)
    • [Cpp] Add a dependency on Abseil (#​10416)
    • [Cpp] Remove all autotools usage (#​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 for details on what C++ code changes will be necessary to be compatible with 22.0.

  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.

Compiler
  • Breaking change: Migrate to Abseil's logging library. (protocolbuffers/protobuf@a9f1ea6)
  • Add debug_redact field option to protobuf. (protocolbuffers/protobuf@9238c48)
  • Protoc: accept capital X to indicate hex escape in string literals (#​10757)
  • Gracefully handle weird placement of linebreaks around comments (#​10660)
  • Open up visibility for some compiler internals (#​10608)
  • Protoc: validate reserved names are identifiers (#​10586)
  • Protoc: validate custom json_name configuration (#​10581)
  • Protoc: fix consistency with parsing very large decimal numbers (#​10555)
  • Use protoc version for --version (#​10386)
  • Fix for grpc.tools #​17995 & protobuf #​7474 (handle UTF-8 paths in argumentfile) (#​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. (protocolbuffers/protobuf@a594141)
  • Add C++ support for retention attribute (protocolbuffers/protobuf@8f882e7)
  • Breaking change: Migrate to Abseil's logging library. (protocolbuffers/protobuf@a9f1ea6)
  • No longer define no_threadlocal on OpenBSD (#​10610)
  • CMake: Enable projects to set the C++ version (#​10464)
  • Breaking Change: Add a dependency on Abseil (#​10416)
  • Upgrade third_party/googletest submodule to current main branch (#​10393)
  • Breaking Change: Remove all autotools usage (#​10132)
  • CMake: use add_compile_options instead of add_definitions for compile options (#​10293)
  • Fix #​9947: make the ABI identical between debug and non-debug builds (#​10271)
  • Allow for CMAKE_INSTALL_LIBDIR to be absolute (#​10090)
  • Add header search paths to protobuf-c++ spec (#​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. (protocolbuffers/protobuf@2880fef)
Java
  • Document known quirks of EnumDescriptor::is_closed() when importing across files with different syntaxes. (protocolbuffers/protobuf@a594141)
  • Use LazyStringArrayList directly in gencode. (protocolbuffers/protobuf@e6dd59e)
  • Add Java support for retention attribute (protocolbuffers/protobuf@1325913)
  • Expect fail when serialize inf and nan for Value.number_value in json format. fixes #​11259 (protocolbuffers/protobuf@ca1cb1b)
  • Create a helper function that can make a mutable copy of any ProtobufList (protocolbuffers/protobuf@5669606)
  • Add debug_redact field option to protobuf. (protocolbuffers/protobuf@9238c48)
  • Remove unused package private class ProtobufLists. (protocolbuffers/protobuf@b51c551)
  • Mark UnmodifiableLazyStringList deprecated. UnmodifiableLazyStringList is unnecessary and will be removed in a future release. (protocolbuffers/protobuf@9595cbb)
  • Make emptyList public and mark the public EMPTY field as deprecated. (protocolbuffers/protobuf@c658e27)
  • Enable Text format parser to skip unknown short-formed repeated fields. (protocolbuffers/protobuf@6dbd413)
  • Expose internal setExtension method for Kotlin (protocolbuffers/protobuf@33d1070)
  • Mark default instance as immutable first to avoid race during static initialization of default instances. (#​10770)
  • Add serialVersionUID to ByteString and subclasses (#​10718)
  • Fix serialization warnings in generated code when compiling with Java 18 and above (#​10561)
  • Fix Timestamps fromDate for negative 'exact second' java.sql.Timestamps (#​10321)
  • Fix Timestamps.fromDate to correctly handle java.sql.Timestamps before unix epoch (#​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
  • Add exemplar variants of the Java Any.is() and Any.unpack() methods. (protocolbuffers/protobuf@60b7149)
  • Use bit-field int values in buildPartial to skip work on unset groups of fields. (protocolbuffers/protobuf@2326aef)
  • Maven artifact suffix format has changed to -RCN instead of -rc-N
Kotlin
  • Add debug_redact field option to protobuf. (protocolbuffers/protobuf@9238c48)
  • Expose internal setExtension method for Kotlin (protocolbuffers/protobuf@33d1070)
  • Add missing public modifier to Kotlin generated code (#​10616)
  • Add "public" modifier to Kotlin generated code (#​10599)
  • Update rules_kotlin version (#​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
Objective-C
Python
Python C-Extension (Default)
PHP
PHP C-Extension
Ruby
Ruby C-Extension
UPB (Python/PHP/Ruby C-Extension)
Other

v22.0-rc3: Protocol Buffers v22.0-rc3

Compare Source

Announcements
  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.
C++
Java
Objective-C
Ruby
Ruby C-Extension
UPB (Python/PHP/Ruby C-Extension)
Other

v22.0-rc2: Protocol Buffers v22.0-rc2

Compare Source

Announcements
  • This rc release mainly includes release process fixes since previous -rc1.
  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.
Ruby

v22.0-rc1: Protocol Buffers v22.0-rc1 (Incomplete)

Compare Source

Announcements

  • This RC was only published for Java, Protoc, and Cocoapods.
  • This version includes breaking changes to: Cpp, Ruby.
    • [Cpp] Migrate to Abseil's logging library. (protocolbuffers/protobuf@a9f1ea6)
    • [Cpp] proto2::Map::value_type changes to std::pair<const K, V>. (protocolbuffers/protobuf@46656ed)
    • [Cpp] Mark final ZeroCopyInputStream, ZeroCopyOutputStream, and DefaultFieldComparator classes. (protocolbuffers/protobuf@bf9c22e)
    • [Cpp] Add a dependency on Abseil (#​10416)
    • [Cpp] Remove all autotools usage (#​10132)
    • [Cpp] Add C++20 reserved keywords
    • [Cpp] Delete Arena::Init
    • [Cpp] Replace JSON parser with new implementation
    • [Cpp] Make RepeatedField::GetArena non-const in order to support split RepeatedFields.
    • [Ruby] Switch to releasing ruby source gems only.
  • Protobuf News may include additional announcements or pre-announcements for upcoming changes.

Compiler

  • Breaking change: Migrate to Abseil's logging library. (protocolbuffers/protobuf@a9f1ea6)
  • Add debug_redact field option to protobuf. (protocolbuffers/protobuf@9238c48)
  • Protoc: accept capital X to indicate hex escape in string literals (#​10757)
  • Gracefully handle weird placement of linebreaks around comments (#​10660)
  • Open up visibility for some compiler internals (#​10608)
  • Protoc: validate reserved names are identifiers (#​10586)
  • Protoc: validate custom json_name configuration (#​10581)
  • Protoc: fix consistency with parsing very large decimal numbers (#​10555)
  • Use protoc version for --version (#​10386)
  • Fix for grpc.tools #​17995 & protobuf #​7474 (handle UTF-8 paths in argumentfile) (#​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++

  • Breaking change: Migrate to Abseil's logging library. (protocolbuffers/protobuf@a9f1ea6)
  • No longer define no_threadlocal on OpenBSD (#​10610)
  • CMake: Enable projects to set the C++ version (#​10464)
  • Breaking Change: Add a dependency on Abseil (#​10416)
  • Upgrade third_party/googletest submodule to current main branch (#​10393)
  • Breaking Change: Remove all autotools usage (#​10132)
  • CMake: use add_compile_options instead of add_definitions for compile options (#​10293)
  • Fix #​9947: make the ABI identical between debug and non-debug builds (#​10271)
  • Allow for CMAKE_INSTALL_LIBDIR to be absolute (#​10090)
  • Add header search paths to protobuf-c++ spec (#​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.
  • 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 parsin

Configuration

📅 Schedule: Branch creation - "every weekday" (UTC), Automerge - At any time (no schedule defined).

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

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

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


  • If you want to rebase/retry this PR, check this box

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


This change is Reviewable

@renovate-bot renovate-bot requested a review from a team as a code owner April 25, 2023 23:20
@trusted-contributions-gcf trusted-contributions-gcf bot added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 25, 2023
@dpebot
Copy link
Collaborator

dpebot commented Apr 25, 2023

/gcbrun

@google-cloud-cpp-bot google-cloud-cpp-bot removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 25, 2023
@renovate-bot renovate-bot changed the title chore(deps): update protobuf (major) chore(deps): update protobuf to v23 (major) Apr 26, 2023
@trusted-contributions-gcf trusted-contributions-gcf bot added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 26, 2023
@dpebot
Copy link
Collaborator

dpebot commented Apr 26, 2023

/gcbrun

@google-cloud-cpp-bot google-cloud-cpp-bot removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 26, 2023
@coryan
Copy link
Contributor

coryan commented Apr 28, 2023

Closed in favor of #11421

@coryan coryan closed this Apr 28, 2023
@forking-renovate
Copy link

Renovate Ignore Notification

As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for any future 23.x releases. However, if you upgrade to 23.x manually then Renovate will reenable minor and patch updates automatically.

If this PR was closed by mistake or you changed your mind, you can simply rename this PR and you will soon get a fresh replacement PR opened.

@renovate-bot renovate-bot deleted the renovate/major-protobuf branch April 28, 2023 14:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants