2024年1月5日に発表された変更点
2024年1月5日に発表されたProtocol Buffersの変更点。
このトピックでは、26.x系におけるRubyとPythonの破壊的変更について説明します。
Rubyの破壊的変更
RubyのFreezeが再帰的に適用されるようになりました
26.x系以降、`freeze`が適用されると、すべてのサブメッセージ、マップ、繰り返しフィールドに再帰的に適用されます。
Python の破壊的変更
非推奨APIの削除
26.xリリースでは、以下の非推奨APIが削除されます
繰り返しフィールドの拡張でNoneのイテラブルを拒否
26.xリリース以降、繰り返しフィールドを`None`のイテラブルで拡張することは拒否されます(`TypeError`がスローされます)。例えば、`m.repeated_int32.extend(None)`は拒否されます。
メッセージクラスでのRegisterExtensionの削除
26.xリリース以降、`RegisterExtension`は削除されます。Pythonで拡張機能にアクセスするには、メッセージオブジェクトの`Extensions`プロパティを使用できます。
これは純粋なPythonとC++によるPythonの実装の両方に影響しますが、upb Pythonには影響しません。