2011-02-10 36 views
6

Zacząłem budować aplikację z protobuf 2.2.0, ponieważ była najnowsza. Teraz rozważam uaktualnienie do protokołu protobuf 2.4.0a, który jest najnowszy. Jeśli to zrobię, wiadomości generowane przez jedną wersję aplikacji będą nadal czytelne w innej wersji tego samego schematu? Czy mógłbym coś złamać?Czy komunikaty protobuf są kompatybilne z różnymi wersjami protobuf

+0

Dla proto3 patrz http://stackoverflow.com/questions/40680273/protobuf-backward-compatibility-and-proto3-vs-proto2 –

Odpowiedz

3

To powinno wystarczyć. Wersja 2.1.0 wprowadziła spakowane powtarzające się pola, ale nie sądzę, że od tego czasu nastąpiły zmiany w formacie drutu.

+0

I dla podkreślenia (dla OP) istniejące wiadomości byłyby w porządku; kompatybilny wstecz itp. –

+0

@Marc: Yup. Niebezpieczeństwo polegałoby na wypisywaniu spakowanych powtarzających się pól w nowszym kodzie i oczekiwaniu, że starszy kod to odczyta. Nie powinno to jednak stanowić problemu między 2.2 a 2.4, i tak czy inaczej musiałbyś to zrobić jawnie. –

Powiązane problemy