[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
04/13: Have delete-duplicates/sort! take a equality procedure
From: |
Christopher Baines |
Subject: |
04/13: Have delete-duplicates/sort! take a equality procedure |
Date: |
Fri, 19 Jan 2024 04:57:46 -0500 (EST) |
cbaines pushed a commit to branch master
in repository data-service.
commit 15b6dad5a56a48f81d2a0bb45de9224c5e8ed805
Author: Christopher Baines <mail@cbaines.net>
AuthorDate: Thu Jan 18 14:38:33 2024 +0000
Have delete-duplicates/sort! take a equality procedure
And change the default, as eq? doesn't always work.
---
guix-data-service/model/derivation.scm | 3 ++-
guix-data-service/utils.scm | 4 ++--
guix-data-service/web/compare/html.scm | 2 +-
3 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/guix-data-service/model/derivation.scm
b/guix-data-service/model/derivation.scm
index d95e285..c516e58 100644
--- a/guix-data-service/model/derivation.scm
+++ b/guix-data-service/model/derivation.scm
@@ -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
diff --git a/guix-data-service/utils.scm b/guix-data-service/utils.scm
index 7357a40..c91b10b 100644
--- a/guix-data-service/utils.scm
+++ b/guix-data-service/utils.scm
@@ -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)
diff --git a/guix-data-service/web/compare/html.scm
b/guix-data-service/web/compare/html.scm
index 6979e42..5b624d1 100644
--- a/guix-data-service/web/compare/html.scm
+++ b/guix-data-service/web/compare/html.scm
@@ -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
- branch master updated (241d7e4 -> e0a6c84), Christopher Baines, 2024/01/19
- 04/13: Have delete-duplicates/sort! take a equality procedure,
Christopher Baines <=
- 07/13: Fix par-map&, Christopher Baines, 2024/01/19
- 09/13: Split and instrument parts of inferior-packages->package-metadata-ids, Christopher Baines, 2024/01/19
- 08/13: Rewrite part of insert-missing-data-and-return-all-ids to avoid filter, Christopher Baines, 2024/01/19
- 11/13: Fixup tests, Christopher Baines, 2024/01/19
- 13/13: Try to fix issues with derivations being GC'ed, Christopher Baines, 2024/01/19
- 10/13: Add meaningful parallelism to processing jobs, Christopher Baines, 2024/01/19
- 03/13: Add back inferior heap size reporting, Christopher Baines, 2024/01/19
- 05/13: Make it possible to destroy a resource pool, Christopher Baines, 2024/01/19
- 02/13: Use delete-duplicates/sort! in inferior-packages->license-set-ids, Christopher Baines, 2024/01/19
- 01/13: Use delete-duplicates/sort! in insert-missing-data-and-return-all-ids, Christopher Baines, 2024/01/19