-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Schema evolution in zserio #328
Comments
zserio does not have a so-called wire format, which means that it does not add stuff to the binary stream that is not written by the designer/developer. Protobuf does that. So schema evolution is at the moment not directly supported by zserio. Basically you can only do some backward compatible stuff that includes:
I do not know if we have anything in the backlog on this, but there is a concept lingering around for some years to accomplish a similar feature like protobuf but basically decouple this from the original bytestream. Basically it is adding wireformat info into a separate blob that can then be read (or not). So basically the lightweightness of zserio is maintained but if somebody wants to add the additional data size then we can also accomplish schema evolution like protobuf or others. |
There is already a dedicated issue for compatibility data: #43. We even did some quick investigation of this issue in the past to make sure that the suggested approach is feasible. |
Hi @fklebert , |
OK, we will try to improve documentation for schema evolution. At least some notes what is currently possible and what is not possible would be better than nothing. |
Documentation will be done within scope of issue #43. |
New Zserio Schema Evolution Guide has been created. |
How does zserio support schema evolution?
In Google Protocol Buffers, the field numbers are an important component to supporting schema evolution, but I cannot find anything similar or documentation on schema evolution in the documentation.
The text was updated successfully, but these errors were encountered: