This is my personal opinion:
I think the idea of Semver is great, and it's a great thing to strive to achieve but a 'breaking change' needs to be defined by the application, not by a generic technical definition. By technical definition, this could be literally any change.. for example:
If there are breaking changes introduced which are outside of what we deem a non-breaking change during for a mid-major-version release, then documentation is critical. This would only happen at a minor release, such as 7.3, not in a patch release like 7.2.2.
In my opinion, like what is mentioned in this discussion:
https://gist.github.com/jashkenas/cbd2b088e20279ae2c8e is that version numbers need to cater for *both* the developer and for where the project currently is, and in order to do that you cannot follow guidelines based around what a generic technical definition of a breaking change is.
I actually believe that the way we are handling versions is working quite well. There might be a breaking change in a minor version release but we'll try as best as we can to not have them. However, when the necessity/benefit out-weighs the minority of people affected, then it's worth doing - and there will be information about it in the release notes.