I have looked at API evolution document and think that most of the rules can controlled by a robot better than by human.
Maybe Cargo can include some “semver-check” action that will compare API of the library with API of the previous version of the same library and show warnings (about Minor changes unless minor version got incremented and about Major changes unless major version got incremented)?
If implemented, I think it would be nice idea of turning this on automatically (e.g. on “publish” action) even for library authors that does not thought (or care) about semver at all. The sudden warning from Cargo can make user actually understand better (or even discover for the first time) why one needs semver, as there will be concrete breakage scenario in the author’s own library.
Breaking API every time and bumping major number (to stop Cargo complaning) is better than breaking API every time and not incrementing the number.