版本 22.x 新闻公告
Protocol Buffers 22.x 版本变更公告。
以下公告专属于 2023 年 2 月 16 日发布的 22.x 版本。如需按时间顺序查看信息,请参阅新闻。
更改 Maven 预发行 (RC) 版构件名称以使其更符合惯例
在 22.0 版本中,我们计划重命名 Maven 构件,使用“RC”代替“rc-”作为预发行 (release candidate) 版的前缀。
添加 Abseil 依赖项
为了减少 Google 版和开源版 protobuf 之间的差异并简化我们自己的项目,我们计划正式添加对 Abseil 的依赖。我们计划未来在公共 API 中开始使用 Abseil 类型,但仅仅是添加依赖项本身就是一个破坏性变更。
放弃对 PHP <7.4 的支持
根据我们的 PHP 支持政策,我们计划放弃对已终止生命周期 (EOL) 的 PHP 版本的支持。这不被视为破坏性变更,因为这些版本在更广泛的生态系统中也已经 EOL。
放弃对 Autotools 的支持
根据我们的构建系统支持政策,我们计划放弃对 Autotools 的支持。这是一个破坏性变更。放弃对 Autotools 的支持后,protobuf 将仅支持 CMake 和 Bazel。
放弃对 C++11 的支持
根据我们的C++ 支持政策,我们计划放弃对 C++11 的支持。这是一个破坏性变更。
添加对 C++20 的支持
由于 C++ 语言中增加了新的关键字,添加对 C++20 的支持对用户来说是一个破坏性变更,即使他们目前不使用 C++20。
为缓解此问题而仅在某些编译器模式下有条件地更改名称的方案,会破坏那些支持多种语言标准的项目。
C++ 变更
继我们宣布新的主版本和破坏性变更政策后,我们正计划对 C++ 进行主版本升级。我们计划从 22.x 版本系列开始,对我们发布的资产进行一些更改。
以下各节概述了我们计划在 protocol buffers 22.0 版本中包含的一系列破坏性变更。请注意,计划可能会发生变化。这些是需要注意的潜在破坏性变更,但它们可能不会在此特定版本中发生,或者根本不会发生。