22.x 版本新聞公告
針對 Protocol Buffers 22.x 版本宣佈的變更。
以下公告專屬於 22.x 版本。如需依時間順序呈現的資訊,請參閱新聞。
變更 Maven 發佈候選版本構件名稱以更符合慣例
在 22.0 版本中,我們計劃重新命名 Maven 構件,以使用「RC」而非「rc-」作為發佈候選版本前綴。
新增 Abseil 相依性
為了減少 protobuf 在 Google 和 OSS 之間的差異,並簡化我們自己的專案,我們計劃正式相依於 Abseil。我們計劃日後在公開 API 中開始使用 Abseil 類型,但僅新增相依性本身就是一個破壞性變更。
不再支援 PHP <7.4
根據我們的PHP 支援政策,我們計劃不再支援已終止支援的 PHP 版本。這不被視為破壞性變更,因為這些版本在更廣泛的生態系統中已終止支援。
不再支援 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 版本中包含的一組破壞性變更。請注意,計畫可能會變更。這些是需要注意的潛在破壞性變更,但它們可能不會在此特定版本中發生,或者可能根本不會發生。