Documentation ¶
Overview ¶
Package semver implements comparison of semantic version strings. In this package, semantic version strings may begin with a leading "v", as in "v1.0.0", or "1.0.0".
The general form of a semantic version string accepted by this package is MAJOR[.MINOR[.PATCH[-PRERELEASE][+BUILD]]]
where square brackets indicate optional parts of the syntax; MAJOR, MINOR, and PATCH are decimal integers without extra leading zeros; PRERELEASE and BUILD are each a series of non-empty dot-separated identifiers using only alphanumeric characters and hyphens; and all-numeric PRERELEASE identifiers must not have leading zeros.
This package follows Semantic Versioning 2.0.0 (see semver.org) with one exception. It recognizes MAJOR and MAJOR.MINOR (with no prerelease or build suffixes) as shorthands for MAJOR.0.0 and MAJOR.MINOR.0.
Index ¶
- func Build(v string) string
- func Compare(v, w string) int
- func IsValid(v string) bool
- func Major(v string) string
- func MajorMinor(v string) string
- func Max(v, w string) string
- func Minor(v string) string
- func Patch(v string) string
- func Prerelease(v string) string
- func SortMax(versions []string) []string
- func SortMin(versions []string) []string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Build ¶
Build returns the build suffix of the semantic version v. For example, Build("v2.1.0+meta") == "+meta". If v is an invalid semantic version string, Build returns the empty string.
func Compare ¶
Compare returns an integer comparing two versions according to according to semantic version precedence. The result will be 0 if v == w, -1 if v < w, or +1 if v > w.
An invalid semantic version string is considered less than a valid one. All invalid semantic version strings compare equal to each other.
func Major ¶
Major returns the major version prefix of the semantic version v. For example, Major("v2.1.0") == "2". If v is an invalid semantic version string, Major returns the empty string.
func MajorMinor ¶
MajorMinor returns the major.minor version prefix of the semantic version v. For example, MajorMinor("v2.1.0") == "2.1". If v is an invalid semantic version string, MajorMinor returns the empty string.
func Minor ¶
Minor returns the minor version prefix of the semantic version v. For example, Minor("v2.1.0") == "1". If v is an invalid semantic version string, Minor returns the empty string.
func Patch ¶
Patch returns the patch version prefix of the semantic version v. For example, Patch("v3.2.1") == "1". If v is an invalid semantic version string, Patch returns the empty string.
func Prerelease ¶
Prerelease returns the prerelease suffix of the semantic version v. For example, Prerelease("v2.1.0-pre+meta") == "-pre". If v is an invalid semantic version string, Prerelease returns the empty string.
Types ¶
This section is empty.