@@ -291,56 +291,11 @@ def build_affected_ranges(sa_advisory: drupal.Advisory) -> list[osv.Range]:
291291 'field_affected_versions must be present to determine affected ranges'
292292 )
293293
294- ranges = [
294+ return [
295295 build_affected_range (constraint .strip ())
296296 for constraint in sa_advisory ['field_affected_versions' ].split ('||' )
297297 ]
298298
299- return sorted (
300- ranges ,
301- key = lambda ran : (event_to_semver_for_sorting (ran ['events' ][0 ])),
302- )
303-
304-
305- def event_to_semver_for_sorting (event : osv .Event ) -> semver .Version :
306- version = '0.0.0'
307- if 'introduced' in event :
308- version = event ['introduced' ]
309- elif 'fixed' in event :
310- version = event ['fixed' ]
311- return semver .Version .parse (semver_for_sorting (version ))
312-
313-
314- def semver_for_sorting (semver : typing .Any ) -> str :
315- decrement_semver = False
316- if semver == '' :
317- return ''
318- # Check if the semver string starts with a '<' character.
319- if semver [0 ] == '<' :
320- decrement_semver = True
321- semver = semver [1 :]
322- semver = semver .strip ().split ('.' )
323- # sanity check the length of the introduced value.
324- while len (semver ) < 3 :
325- semver .append ('0' )
326-
327- for i in range (3 ):
328- if semver [i ].isnumeric ():
329- semver [i ] = int (semver [i ])
330- else :
331- semver [i ] = 0
332-
333- if decrement_semver :
334- if semver [2 ] > 0 :
335- semver [2 ] -= 1
336- elif semver [1 ] > 0 :
337- semver [1 ] -= 1
338-
339- semver_major = semver [0 ]
340- semver_minor = semver [1 ]
341- semver_patch = semver [2 ]
342- return f'{ semver_major } .{ semver_minor } .{ semver_patch } '
343-
344299
345300def get_credits_from_sa (credits : drupal .RichTextField ) -> list [osv .Credit ]:
346301 credit_list : list [osv .Credit ] = []
0 commit comments