Protocol Buffers 29.0 发布

来源: OSCHINA
2024-11-29 14:41:57
AI总结

Protocol Buffers 29.0 已经发布。Protocol Buffers(protobuf)是 Google 开源的语言无关、平台无关的可扩展机制,用于序列化结构化数据。

具体更新内容包括:

Bazel

  • 在 Args 之后将缺失的行添加到 docstring 中(#19213)(6f310d5
  • 修复 proto_info_bzl ( #18918 ) ( 083de5f )
  • 在 protobuf 中随处使用 rules_cc ( ddadd0b )
  • 将 rules_cc 升级到 0.0.13 ( 3dd4835 )
  • 将 proto toolchain string 转换为 Label(aa181e2
  • 为测试准备支持目标(a748b10
  • 支持 --incompatible_enable_proto_toolchain_resolution ( 372ddb3 )
  • 从 Bazel 移除 ProtoInfo 和 ProtoLangToolchainInfo ( 426ca8a )
  • 从 Bazel 库中移除 java_{lite_}proto_library  (d77bdac)
  • 将 proto_toolchain 从 rules_proto 移至 protobuf ( 9f9cb7a )
  • 从 Bazel 库移除 proto_library ( 3ff2cf0 )
  • 从 Bazel binary 移出 proto_common 实现 (b19fbe6)

Compiler

  • 开始向 SourceCodeInfo 和 FileDescriptorSet 添加扩展名编号,以便于工具使用。(07e489d
  • 更新 protoc 版本以包含 Go 的 proto 版本语言功能(#19013)(63d966b
  • 为单个 feature values 引入生命周期。(0b6e768
  • Windows - 修复 utf8 命令行参数的处理 ( #17854 ) ( b9d1800 )
  • 限制功能弃用警告以减少 noise。(5cd9a46

C++

  • 修复 C++ ifndef_guard printer 以将“-”转换为“_”。(7331b77
  • 修复 C++ codegen namespace printer 以相反的顺序 print 关闭的命名空间。(3bf9c40
  • 修复 exotic architectures 上的 raw_ptr.cc ( #18193 ) ( 63f6262 )
  • 修复 DynamicMessage 和 oneofs 中的 cord 处理。(9e8b30c
  • 修复 2023 版中打包反射处理错误。(4c92328
  • 添加 JsonStreamToMessage 方法 ( 0259cc3 )
  • 在 ExtensionSet::ForEach 中添加后续扩展的预取。(9b019ee
  • 删除 AnyMetadata 类并改用 free functions。(920d5c3
  • 生成枚举和类时添加[[deprecated]]属性。( 23aada2
  • ……

Java

  • 删除 Timestamp 和 Duration add/subtract/between 的弃用警告,目前还没有替代方案(f606c13
  • [29.x] 添加缺失的 java load ( #19016 ) ( bb287be )
  • 为 Kotlin jar 提供 OSGi 清单 ( #18812 ) ( 0c51eba )
  • 为重要的云客户重新导出处于弃用状态的 includingDefaultValueFields(7321b2f
  • 通过重新添加 mutableCopy 帮助程序恢复与 3.22 gencode 的兼容性  ( 1b1e90b )
  • 通过提取很少执行的字符串格式化代码来加速 CodedOutputStream (f8f5136
  • 返回 true、false 和 "" 的 constant Value objects ( 4fbb0c5 )
  • 优化 CodedOutputStream.ArrayEncoder.writeFixed32NoTag/writeFixed64NoTag ( a51f98c )
  • CodedOutputStream:避免更新位置超出数组末尾。(76ab5f2
  • 在 UnsafeDirectNioEncoder 中将 IndexOutOfBoundsException 转换为 OutOfSpaceException ( 0e75d92 )
  • 抑制 ReturnValueIgnored 容易出错的问题 ( bbbc7b9 )
  • ……

更新说明:https://github.com/protocolbuffers/protobuf/releases/tag/v29.0

展开阅读全文
点击引领话题📣 发布并加入讨论🔥
0 评论
2 收藏
分享
AI总结
返回顶部
顶部