ParseVersion and fixVer in goospec.go have the unexpected behavior of taking version strings with less than 3 components and converting them into 3-component versions by prepending leading 0s rather than appending 0s. This means that "1" becomes "0.0.1" and "1.2" becomes "0.1.2" which results in comparisons like
- "1" < "1.0" < "1.0.0"
- "2" < "1.1"
- "3" < "1.0.0"
- "1.5" < "1.2.0"
This is contrary to the behavior of semver.ParseTolerant and common interpretations of version string comparisons.
ParseVersion and fixVer in goospec.go have the unexpected behavior of taking version strings with less than 3 components and converting them into 3-component versions by prepending leading 0s rather than appending 0s. This means that "1" becomes "0.0.1" and "1.2" becomes "0.1.2" which results in comparisons like
This is contrary to the behavior of semver.ParseTolerant and common interpretations of version string comparisons.