たとえば、2 つのバージョンの proto ファイルがあるとします。
バージョン 1.0 - 初期バージョン
バージョン 2.0 - 必須フィールドを含む新しいメッセージを追加
互換性の観点から、これは proto ファイルの有効な変更ですか?
IMHOv2.0
は必須フィールドを含む新しいメッセージを定義しているため、メッセージが からv2.0
に送信された場合、それを理解できず、デコード方法がわからないためv1.0
、後方互換性が失われるはずです。v1.0
そして、それはマークされているのでrequired
、v1.0
無視することさえできません.