We don't live in a perfect world.

The version of the spec I initially implemented was 2, which is not
final and not used. I moved that to semver-2.el and changed semver.el
to version one of the spec plus common deviations. Unfortunately merging
the two might prove tricky, since there are ambiguous cases with the
non-official but widely used build-number extension.