There are version lists on projects, versions_compact and information pages, and these need to be fixed.
[ ] First of all, there should be a single piece code which creates these lists. For now, there are three pieces of code which do the same thing in slighly different ways:
packageset_aggregate_by_version
iter_aggregate_versions
packages_to_summary_items
[ ] It should handle some cases better, for instance recalled and vulnerable status. E.g. if an input list contains 1.2.3, 1.2.3 with recalled flag and 1.2.3 with vulnerable flag, it should merge these into a single 1.2.3 entry with both recalled (#205) and vulnerable flags. Likewise, all places should handle sorting wrt. sink flag and *_is_patch flags equally, and calculate spread correctly.
There are version lists on projects, versions_compact and information pages, and these need to be fixed.
packageset_aggregate_by_version
iter_aggregate_versions
packages_to_summary_items
1.2.3
,1.2.3
with recalled flag and1.2.3
with vulnerable flag, it should merge these into a single1.2.3
entry with both recalled (#205) and vulnerable flags. Likewise, all places should handle sorting wrt. sink flag and *_is_patch flags equally, and calculate spread correctly.