Go implementation of the package url spec.
go get -u github.com/package-url/packageurl-go
The versions will follow the spec. So if the spec is released at 1.0
. Then all versions in the 1.x.y
will follow the 1.x
spec.
package main
import (
"fmt"
"github.com/package-url/packageurl-go"
)
func main() {
instance := packageurl.NewPackageURL("test", "ok", "name", "version", nil, "")
fmt.Printf("%s", instance.ToString())
}
package main
import (
"fmt"
"github.com/package-url/packageurl-go"
)
func main() {
instance, err := packageurl.FromString("test:ok/name@version")
if err != nil {
panic(err)
}
fmt.Printf("%#v", instance)
}
Testing using the normal go test
command. Using make test
will pull the test fixtures shared between all package-url projects and then execute the tests.
$ make test
go test -v -cover ./...
=== RUN TestFromStringExamples
--- PASS: TestFromStringExamples (0.00s)
=== RUN TestToStringExamples
--- PASS: TestToStringExamples (0.00s)
PASS
coverage: 94.7% of statements
ok github.com/package-url/packageurl-go 0.002s