Protocol Buffers

Frameworks & Libraries

Language-neutral, platform-neutral extensible serialization.

Latest v35.1 · by GoogleWebsiteprotocolbuffers/protobuf

Release activity

Release activity — 10 releases across 10 days since Mar 18, 2026. Each cell is one day; darker means more releases that day. Nothing is recorded before Mar 18, 2026. Older weeks are hidden at this screen width.
MayJunJulAug
SundayNo releases on Apr 19, 2026No releases on Apr 26, 2026No releases on May 3, 2026No releases on May 10, 2026No releases on May 17, 2026No releases on May 24, 2026No releases on May 31, 2026No releases on Jun 7, 2026No releases on Jun 14, 2026No releases on Jun 21, 2026No releases on Jun 28, 2026No releases on Jul 5, 2026No releases on Jul 12, 2026No releases on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026
Monday1 release on Apr 20, 2026No releases on Apr 27, 2026No releases on May 4, 2026No releases on May 11, 2026No releases on May 18, 2026No releases on May 25, 2026No releases on Jun 1, 2026No releases on Jun 8, 2026No releases on Jun 15, 2026No releases on Jun 22, 2026No releases on Jun 29, 2026No releases on Jul 6, 2026No releases on Jul 13, 2026No releases on Jul 20, 2026No releases on Jul 27, 20261 release on Aug 3, 2026
TuesdayNo releases on Apr 21, 2026No releases on Apr 28, 2026No releases on May 5, 2026No releases on May 12, 20261 release on May 19, 2026No releases on May 26, 2026No releases on Jun 2, 2026No releases on Jun 9, 2026No releases on Jun 16, 2026No releases on Jun 23, 2026No releases on Jun 30, 2026No releases on Jul 7, 2026No releases on Jul 14, 2026No releases on Jul 21, 2026No releases on Jul 28, 2026No releases on Aug 4, 2026
WednesdayNo releases on Apr 22, 2026No releases on Apr 29, 2026No releases on May 6, 2026No releases on May 13, 20261 release on May 20, 2026No releases on May 27, 2026No releases on Jun 3, 2026No releases on Jun 10, 2026No releases on Jun 17, 2026No releases on Jun 24, 2026No releases on Jul 1, 2026No releases on Jul 8, 2026No releases on Jul 15, 2026No releases on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026
ThursdayNo releases on Apr 23, 2026No releases on Apr 30, 20261 release on May 7, 2026No releases on May 14, 2026No releases on May 21, 2026No releases on May 28, 2026No releases on Jun 4, 20261 release on Jun 11, 2026No releases on Jun 18, 2026No releases on Jun 25, 2026No releases on Jul 2, 20261 release on Jul 9, 2026No releases on Jul 16, 2026No releases on Jul 23, 2026No releases on Jul 30, 2026No releases on Aug 6, 2026
FridayNo releases on Apr 24, 2026No releases on May 1, 2026No releases on May 8, 2026No releases on May 15, 2026No releases on May 22, 2026No releases on May 29, 2026No releases on Jun 5, 2026No releases on Jun 12, 2026No releases on Jun 19, 2026No releases on Jun 26, 2026No releases on Jul 3, 2026No releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 2026No releases on Aug 7, 2026
SaturdayNo releases on Apr 25, 2026No releases on May 2, 2026No releases on May 9, 2026No releases on May 16, 2026No releases on May 23, 2026No releases on May 30, 2026No releases on Jun 6, 2026No releases on Jun 13, 2026No releases on Jun 20, 2026No releases on Jun 27, 2026No releases on Jul 4, 2026No releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 2026No releases on Aug 1, 2026

10 releases since Mar 18, 2026

Changelog

v36.0-rc2Pre-release

Protocol Buffers v36.0-rc2

Added 3
  • Add json_options.proto and json_enumvalue_options.proto and gencode derived from them to release artifacts
  • Implement json EnumValueName for upb
  • Add json_name enumval support in Java
Changed 2
  • Disable option sub-location mapping in open-source builds
  • Reject Edition 2026 in the PHP generator
Deprecated 3
  • Add deprecation warning for Reflection::GetEnum() and Reflection::GetRepeatedEnum()
  • Emit future warning when mutating GetOptions() in OSS
  • Emit deprecation warning when comparing descriptor containers with unrecognized types in OSS

Announcements

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

C++

Java

Python

PHP

UPB (Python/PHP/Ruby C-Extension)

View originalPermalink
How v36.0-rc2 went
v36.0-rc1Pre-release

Protocol Buffers v36.0-rc1

Added 6
  • Add bazel targets for standalone plugin binaries
  • Add --<lang>_prefix cli option
  • Add an enforce_proto_limits feature which will be implemented in Edition 2026
  • Add Bazel 9 tests for csharp, hpb, objc, php, python, rust and upb
  • Support assigning repeated scalar fields using Python Buffer API
  • Add a warning for potential OneofDescriptor collisions prior to Q1 2027 breaking changes
Changed 6
  • Make default_symbol_visibility STRICT in edition 2026
  • Enforce proto limits in the descriptor by default for EDITION_2026
  • Use the direct map reflection API when converting message to JSON if the repeated field reflection is not valid
  • Make GetOptions() return immutable options for scalar type in py/upb
  • Align C++Proto JSON behavior on the type.proto path with the descriptor.proto path
  • Make Timestamps.parse() attempt non-lenient parsing first and warning if this fails
Fixed 7
  • Disallow reserving field number INT_MAX
  • Apply path traversal guard to WriteAllToZip() matching WriteAllToDisk()
  • Validate Duration/Timestamp in TimeUtil::FromString against spec limits
  • Stop TextFormat iteration if output stream fails
  • Workaround for attribute handling bug in gcc < 13
  • Fix confusing error message for map value type name conflicts
  • Reject negative size in mergeDelimitedFrom
Deprecated 1
  • Add deprecation warnings for (py|cc|java)_generic_service

Announcements

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

Bazel

Compiler

C++

Java

Csharp

Objective-C

Rust

Python

PHP

PHP C-Extension

Ruby

UPB (Python/PHP/Ruby C-Extension)

Other

View originalPermalink
How v36.0-rc1 went
v35.1

Protocol Buffers v35.1

Added 1
  • Add cord setters to repeated string fields in C++
Changed 1
  • Break protobuf dependency on Bazel's proto fragment and only respect the Starlark versions of --proto_toolchain_for*
Fixed 1
  • Avoid undefined behavior in upb by switching to the XCT section to run constructors before compiler-generated initializers

Announcements

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

Bazel

C++

UPB (Python/PHP/Ruby C-Extension)

View originalPermalink
How v35.1 went
v34.2

Protocol Buffers v34.2

Fixed 3
  • Workaround for attribute handling bug in gcc < 13
  • Avoid theoretical overflow of uintptr_t in AddAllLinkedExtensions
  • Fixed two GCC-only issues around upb's generated extension registry
Removed 1
  • Remove unused dependency on aspect_bazel_lib

Announcements

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

Bazel

C++

upb

View originalPermalink
How v34.2 went
v35.0

Protocol Buffers v35.0

Added 7
  • Implement the Edition 2026 naming style enforcement feature to help prevent field name collisions
  • Add enum to enforce_naming_style feature to avoid field naming collisions in Edition 2026
  • Add proto2::sort and stable_sort utilities optimized for Protobuf containers
  • Add proto2::erase and erase_if utilities optimized for Protobuf containers
  • Add native Abseil flag support to protobuf message types
  • Introduce Arena::UniquePtr and Arena::Ptr smart pointers to better manage memory
  • Introduce Singular trait for types which are allowed as simple fields
Changed 7
  • Move protocopt flag out of the cc dir since it is not a c++-specific flag
  • Change @protobuf//bazel/flags:prefer_prebuilt_proto flag to True
  • Change _opt() accessors to return an std::Option instead of protobuf::Optional
  • Make Message's trait bounds much better for generic use
  • Improve the namespacing selected by rustc used for gencode types in errors
  • Fully qualify scalar types in Kotlin/Native proto generator
  • Extend Abseil flag support for enums to include std::vector<Enum>
Fixed 7
  • Mangle types named XyzView if there is any direct sibling named Xyz
  • Fail writing files in protoc CLI if any file output path is relative
  • Enhance ParseInfoTree to provide location of names and values
  • Add integer overflow check to RepeatedPtrField::MergeFrom
  • Add sanity check for ListFields reflection call
  • Fix edition 2024 visibility checking for service method input and output types
  • Fix data race in Python Free Threading by removing unnecessary SetHasBitForRepeated() call
Removed 1
  • Drop support for Bazel 7

Announcements

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

Bazel

Compiler

C++

Java

Csharp

Objective-C

Rust

Python

PHP

PHP C-Extension

Ruby

Ruby C-Extension

UPB (Python/PHP/Ruby C-Extension)

View originalPermalink
How v35.0 went
v35.0-rc2Pre-release

Protocol Buffers v35.0-rc2

Changed 1
  • Upgrade Bazel tests to support Bazel 9
Fixed 3
  • Workaround for attribute handling bug in gcc < 13
  • Fixed two GCC-only issues around upb's generated extension registry
  • Avoid theoretical overflow of uintptr_t in AddAllLinkedExtensions

Announcements

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

Bazel

C++

UPB (Python/PHP/Ruby C-Extension)

View originalPermalink
How v35.0-rc2 went
v35.0-rc1Pre-release

Protocol Buffers v35.0-rc1

Announcements

Bazel

Compiler

C++

Java

Csharp

Objective-C

Rust

Python

PHP

PHP C-Extension

Ruby

Ruby C-Extension

UPB (Python/PHP/Ruby C-Extension)

View originalPermalink
How v35.0-rc1 went
v25.9

Protocol Buffers v25.9

Announcements

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

Java

Python

Other

View originalPermalink
How v25.9 went
v34.1

Protocol Buffers v34.1

Announcements

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

Bazel

C++

Java

Python

Other

View originalPermalink
How v34.1 went
v33.6

Protocol Buffers v33.6

Announcements

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

C++

Java

PHP

View originalPermalink
How v33.6 went
View all

Discussion