バージョン21.xのニュース発表
Protocol Buffers バージョン21.xで発表された変更点。
以下の発表はバージョン21.xに特化したものです。時系列の情報については、ニュースを参照してください。
Pythonの更新
Protocol BuffersのPython言語サポートにいくつかの変更を加えました。バージョン4.21.0は、3.20.1に続く新しいメジャーバージョンです。この新バージョンはupbライブラリに基づいており、特に大きなペイロードの場合に、以前のリリースよりも格段に優れたパース性能を提供します。また、手動ビルドなしで性能向上を実現するために、Apple Silicon用のプリビルド済みバイナリモジュールも含まれています。
新しいリリースには、いくつかの破壊的な変更が含まれています。具体的には
- 暗黙的に作成されるクラスに依存していた
UnknownFields()
メソッドは、明示的に作成されるUnknownFieldSet
クラスに置き換えられました。 - 特定の文字列の形式やエラーメッセージなど、コアではない特性が変更された可能性があります。これらは破壊的な変更とは見なされませんが、既存のコードベースに影響を与える可能性があります。
- PythonとC++間でメッセージの共有に依存するアプリケーションは、新バージョンでは動作しなくなります。ほとんどの開発者は影響を受けませんが、Nucleusやその他のライブラリのユーザーは影響を受ける可能性があります。回避策として、ライブラリに互換性を維持させるために環境変数を設定できます。
- Python upbは、protoc 3.19.0以降で生成されたコードを必要とします。