bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#62594: [address@hidden: Contributing guide building from git make ch


From: Leo Famulari
Subject: bug#62594: [address@hidden: Contributing guide building from git make check failure]
Date: Sat, 1 Apr 2023 12:14:58 -0400

----- Forwarded message from Philip Nelson <me@pnelson.ca> -----

Date: Tue, 28 Mar 2023 04:42:25 +0000
From: Philip Nelson <me@pnelson.ca>
To: guix-devel@gnu.org
Subject: Contributing guide building from git make check failure

I've been following the Contributing guide "Building from Git" section (
https://guix.gnu.org/manual/devel/en/html_node/Building-from-Git.html). I
get as far as `make check` but it fails on the following test. Others on
IRC have reported this issue. I'm unsure how to proceed. Any suggestions?

test-name: fold-available-packages with/without cache
location: /home/main/src/guix/tests/packages.scm:1739
source:
+ (test-assert
+   "fold-available-packages with/without cache"
+   (let ()
+     (define no-cache
+       (fold-available-packages
+         (lambda* (name version result #:rest rest)
+           (cons (cons* name version rest) result))
+         '()))
+     (define from-cache
+       (call-with-temporary-directory
+         (lambda (cache)
+           (generate-package-cache cache)
+           (mock ((guix describe) current-profile (const cache))
+                 (mock ((gnu packages)
+                        cache-is-authoritative?
+                        (const #t))
+                       (fold-available-packages
+                         (lambda* (name version result #:rest rest)
+                           (cons (cons* name version rest) result))
+                         '()))))))
+     (define (list->set* lst)
+       (let loop ((lst lst) (duplicates '()) (seen (set)))
+         (match lst
+                (() (values seen duplicates))
+                ((head . tail)
+                 (if (set-contains? seen head)
+                   (loop tail (cons head duplicates) seen)
+                   (loop tail duplicates (set-insert head seen)))))))
+     (let ((set1 duplicates1 (list->set* from-cache))
+           (set2 duplicates2 (list->set* no-cache)))
+       (and (null? duplicates1)
+            (null? duplicates2)
+            (every (cut set-contains? set1 <>) no-cache)
+            (every (cut set-contains? set2 <>) from-cache)))))
actual-value: #f
result: FAIL


Thanks,
Phil

----- End forwarded message -----





reply via email to

[Prev in Thread] Current Thread [Next in Thread]