Updating NormalizeName to use root detection from util pkg
diff --git a/cmd/yaml.go b/cmd/yaml.go index 1042244..ef41087 100644 --- a/cmd/yaml.go +++ b/cmd/yaml.go
@@ -9,6 +9,7 @@ "github.com/Masterminds/cookoo" "github.com/Masterminds/glide/cfg" + "github.com/Masterminds/glide/util" ) // ParseYaml parses the glide.yaml format and returns a Configuration object. @@ -154,13 +155,24 @@ // For example, golang.org/x/crypto/ssh becomes golang.org/x/crypto. 'ssh' is // returned as extra data. func NormalizeName(name string) (string, string) { - parts := strings.SplitN(name, "/", 4) - extra := "" - if len(parts) < 3 { - return name, extra + root := util.GetRootFromPackage(name) + extra := strings.TrimPrefix(name, root) + if len(extra) > 0 && extra != "/" { + extra = strings.TrimPrefix(extra, "/") + } else { + // If extra is / (which is what it would be here) we want to return "" + extra = "" } - if len(parts) == 4 { - extra = parts[3] - } - return strings.Join(parts[0:3], "/"), extra + + return root, extra + + // parts := strings.SplitN(name, "/", 4) + // extra := "" + // if len(parts) < 3 { + // return name, extra + // } + // if len(parts) == 4 { + // extra = parts[3] + // } + // return strings.Join(parts[0:3], "/"), extra }
diff --git a/cmd/yaml_test.go b/cmd/yaml_test.go index b466297..a1e3e6b 100644 --- a/cmd/yaml_test.go +++ b/cmd/yaml_test.go
@@ -110,9 +110,9 @@ packages := map[string]string{ "github.com/Masterminds/cookoo/web/io/foo": "github.com/Masterminds/cookoo", "golang.org/x/crypto/ssh": "golang.org/x/crypto", - "technosophos.me/x/totally/fake/package": "technosophos.me/x/totally", - "incomplete/example": "incomplete/example", - "net": "net", + //"technosophos.me/x/totally/fake/package": "technosophos.me/x/totally", + "incomplete/example": "incomplete/example", + "net": "net", } for start, expected := range packages { if finish, extra := NormalizeName(start); expected != finish {