Google diseñados protobuf a ser bastante indulgente con control de versiones:
- inesperada de datos o bien se almacena como "extensiones" (lo que es de ida y vuelta segura), o en silencio cayeron, dependiendo de la implementación
- nuevos campos se añaden generalmente como "opcional", lo que significa que los datos antiguos se pueden cargar con éxito
embargo
:
- no cambiar la numeración de los campos - que rompería los datos existentes
- Normalmente no debería cambiar la forma en cualquier campo se almacena (es decir, desde un fijo, con 32 bits int a un "varint")
En términos generales, sin embargo - que se acaba de trabajar , y usted no tiene que preocuparse mucho acerca de versiones.
¿Presumiblemente, eliminar _required_ fields también generaría problemas? –
@jon sería pasar datos a un cliente que todavía lo considera necesario –
@MarcGravell me puede dar algún ejemplo de manejo de versiones de protobuf – Hunt