@@ -62,12 +62,14 @@ def generate_components(value) -> list[Component]:
6262 purl = PackageURL (** {** purl .to_dict (), "version" : pkgver })
6363 purls .append (purl )
6464
65+ # https://github.com/anchore/grype/issues/2618
66+ grype_stop_matching_by_name = Property (name = "syft:package:type" , value = "binary" )
67+
6568 for cpe in cpes :
6669 name , version = parse_cpe (cpe )[2 :4 ]
6770 assert isinstance (version , str ) and isinstance (name , str )
68- # https://github.com/anchore/grype/issues/2618
69- cpe_properties = properties + [Property (name = "syft:package:type" , value = "binary" )]
70- component = Component (name = name , version = version , cpe = cpe , properties = cpe_properties )
71+ component = Component (
72+ name = name , version = version , cpe = cpe , properties = properties + [grype_stop_matching_by_name ])
7173 components .append (component )
7274
7375 for purl in purls :
@@ -79,7 +81,8 @@ def generate_components(value) -> list[Component]:
7981 name = pkgbase .split ("-" , 2 )[- 1 ]
8082 else :
8183 name = pkgbase
82- component = Component (name = name , version = pkgver , properties = properties )
84+ component = Component (
85+ name = name , version = pkgver , properties = properties + [grype_stop_matching_by_name ])
8386 components .append (component )
8487
8588 return components
0 commit comments