Have delete-duplicates/sort! take a equality procedure
And change the default, as eq? doesn't always work.
This commit is contained in:
parent
45d9b1ad7c
commit
15b6dad5a5
3 changed files with 5 additions and 4 deletions
|
|
@ -1840,7 +1840,8 @@ WHERE derivation_inputs.derivation_id IN ("
|
|||
(length ids-chunk))
|
||||
(exec-query conn query)))))
|
||||
(chunk! ids 500))
|
||||
<))
|
||||
<
|
||||
=))
|
||||
|
||||
(define (derivation-ids->missing-sources ids)
|
||||
(define query
|
||||
|
|
|
|||
|
|
@ -417,7 +417,7 @@ available. Return the resource once PROC has returned."
|
|||
|
||||
#t)
|
||||
|
||||
(define (delete-duplicates/sort! unsorted-lst less)
|
||||
(define* (delete-duplicates/sort! unsorted-lst less #:optional (equal? equal?))
|
||||
(if (null? unsorted-lst)
|
||||
unsorted-lst
|
||||
(let ((sorted-lst (sort! unsorted-lst less)))
|
||||
|
|
@ -428,7 +428,7 @@ available. Return the resource once PROC has returned."
|
|||
(if (null? lst)
|
||||
result
|
||||
(let ((current-element (car lst)))
|
||||
(if (eq? current-element last-element)
|
||||
(if (equal? current-element last-element)
|
||||
(loop (cdr lst)
|
||||
last-element
|
||||
result)
|
||||
|
|
|
|||
|
|
@ -865,7 +865,7 @@ enough builds to determine a change")))
|
|||
((names . new-drvs-count)
|
||||
(let ((distinct-packages
|
||||
(length
|
||||
(delete-duplicates/sort! names string<?))))
|
||||
(delete-duplicates/sort! names string<? string=?))))
|
||||
`((p
|
||||
,(simple-format #f "Showing ~A new derivations across ~A packages"
|
||||
new-drvs-count
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue