Open
Description
Client-go needs backwards compatibility test, i.e, checking if a PR changes the public interfaces of client-go. The benefits are:
- Ensuring release-note is added if a PR has backwards incompatible changes.
- Making breaking changes more obvious, so developers can avoid them if possible.
- Helping determine if the major version of client-go needs to be bumped when we cut a release.
The backwards compatibility test is useful no matter if we develop client-go in the kubernetes repo or in this repo.
Special requirements:
- Need to check backwards compatibility of the underlying k8s.io repos, including k8s.io/apimachinery and k8s.io/api, because client-go user deals with their interfaces as well.
Action items:
- find existing tool that looks for breaking changes.
- alternatively write a tool using go2idl.