Skip to content

Commit 2bbc355

Browse files
committed
Handle cases where dependencies do not have a specific version associated with them
1 parent 1d3fe61 commit 2bbc355

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

main.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,12 @@ func (p Purl) String() string {
111111
}
112112
}
113113

114-
return prefix + url.QueryEscape(p.Name) + "@" + url.QueryEscape(p.Version)
114+
suffix := ""
115+
if p.Version != "" {
116+
suffix = "@" + url.QueryEscape(p.Version)
117+
}
118+
119+
return prefix + url.QueryEscape(p.Name) + suffix
115120
}
116121

117122
func getLicense(p *Purl) (string, string, error) {

pkg/dependency-graph/client.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,10 @@ func makeQuery(client api.GQLClient, repoOwner, repoName string, manifestCursor,
8383
for _, eachDependencyNode := range eachManifestNode.Dependencies.Nodes {
8484
packageManager := strings.ToLower(eachDependencyNode.PackageManager)
8585
packageName := strings.ToLower(eachDependencyNode.PackageName)
86-
packageVersion := eachDependencyNode.Requirements[2:]
86+
packageVersion := ""
87+
if len(eachDependencyNode.Requirements) > 2 {
88+
packageVersion = eachDependencyNode.Requirements[2:]
89+
}
8790
if strings.HasPrefix(packageVersion, "v") {
8891
packageVersion = packageVersion[1:]
8992
}

0 commit comments

Comments
 (0)