The different scheme on the version number of a release of a module.
The argument it's just a number with versioning goes right out the window the moment that number is in a file path. Implications multiply.
After four hours of investigation it turned out that someone had made a breaking API change in a Java library, and had forgotten to bump up the version number — so when a dependent object tried to call into that library, the dispatch failed.
The one true way to address something — content-based shas. See Version Control - Commit Hash - Content Versioning
common versioning scheme: major.minor[.revision[.build]]
Version format of X.Y.Z (Major.Minor.Patch).
See: http://calver.org/
Major.Minor[.Bugfix|-rc-number|-SNAPSHOT]
where: