semver is a specification for version numbers and what they mean. Once we hit 1.0, I think we should start semver for everything, thus actually making it 1.0.0.
The "public API" we define would only consist of items marked #[stable] in the libraries. For the language, it would be anything not requiring a feature gate. For the compiler, it'd be output filenames and arguments, excluding -Z, --link-args, --linker, undefined lints, --lvm-args, --passes, and --ar.
Nominating.