Open
Description
Currently the spec doesn’t say much about schema evolution (this short paragraph). Would it make sense to have it cover this topic more extensively?
For instance, an exhaustive enumeration of what is considered a breaking change or not.
E.g.:
- Adding a new type: not breaking
- Making a non nullable field nullable: breaking
- Adding a value to an enum: not breaking
As a client developer it is super important to know what changes can happen and what the code needs to be resilient to. At the moment this depends on a particular service’s policies, rules and customs. In certain projects there may even be no clear rules, making things fragile.
Having this as part of the spec would strengthen the contract between the client and the server, and help making schema evolution a bit less of a delicate topic?
Metadata
Metadata
Assignees
Labels
No labels