From daa2790f59c7353b3dcd0218f975684c7101acae Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sun, 24 Mar 2019 10:55:17 +0000 Subject: Differentiate filtering better for select-derivations-and-build-status An empty list of derivation-file-names should result in no results, but in the case of the systems, targets and build-statuses, we want all of the results. --- guix-data-service/comparison.scm | 6 +++--- guix-data-service/model/derivation.scm | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'guix-data-service') diff --git a/guix-data-service/comparison.scm b/guix-data-service/comparison.scm index 733d740..fcb1dee 100644 --- a/guix-data-service/comparison.scm +++ b/guix-data-service/comparison.scm @@ -114,9 +114,9 @@ ORDER BY base_packages.name DESC, base_packages.version, target_packages.name, t (select-derivations-and-build-status conn #:file-names derivation-file-names - #:systems systems - #:targets targets - #:build-statuses build-statuses))) + #:systems (if (null? systems) #f systems) + #:targets (if (null? targets) #f targets) + #:build-statuses (if (null? build-statuses) #f build-statuses)))) derivation-data)) (define (package-data-vhash->package-name-and-version-vhash vhash) diff --git a/guix-data-service/model/derivation.scm b/guix-data-service/model/derivation.scm index 2469d0e..84801a9 100644 --- a/guix-data-service/model/derivation.scm +++ b/guix-data-service/model/derivation.scm @@ -478,7 +478,7 @@ ORDER BY derivations.system DESC, (string-join (filter-map (lambda (field values) - (if (and values (not (null? values))) + (if values (string-append field " IN (" (string-join (map (lambda (value) -- cgit v1.2.3