I have an infrastructure package that multiple projects depend upon. This package is supposed to be a stable API shared by those projects.
I want to know if a change made in the package has broken older functionality and changed api.
In more detail, I want to automate the test on the CI that makes sure that if a user has broken an api that another app has relied on, he will have to change a major version of the package to let the users know that functionality is inherently different now.
What are the ways to test that an API has changed?