@@ -284,7 +284,9 @@ def get_queryset(self):
284
284
queryset = queryset .filter (
285
285
fixing_vulnerabilities__vulnerability_id = fixing_vulnerability
286
286
)
287
- return queryset .with_is_vulnerable ().order_by ("type" , "namespace" , "name" , "-version" )
287
+ return queryset .with_is_vulnerable ().order_by (
288
+ "type" , "namespace" , "name" , "-version_rank" , "version"
289
+ )
288
290
289
291
def list (self , request , * args , ** kwargs ):
290
292
queryset = self .get_queryset ()
@@ -427,8 +429,8 @@ def bulk_search(self, request):
427
429
428
430
query = (
429
431
Package .objects .filter (plain_package_url__in = plain_purls )
430
- .order_by ("type" , "namespace" , "name" , "-version" )
431
- .distinct ("type" , "namespace" , "name" , "version" )
432
+ .order_by ("type" , "namespace" , "name" , "-version_rank" , " version" )
433
+ .distinct ("type" , "namespace" , "name" , "version_rank" , " version" )
432
434
.with_is_vulnerable ()
433
435
)
434
436
@@ -498,8 +500,8 @@ def all(self, request):
498
500
vulnerable_purls = (
499
501
Package .objects .vulnerable ()
500
502
.only ("package_url" )
501
- .order_by ("type" , "namespace" , "name" , "-version" )
502
- .distinct ("type" , "namespace" , "name" , "version" )
503
+ .order_by ("type" , "namespace" , "name" , "-version_rank" , " version" )
504
+ .distinct ("type" , "namespace" , "name" , "version_rank" , " version" )
503
505
.values_list ("package_url" , flat = True )
504
506
)
505
507
return Response (vulnerable_purls )
0 commit comments