Byron Ruth
Jul 29, 2017 · 1 min read

The general advice is to not change existing fields on protobuf messages. Add new fields and have update/tell consumers to use the new fields leaving the existing ones in place until you can confirm no consumers are relying on it the you can remove it and reserve the field number.

You can also add a deprecation flag like so, but that is for documentation and does not have any real effect in the proto libraries.

int32 old_field = 6 [deprecated=true];

    Byron Ruth

    Written by

    I work on hard problems in healthcare @childrensphila. #ApplicationsResearch. Ask me what I do.

    Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
    Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
    Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade