Compatibility and evolution
On This Lesson 4 topics
This lesson is planned. The outline below lists the topics it will cover. The full lesson has not been published yet.
In this lesson
define compatibility rules and an evolution process for schemas.
Planned topics
- Backward compatible: new readers can read old data; forward compatible: old readers can read new data.
- Safe changes: add optional fields. Unsafe: remove or rename fields, change types or meanings.
- Breaking changes get a new event version published alongside the old one with a retirement date.
- Automate compatibility checks in the build of the owning team.
Draft outline details
Demonstration
a rule table: add optional field (allowed), add required field (breaking), rename (breaking, use add-then-deprecate), plus a six-step evolution process.
Check your understanding
Is adding an optional field breaking?
Show answer
No, if consumers ignore unknown fields.
Practice
Apply this lesson with the module's lab, exercises and quiz.
Marking a lesson complete is optional and you can undo it any time. Your progress stays in this browser.