Proposal: Please start using Semantic Versioning
KateGo520 opened this issue · 3 comments
I found that this project already supports Go modules. But sadly, the tags doesn't follow Semantic Versioning, which means that all tags of this project will be ignored by Go modules and replaced by pseudo-versions, go get acts weirdly when tags are not in that form. It would be great to have the tagged release be named in the format vX.X.X format so that go mod can read it.
github.com/franela/goblin v0.0.0-20200722185118-cb67619f1d10
Else the mod file shows something like github.com/franela/goblin v0.0.0-20200722185118-cb67619f1d10
which is not very readable and difficult to upgrade. It’s hard to verify which version is in use. This is not conducive to version control
So, I propose this project to follow Semantic Versioning in future versions. For example, v1.0.1
, v2.0.0
, v3.1.0-alpha
, v3.1.0-beta.2
etc.
Hi, not active in this project, but to reply on your remark:
The "pseudo-version" is actually very explicit, it's on ref cb67619f1d10, something you can easily find back. I understand that Git doesn't have a linear history, but it's still possible to locate and find an enclosing diff-set.
General advise for any package upgrade:
- update
- run tests
- all green? commit your new go.mod
- red? revert and stick with the previous version
Not everybody agrees with semver for a variety of reasons. If your project demands semver for it's dependencies, then I suggest you revisit that statement.
Thx for the explanation Mark ❤️ I'll close this as there's no intention to use semver for the moment.