Module ABI versioning
hearn at vinumeris.com
Fri Sep 18 22:03:17 UTC 2015
That's nearly how semver works, but not quite.
- Major versions are incompatible
- Minor versions are backwards compatible but may be extended
- Patchlevels are entirely swappable with each other
That is, code may require 18.1+ and not work on 18.0 or 19.0, but it will
work on 18.2
I think it'd be great if Java modules understood semantic versioning.
However, I would be satisfied with just understanding major versions, as
that's all that's required to avoid link conflicts, and it's A-OK by me if
that's something as simple as "module names should include the major
version as the final dotted component".
More information about the jpms-spec-observers