Opened 9 months ago

Closed 9 months ago

#21570 closed enhancement (fixed)

protobuf-31.0

Reported by: Bruce Dubbs Owned by: Bruce Dubbs
Priority: normal Milestone: 12.4
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New major version.

Change History (4)

comment:1 by Xi Ruoyao, 9 months ago

It looks like we'll have to remove -D protobuf_BUILD_LIBUPB=OFF (and install a useless static library) or it FTBFS :(.

comment:2 by Bruce Dubbs, 9 months ago

Owner: changed from blfs-book to Bruce Dubbs
Status: newassigned

comment:3 by Bruce Dubbs, 9 months ago

Protocol Buffers v31.0

Announcements

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

Bazel

  • Loosen py_proto_library check to be on the import path instead of full directory (i.e. excluding external/module-name prefix).

Compiler

  • Add support for import option for protoc.
  • Add notices.h with information about our dependencies' licenses and add --notices flag to protoc to print the contents of that file.
  • Move upb minitable code generator into protoc
  • Upgrade abseil-cpp to 20250127 and use @com_google_absl -> @abseil-cpp and com_google_googletest -> @googletest canonical BCR names.

C++

  • Remove fast-path check for non-clang compilers in MessageCreator.
  • Add missing include.
  • Add weak attribute to GetClassData to speed up clang builds.
  • Add nontemporal software prefetcher to repeated ptr field dtor to improve performance.
  • Warn on unused RepeatedPtrField.
  • Add notices.h with information about our dependencies' licenses and add --notices flag to protoc to print the contents of that file.
  • Fix a bug in handling of implicit-presence string_view fields.
  • Control bounds checks via BUILD flags.
  • Upgrade abseil-cpp to 20250127 and use @com_google_absl -> @abseil-cpp and com_google_googletest -> @googletest canonical BCR names.
  • Create hardened versions of Get and Mutable for repeated_field.

Java

  • Add weak attribute to GetClassData to speed up clang builds.
  • Use ProtobufToStringOutput to control the output format of AbstractMessage.Builder.toString.
  • Implement Protobuf Java Immutable API nest_in_file_class feature for Edition 2024.
  • Introduce a Generated annotation to eventually replace javax.annotation.Generated
  • Add volatile to featuresResolved
  • Fix Java concurrency issue in feature resolution for old <=3.25.x gencode using lazy feature resolution.
  • Remove Java runtime classes from kotlin release.
  • Split maven dependencies into dev vs local
  • Improve error messaging when detecting and erroring out on integer overflow of byte count limit variables.

Kotlin

  • Remove Java runtime classes from kotlin release.

Csharp

  • Remove "experimental API" warnings from members in the .NET protobuf runtime.
  • Improve performace of repeated packed fixedSize fields

Objective-C

  • [ObjC] Deprecate GPBFieldDescriptor.isOptional.
  • [ObjC] Raise the library version and enable new generated code.

Rust

  • Cherry-pick Rust fix to 31.x
  • Add upb_Map_GetMutable API to upb
  • See also UPB changes below, which may affect Rust.

Python

  • Update GetCurrentTime to use datetime.datetime.now
  • Make Py JSON float_precision apply to both float and double fields.
  • Add '+' and '-' annotations for Timestamp and Duration in Python
  • Bug fix for FieldMask.MergeFrom() with unset fields.
  • Make python text_format able to skip unknown fields for repeated messages
  • Fix segment fault for UPB Pyhon 'in' method of empty repeated extensions
  • Fix upb to escape DefinitelyNeedsEscape (like " and ') for bytes field
  • Check with fallback descriptorDB for FindExtensionByNumber()/FindAllExtensions in UPB python pool.
  • Add clear() method to repeated fields in Python.
  • Register Scalar/MessageMapContainerTypes as virtual subclasses
  • Fix python codegen crash when C++ features are used.
  • Add more detail to the comment for GetMessageClassesForFiles
  • Add constructing unpack routine to Python Protobuf Any API.
  • Implement typing for proto Timestamp/Duration assignments.

PHP

  • Deprecate Descriptor Label. As an alternative, add helper methods for checking whether a field is required or repeated.
  • Feat(php): improve return typehint when repeatedfield

PHP C-Extension

  • Automated rollback of commit f9863df.
  • Deprecate Descriptor Label. As an alternative, add helper methods for checking whether a field is required or repeated.
  • Ruby: Allow to get a file descriptor by a file name
  • Feat(php): improve return typehint when repeatedfield
  • See also UPB changes below, which may affect PHP C-Extension.

Ruby

  • Fix silent failure of rb_test rules to run test
  • Ruby | Add support for a protobuf debug build
  • Ruby | Support installing the gem via git and some other small build tweaks
  • Deprecate Descriptor Label. As an alternative, add helper methods for checking whether a field is required
  • [Ruby]Implement #to_hash for message classes
  • Drop Ruby 3.0

comment:4 by Bruce Dubbs, 9 months ago

Resolution: fixed
Status: assignedclosed

Fixed at commits

9613af1188 Update to gnupg-2.4.8.
6180d5c456 Update to abseil-cpp-20250512.0.
9df39f58e1 Update to protobuf-31.0.
eb1b23bae0 Update to ruby-3.4.4.
fb77d64594 Update to userspace-rcu-0.15.3 (liburcu).
Note: See TracTickets for help on using tickets.