バージョン 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 以降で生成されたコードが必要です。