@@ -2932,10 +2932,12 @@ def search(self, query: str = None):
29322932 def with_vulnerability_counts (self ):
29332933 return self .annotate (
29342934 vulnerability_count = Count (
2935- "affected_by_advisories" ,
2935+ "affected_in_impacts__advisory" ,
2936+ distinct = True ,
29362937 ),
29372938 patched_vulnerability_count = Count (
2938- "fixing_advisories" ,
2939+ "fixed_in_impacts__advisory" ,
2940+ distinct = True ,
29392941 ),
29402942 )
29412943
@@ -2953,7 +2955,7 @@ def get_fixed_by_package_versions(self, purl: PackageURL, fix=True):
29532955 }
29542956
29552957 if fix :
2956- filter_dict ["fixing_advisories__isnull " ] = False
2958+ filter_dict ["fixed_in_impacts__isnull " ] = False
29572959
29582960 # TODO: why do we need distinct
29592961 return PackageV2 .objects .filter (** filter_dict ).distinct ()
@@ -2986,22 +2988,24 @@ def for_purls(self, purls=()):
29862988
29872989 def _vulnerable (self , vulnerable = True ):
29882990 """
2989- Filter to select only vulnerable or non-vulnearble packages.
2991+ Filter to select only vulnerable or non-vulnerable packages.
29902992 """
29912993 return self .with_is_vulnerable ().filter (is_vulnerable = vulnerable )
29922994
29932995 def vulnerable (self ):
29942996 """
29952997 Return only packages that are vulnerable.
29962998 """
2997- return self .filter (affected_by_advisories__isnull = False )
2999+ return self .filter (affected_in_impacts__isnull = False )
29983000
29993001 def with_is_vulnerable (self ):
30003002 """
30013003 Annotate Package with ``is_vulnerable`` boolean attribute.
30023004 """
30033005 return self .annotate (
3004- is_vulnerable = Exists (AdvisoryV2 .objects .filter (affecting_packages__pk = OuterRef ("pk" )))
3006+ is_vulnerable = Exists (
3007+ ImpactedPackage .objects .filter (affecting_packages__pk = OuterRef ("pk" ))
3008+ )
30053009 )
30063010
30073011 def from_purl (self , purl : Union [PackageURL , str ]):
0 commit comments