From 2d13633c4bfeb9233cd88ab1f820b670aa837fd3 Mon Sep 17 00:00:00 2001 From: Joan Llopis Date: Tue, 19 Jun 2018 10:58:47 +0200 Subject: [PATCH] version: changed to package semver github.com/hashicorp/go-version to allow versions starting with 'v' as vgo requires --- cmd/sample/impl/status.go | 2 +- version/version.go | 2 +- version/version_test.go | 29 +++++++++++++++++------------ 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/cmd/sample/impl/status.go b/cmd/sample/impl/status.go index ef0b5ae..971c889 100644 --- a/cmd/sample/impl/status.go +++ b/cmd/sample/impl/status.go @@ -20,7 +20,7 @@ func (st *StatusService) GetServerTime(ctx context.Context, empty *common.EmptyM return &status.ServerTimeMessage{Value: time.Now().UTC().UnixNano()}, nil } -// GetVersion returns the current API Version. It is a direct mapping from github.com/coreos/go-semver/semver.Version +// GetVersion returns the current API Version. It is a direct mapping from go-version "github.com/hashicorp/go-version.Version func (st *StatusService) GetVersion(ctx context.Context, empty *common.EmptyMessage) (*common.Version, error) { return &common.Version{ Version: version.Version, diff --git a/version/version.go b/version/version.go index 543ee08..621ddf4 100644 --- a/version/version.go +++ b/version/version.go @@ -9,7 +9,7 @@ package version import ( "fmt" - "github.com/coreos/go-semver/semver" + semver "github.com/hashicorp/go-version" ) var ( diff --git a/version/version_test.go b/version/version_test.go index 0a7834f..22f3c68 100644 --- a/version/version_test.go +++ b/version/version_test.go @@ -3,7 +3,7 @@ package version import ( "testing" - "github.com/coreos/go-semver/semver" + semver "github.com/hashicorp/go-version" ) type testValues struct { @@ -12,7 +12,7 @@ type testValues struct { Major int64 Minor int64 Patch int64 - PreRelease semver.PreRelease + PreRelease string Metadata string GitCommit string } @@ -24,6 +24,9 @@ var ( {"0.0.1", "0.0.1", 0, 0, 1, "", "", ""}, {"0.0.1-dirty", "0.0.1-dirty", 0, 0, 1, "dirty", "", ""}, {"0.0.1-212-gbf8a411-dirty", "0.0.1-212-gbf8a411-dirty", 0, 0, 1, "212-gbf8a411-dirty", "", "f8a411"}, + {"0.0.1-212-gbf8a411", "v0.0.1-212-gbf8a411", 0, 0, 1, "212-gbf8a411", "", "f8a411"}, + {"v0.0.1", "0.0.1", 0, 0, 1, "", "", ""}, + {"v0.0.1-dirty", "v0.0.1-dirty", 0, 0, 1, "dirty", "", ""}, } ) @@ -34,29 +37,31 @@ func TestSemVer(t *testing.T) { if err != nil { t.Error("error creating semver.NewVersion", err) } - if semver.Major != test.Major { + semverSegments := semver.Segments64() + // testSegments := semver.Segments64() + if semverSegments[0] != test.Major { t.Error("For", test.value, - "Got", semver.Major, + "Got", semverSegments[0], "Expected", test.Major) } - if semver.Minor != test.Minor { + if semverSegments[1] != test.Minor { t.Error("For", test.value, - "Got", semver.Minor, + "Got", semverSegments[1], "Expected", test.Minor) } - if semver.Patch != test.Patch { + if semverSegments[2] != test.Patch { t.Error("For", test.value, - "Got", semver.Patch, + "Got", semverSegments[2], "Expected", test.Patch) } - if semver.PreRelease != test.PreRelease { + if semver.Prerelease() != test.PreRelease { t.Error("For", test.value, - "Got", semver.PreRelease, + "Got", semver.Prerelease(), "Expected", test.PreRelease) } - if semver.Metadata != test.Metadata { + if semver.Metadata() != test.Metadata { t.Error("For", test.value, - "Got", semver.Metadata, + "Got", semver.Metadata(), "Expected", test.Metadata) } }