Reputation: 678
In libraries or packages I often see something like 0.5.4+6 or maybe 1.12.4+2, etc. I know the first number is the major version, the next one minor version, the next one maybe build number or revision. But what does the +2 or +6 signify?
Upvotes: 0
Views: 434
Reputation: 97282
Trailing part after MAYOR.MINOR.PATCH
not defined strictly in SemVer (AFAICR), thus - everybody can add any useful information in it. Most common usage - provide (in case of using VCS) unique (but readable) id, which allow to identify exact changeset in source, used for building this artifact.
Because (mainly) tags (or equivalent) used for naming|numbering versions in VCSes and (internal) builds between tags (releases) are possible, such ids appear, which, in plain words, mean something "N commits after version X".
Sample from my labeling (don't try to grok hg-templating, I'll explain it)
semver = "{latesttag}{ifeq(latesttagdistance,0,'','+{latesttagdistance}')}"
Just human-friendly type of id, which also allow (rather) fast detection of commit in question, if it's needed. And it's a lot more readable and memorable and pronounceable than, f.e. b800644fcbe2
Upvotes: 0
Reputation: 2539
Usually it is used to provide some metadata / build metadata (eg. a build number or date).
For more detailed info, see the Semantic Versioning spec.
Upvotes: 2