What if I tell you that your specs are broken

This talk is going to be about Swagger Specs and their changes. We're going to examine what Backward Incompatible changes are and how you can deal with them.
The talk will also introduce you to a tool that will help you on having safer changes.


If you have ever written an App in 2019, the probability that you are communicating over HTTP(S) is pretty high. After some practice, implementing a new endpoint starts to be a trivial task; no major complexities and turns out to be really repetitive.

While adding an endpoint might seem an easy task, sometimes you need to slightly update an already existing endpoint. When editing, the risk of negatively affect your users is just around the corner. Previously deployed applications, due to changes in the communication interface, are at risk of misbehaving, crashing, etc.

Have you ever changed an endpoint without knowing that previous versions of your clients would be broken or have you ever got so close to it? If you're answering yes ... then you’ve probably experienced backward incompatible changes.

At Yelp, we developed an open source tool that helps us detect breaking changes in the Swagger specs before getting any closer to production.
We modify our specs pretty often (more than 2-3 times a day) and preventing such changes is critical for the health of our services and our client experiences.

In this talk, we will see how you can leverage the tool to protect your specs, API, and services from backward incompatible changes.


Domains:

Networks

Domain Expertise:

some

Python Skill Level:

none

Abstract as a tweet:

"What if I tell you that your specs are broken". Protect your specs against incompatible changes ... a practical guide