Skip to content

Commit 9bd1fc7

Browse files
committed
Handle multiple discoveredpackages with the same PURL
Signed-off-by: Keshav Priyadarshi <git@keshav.space>
1 parent 745140b commit 9bd1fc7

1 file changed

Lines changed: 9 additions & 10 deletions

File tree

scanpipe/pipes/d2d.py

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
from scanpipe import pipes
3030
from scanpipe.models import CodebaseRelation
3131
from scanpipe.models import CodebaseResource
32-
from scanpipe.models import DiscoveredPackage
3332
from scanpipe.pipes import flag
3433
from scanpipe.pipes import get_resource_diff_ratio
3534
from scanpipe.pipes import js
@@ -913,16 +912,16 @@ def _map_javascript_npm_lookup_resource(
913912
if not matched:
914913
return 0
915914

916-
try:
917-
package = project.discoveredpackages.get(
918-
type=purl.type,
919-
namespace="" if not purl.namespace else purl.namespace,
920-
name=purl.name,
921-
version=purl.version,
922-
)
923-
package.add_resources(matched)
915+
package = project.discoveredpackages.filter(
916+
type=purl.type,
917+
namespace="" if not purl.namespace else purl.namespace,
918+
name=purl.name,
919+
version=purl.version,
920+
).first()
924921

925-
except DiscoveredPackage.DoesNotExist:
922+
if package:
923+
package.add_resources(matched)
924+
else:
926925
if results := purldb.fetch_package(purl=str(purl)):
927926
package_data = results[0]
928927
package_data.pop("uuid", None)

0 commit comments

Comments
 (0)