バージョン 21.x のニュース発表
Protocol Buffers バージョン 21.x で発表された変更。
以下の発表は、2022 年 5 月 25 日にリリースされたバージョン 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 以降で生成されたコードが必要です。