From fc018d52c93d8aeeb92a8aec1f91807eeb025392 Mon Sep 17 00:00:00 2001 From: Gareth Jones Date: Wed, 24 Apr 2024 07:36:23 +1200 Subject: [PATCH] refactor: clean up merge so it's not used by NuGet --- pkg/lockfile/parse-npm-lock.go | 16 ++++------------ pkg/lockfile/parse-nuget-lock.go | 4 +++- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/pkg/lockfile/parse-npm-lock.go b/pkg/lockfile/parse-npm-lock.go index 3161ab8091..d753912c0f 100644 --- a/pkg/lockfile/parse-npm-lock.go +++ b/pkg/lockfile/parse-npm-lock.go @@ -92,18 +92,10 @@ func (pdm npmPackageDetailsMap) add(key string, details PackageDetails) { pdm[key] = details } -func mergePkgDetailsMap(m1 npmPackageDetailsMap, m2 npmPackageDetailsMap) map[string]PackageDetails { - details := npmPackageDetailsMap{} - - for name, detail := range m1 { - details.add(name, detail) - } - - for name, detail := range m2 { - details.add(name, detail) +func (pdm npmPackageDetailsMap) merge(m npmPackageDetailsMap) { + for key, details := range m { + pdm.add(key, details) } - - return details } func (dep NpmLockDependency) depGroups() []string { @@ -125,7 +117,7 @@ func parseNpmLockDependencies(dependencies map[string]NpmLockDependency) map[str for name, detail := range dependencies { if detail.Dependencies != nil { - details = mergePkgDetailsMap(details, parseNpmLockDependencies(detail.Dependencies)) + details.merge(parseNpmLockDependencies(detail.Dependencies)) } version := detail.Version diff --git a/pkg/lockfile/parse-nuget-lock.go b/pkg/lockfile/parse-nuget-lock.go index 858f6f09c4..2319452852 100644 --- a/pkg/lockfile/parse-nuget-lock.go +++ b/pkg/lockfile/parse-nuget-lock.go @@ -41,7 +41,9 @@ func parseNuGetLock(lockfile NuGetLockfile) ([]PackageDetails, error) { // its dependencies, there might be different or duplicate dependencies // between frameworks for _, dependencies := range lockfile.Dependencies { - details = mergePkgDetailsMap(details, parseNuGetLockDependencies(dependencies)) + for name, detail := range parseNuGetLockDependencies(dependencies) { + details[name] = detail + } } return pkgDetailsMapToSlice(details), nil