Skip to content

Commit 5fd7399

Browse files
authored
fix: process managed dependencies before standard dependencies when parsing pom.xmls (#279)
1 parent f72af0e commit 5fd7399

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

pkg/lockfile/parse-maven-lock.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ func ParseMavenLock(pathToLockfile string) ([]PackageDetails, error) {
115115

116116
details := map[string]PackageDetails{}
117117

118-
for _, lockPackage := range parsedLockfile.Dependencies {
118+
for _, lockPackage := range parsedLockfile.ManagedDependencies {
119119
finalName := lockPackage.GroupID + ":" + lockPackage.ArtifactID
120120

121121
details[finalName] = PackageDetails{
@@ -126,8 +126,8 @@ func ParseMavenLock(pathToLockfile string) ([]PackageDetails, error) {
126126
}
127127
}
128128

129-
// managed dependencies take precedent over standard dependencies
130-
for _, lockPackage := range parsedLockfile.ManagedDependencies {
129+
// standard dependencies take precedent over managed dependencies
130+
for _, lockPackage := range parsedLockfile.Dependencies {
131131
finalName := lockPackage.GroupID + ":" + lockPackage.ArtifactID
132132

133133
details[finalName] = PackageDetails{

pkg/lockfile/parse-maven-lock_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ func TestParseMavenLock_WithDependencyManagement(t *testing.T) {
101101
expectPackages(t, packages, []lockfile.PackageDetails{
102102
{
103103
Name: "io.netty:netty-all",
104-
Version: "4.1.42.Final",
104+
Version: "4.1.9",
105105
Ecosystem: lockfile.MavenEcosystem,
106106
CompareAs: lockfile.MavenEcosystem,
107107
},

0 commit comments

Comments
 (0)