File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -337,9 +337,10 @@ def get_fixing_vulnerabilities(self, package):
337337 if results :
338338 return results
339339
340-
341340 if package .type not in TYPES_WITH_MULTIPLE_IMPORTERS :
342- advisories_qs = AdvisoryV2 .objects .latest_fixed_by_advisories_for_purl (package .package_url )
341+ advisories_qs = AdvisoryV2 .objects .latest_fixed_by_advisories_for_purl (
342+ package .package_url
343+ )
343344 advisories_ids = advisories_qs .only ("id" )
344345
345346 advisories_ids = list (advisories_ids [:101 ])
Original file line number Diff line number Diff line change @@ -3568,7 +3568,9 @@ def with_is_vulnerable(self):
35683568 return self .annotate (
35693569 is_vulnerable = Exists (
35703570 ImpactedPackage .objects .filter (
3571- affecting_packages__pk = OuterRef ("pk" ), advisory__is_latest = True
3571+ affecting_packages__pk = OuterRef ("pk" ),
3572+ advisory__is_latest = True ,
3573+ advisory___all_impacts_unfurled = True ,
35723574 )
35733575 )
35743576 )
@@ -3577,6 +3579,7 @@ def all_vulnerable(self):
35773579 latest_impacts = ImpactedPackageAffecting .objects .filter (
35783580 package_id = OuterRef ("pk" ),
35793581 impacted_package__advisory__is_latest = True ,
3582+ impacted_package__advisory___all_impacts_unfurled = True ,
35803583 )
35813584
35823585 query = PackageV2 .objects .filter (Exists (latest_impacts ))
Original file line number Diff line number Diff line change @@ -25,7 +25,9 @@ def package_prefetched_qs(checkpoint):
2525 .prefetch_related (
2626 Prefetch (
2727 "affected_in_impacts" ,
28- queryset = ImpactedPackage .objects .filter (advisory__is_latest = True )
28+ queryset = ImpactedPackage .objects .filter (
29+ advisory__is_latest = True , advisory___all_impacts_unfurled = True
30+ )
2931 .only ("advisory_id" )
3032 .prefetch_related (
3133 Prefetch (
@@ -36,7 +38,9 @@ def package_prefetched_qs(checkpoint):
3638 ),
3739 Prefetch (
3840 "fixed_in_impacts" ,
39- queryset = ImpactedPackage .objects .filter (advisory__is_latest = True )
41+ queryset = ImpactedPackage .objects .filter (
42+ advisory__is_latest = True , advisory___all_impacts_unfurled = True
43+ )
4044 .only ("advisory_id" )
4145 .prefetch_related (
4246 Prefetch (
Original file line number Diff line number Diff line change @@ -217,11 +217,13 @@ def get_queryset(self, query=None):
217217 affecting_exists = ImpactedPackageAffecting .objects .filter (
218218 package_id = OuterRef ("pk" ),
219219 impacted_package__advisory___all_impacts_unfurled = True ,
220+ impacted_package__advisory__is_latest = True ,
220221 )
221222
222223 fixed_by_exists = ImpactedPackageFixedBy .objects .filter (
223224 package_id = OuterRef ("pk" ),
224225 impacted_package__advisory___all_impacts_unfurled = True ,
226+ impacted_package__advisory__is_latest = True ,
225227 )
226228
227229 return (
You can’t perform that action at this time.
0 commit comments