Closed
Description
When reviewing PRs and deciding on a release version, it would be helpful to know if branches of controller-runtime
contain any breaking changes:
- For PRs: the diff between
master
and the PR branch - For releases: the diff between the previous semver release tag and
master
For the recent bumps for Kubernetes 1.15 and 1.16, we used a tool I wrote (go-apidiff) based on Go's experimental apidiff package that checks:
- The backwards compatibility of controller-runtime itself.
- The backwards compatibility of controller-runtime's dependency changes.
In it's current state, the tool is still a proof-of-concept and probably needs improvements. I haven't had a ton of time to keep up with this, so I'm opening this up to the community to ask for help improving it, finding/fixing bugs, and to potentially incorporate it into controller-runtime's CI to give reviewers a signal of breaking public API changes.