Protocol Buffers 27.2 已经发布。Protocol Buffers(protobuf)是 Google 开源的语言无关、平台无关的可扩展机制,用于序列化结构化数据。
具体更新内容包括:
Announcements
-
Protobuf News 可能包括针对即将发生的更改的附加公告或预先公告。
Compiler
- 使用 MSVC 时避免在 protoc 中调用 absl::InitializeLog (aa7fcb3)
C++
- 修复 2023 版中的 string_type 错误 ( #17211 ) ( 4923b8d )
- 添加简单的一致性测试,根据当前运行时构建旧的 gencode。(9cfb59b)
- 将枚举的底层类型设为 8 位,而不是使用位域(316f493)
Java
- 清理 V3 stubs 中的导入和注释。(270ca66)
- 添加 GeneratedMessageV3、RepeatedFieldBuilderV3、SingleFieldBuilderV3 的 stubs,以与旧版 <4.26.x gencode 兼容。(1e360a4)
- 修复检查 27.x 中尚未公开的未知字段设置为空的问题(c7a006a)
- 如果描述符来自自定义池,则使用生成池中的 Java 功能重新序列化所有未解析的功能。(2426a02)
- 使用包含 Java 特性的扩展注册表重新解析未知特性。(e5ddc45)
- 修复 crosslink 中的 data race 问题。(3d71e22)
- 修复所有语言中的分隔继承。(c4f359e)
Csharp
- 重新生成 stale files(29f1b52)
- 修复所有语言中的分隔继承(c4f359e)
Python
- 修复所有语言中的分隔继承。(c4f359e)
PHP
PHP C-Extension
- 重新生成 stale files(29f1b52)
- 另请参阅下面的 UPB 更改,这可能会影响 PHP C-Extension。
Ruby
Ruby C-Extension
- 重新生成 stale files(29f1b52)
- 另请参阅下面的 UPB 变化,这可能会影响 Ruby C-Extension。
UPB (Python/PHP/Ruby C-Extension)
- 修复所有语言中的分隔继承。(c4f359e)
其他
- Port windows bootstrapping 修复 ( #17225 ) ( 19bd211 )
更新说明:https://github.com/protocolbuffers/protobuf/releases/tag/v27.2