An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.

github.com/Masterminds/semver

Package semver provides the ability to work with Semantic Versions (http://semver.org) in Go. Specifically it provides the ability to: To parse a semantic version use the `NewVersion` function. For example, If there is an error the version wasn't parseable. The version object has methods to get the parts of the version, compare it to other versions, convert the version back into a string, and get the original string. For more details please see the documentation at https://godoc.org/github.com/Masterminds/semver. A set of versions can be sorted using the `sort` package from the standard library. For example, Checking a version against version constraints is one of the most featureful parts of the package. There are two elements to the comparisons. First, a comparison string is a list of comma separated and comparisons. These are then separated by || separated or comparisons. For example, `">= 1.2, < 3.0.0 || >= 4.2.3"` is looking for a comparison that's greater than or equal to 1.2 and less than 3.0.0 or is greater than or equal to 4.2.3. The basic comparisons are: There are multiple methods to handle ranges and the first is hyphens ranges. These look like: The `x`, `X`, and `*` characters can be used as a wildcard character. This works for all comparison operators. When used on the `=` operator it falls back to the pack level comparison (see tilde below). For example, Tilde Range Comparisons (Patch) The tilde (`~`) comparison operator is for patch level ranges when a minor version is specified and major level changes when the minor number is missing. For example, Caret Range Comparisons (Major) The caret (`^`) comparison operator is for major level changes. This is useful when comparisons of API versions as a major change is API breaking. For example,

Ecosystem
proxy.golang.org
Latest Release
v1.5.0
over 6 years ago
Versions
11
Dependent Packages
6,701
Dependent Repos
22,957
Links
Registry proxy.golang.org
Source Repository
Docs Documentation
JSON API View JSON
CodeMeta codemeta.json
Package Details
PURL pkg:golang/github.com/%21masterminds/semver
spec
License MIT
Namespace github.com/Masterminds
First Release over 9 years ago
Last Synced 1 day ago
Repository
Stars 1,330 on GitHub
Forks 158 on GitHub
Docker Dependents 3,483
Docker Downloads 13,723,305,380
Commits 163
Committers 29
Avg per Author 5.621
DDS 0.27
Rankings on proxy.golang.org
Overall Top 0.9%
Dependent packages Top 0.1%
Dependent repos Top 0.1%
Forks Top 2.5%
Docker downloads Top 0.1%