Definition of a breaking change #3793
Replies: 4 comments 2 replies
-
| I'm not aware of a standard that goes into that level of detail, but generally if something worked before and then doesn't work, that's a breaking change.  So if a tool respects those  This is a little more complex because tools are not required to recognize all  Does that answer your question? Please let me know if I misinterpreted it! | 
Beta Was this translation helpful? Give feedback.
-
| @handrews thanks. The closest I found was from the openapi diff tool. https://github.com/Tufin/oasdiff/blob/main/BREAKING-CHANGES-EXAMPLES.md This is fairly extensive. It details lots of breaking changes, non breaking change and then "info - level" changes. Format changes are considered info-level. | 
Beta Was this translation helpful? Give feedback.
-
| I am reminded of an old xkcd: every change is breaking And, related, Hyrum's law | 
Beta Was this translation helpful? Give feedback.
-
| @dublintech It's not clear to me what the OAS can or should do here. Defining the meaning of "breaking change" for all APIs would be a dramatic extension of our scope into a different sort of standard. Currently, we describe APIs, but are as neutral as possible regarding how those APIs are designed. We intentionally want to be able to describe APIs that existed before someone tried to write an OpenAPI Description for them, and those APIs often grew in an ad-hoc manner. I am inclined to declare this out-of-scope for this project, but would like @OAI/tsc to weigh in. | 
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
Most API vendors follow something akin to Postel's law, but careful what you send and liberal in what you accept and as a result don't consider adding new attributes to a payload response a "breaking change".
However, something like changing the data type they would. But, OAS also supports format. So you can have a integer type and a format of int32 and int64. Wondering if you change the type is this considered a breaking change?
Can see any standard for this?
Would welcome thoughts.
Beta Was this translation helpful? Give feedback.
All reactions