@@ -2944,83 +2944,72 @@ def latest_for_avids_completely_imported_advisories(self, avids):
29442944 return self .get (avid__in = avids , is_latest = True , _all_impacts_unfurled_at__isnull = False )
29452945
29462946 def latest_affecting_advisories_for_purl (self , purl ):
2947- adv_ids = ImpactedPackage .objects .filter (
2948- affecting_packages__package_url = purl ,
2949- advisory__is_latest = True ,
2950- advisory___all_impacts_unfurled_at__isnull = False ,
2951- ).values_list ("advisory_id " , flat = True )
2947+ adv_ids = ImpactedPackageAffecting .objects .filter (
2948+ package__package_url = purl ,
2949+ impacted_package__advisory__is_latest = True ,
2950+ impacted_package__advisory___all_impacts_unfurled_at__isnull = False ,
2951+ ).values_list ("impacted_package__advisory_id " , flat = True )
29522952
29532953 return self .filter (id__in = Subquery (adv_ids ))
29542954
29552955 def latest_affecting_advisories_for_purls (self , purls ):
2956- adv_ids = ImpactedPackage .objects .filter (
2957- affecting_packages__package_url__in = purls ,
2958- advisory__is_latest = True ,
2959- advisory___all_impacts_unfurled_at__isnull = False ,
2956+ adv_ids = ImpactedPackageAffecting .objects .filter (
2957+ package__package_url__in = purls ,
2958+ impacted_package__advisory__is_latest = True ,
2959+ impacted_package__advisory___all_impacts_unfurled_at__isnull = False ,
29602960 ).values_list (
2961- "advisory_id " ,
2961+ "impacted_package__advisory_id " ,
29622962 flat = True ,
29632963 )
29642964 return self .filter (id__in = Subquery (adv_ids ))
29652965
29662966 def latest_affecting_advisory_purls_pairs (self , purls ):
29672967 return (
2968- ImpactedPackage .objects .filter (
2969- affecting_packages__package_url__in = purls ,
2970- advisory__is_latest = True ,
2971- advisory___all_impacts_unfurled_at__isnull = False ,
2968+ ImpactedPackageAffecting .objects .filter (
2969+ package__package_url__in = purls ,
2970+ impacted_package__advisory__is_latest = True ,
2971+ impacted_package__advisory___all_impacts_unfurled_at__isnull = False ,
29722972 )
29732973 .values_list (
2974- "affecting_packages__package_url " ,
2975- "advisory_id " ,
2974+ "package__package_url " ,
2975+ "impacted_package__advisory_id " ,
29762976 )
29772977 .distinct ()
29782978 )
29792979
2980- def latest_affecting_advisories_for_packages (self , packages ):
2981- adv_ids = ImpactedPackage .objects .filter (
2982- affecting_packages__in = packages ,
2983- advisory__is_latest = True ,
2984- advisory___all_impacts_unfurled_at__isnull = False ,
2985- ).values_list (
2986- "advisory_id" ,
2987- flat = True ,
2988- )
2989- return self .filter (id__in = Subquery (adv_ids ))
2990-
29912980 def latest_fixed_by_advisories_for_purl (self , purl ):
2992- adv_ids = ImpactedPackage .objects .filter (
2993- fixed_by_packages__package_url = purl ,
2994- advisory__is_latest = True ,
2995- advisory___all_impacts_unfurled_at__isnull = False ,
2981+ adv_ids = ImpactedPackageFixedBy .objects .filter (
2982+ package__package_url = purl ,
2983+ impacted_package__advisory__is_latest = True ,
2984+ impacted_package__advisory___all_impacts_unfurled_at__isnull = False ,
29962985 ).values_list (
2997- "advisory_id " ,
2986+ "impacted_package__advisory_id " ,
29982987 flat = True ,
29992988 )
30002989 return self .filter (id__in = Subquery (adv_ids ))
30012990
30022991 def latest_fixed_by_advisories_for_purls (self , purls ):
3003- adv_ids = ImpactedPackage .objects .filter (
3004- fixed_by_packages__package_url__in = purls ,
3005- advisory__is_latest = True ,
3006- advisory___all_impacts_unfurled_at__isnull = False ,
2992+ adv_ids = ImpactedPackageFixedBy .objects .filter (
2993+ package_url__in = purls ,
2994+ impacted_package__advisory__is_latest = True ,
2995+ impacted_package__advisory___all_impacts_unfurled_at__isnull = False ,
30072996 ).values_list (
3008- "advisory_id " ,
2997+ "impacted_package__advisory_id " ,
30092998 flat = True ,
30102999 )
30113000
30123001 return self .filter (id__in = Subquery (adv_ids ))
30133002
30143003 def latest_fixed_by_advisory_purls_pairs (self , purls ):
30153004 return (
3016- ImpactedPackage .objects .filter (
3017- fixed_by_packages__package_url__in = purls ,
3018- advisory__is_latest = True ,
3019- advisory___all_impacts_unfurled_at__isnull = False ,
3005+ ImpactedPackageFixedBy .objects .filter (
3006+ package__package_url__in = purls ,
3007+ impacted_package__advisory__is_latest = True ,
3008+ impacted_package__advisory___all_impacts_unfurled_at__isnull = False ,
30203009 )
30213010 .values_list (
3022- "fixed_by_packages__package_url " ,
3023- "advisory_id " ,
3011+ "package__package_url " ,
3012+ "impacted_package__advisory_id " ,
30243013 )
30253014 .distinct ()
30263015 )
@@ -3621,10 +3610,10 @@ def with_is_vulnerable(self):
36213610 """
36223611 return self .annotate (
36233612 is_vulnerable = Exists (
3624- ImpactedPackage .objects .filter (
3625- affecting_packages__pk = OuterRef ("pk" ),
3626- advisory__is_latest = True ,
3627- advisory___all_impacts_unfurled_at__isnull = False ,
3613+ ImpactedPackageAffecting .objects .filter (
3614+ package__pk = OuterRef ("pk" ),
3615+ impacted_package__advisory__is_latest = True ,
3616+ impacted_package__advisory___all_impacts_unfurled_at__isnull = False ,
36283617 )
36293618 )
36303619 )
0 commit comments