guix make check FAIL

DoneSubmitted by rennes.
Details
5 participants
  • Alex Kost
  • Andreas Enge
  • Ludovic Courtès
  • Mathieu Lirzin
  • rennes
Owner
unassigned
Severity
normal
R
R
rennes wrote on 27 Jan 2016 16:53
(address . bug-guix@gnu.org)
eb793fafc32147590172e99900c7504c@openmailbox.org
Hi,
i clone guix from git(in GuixSD), and when run 'make check' display FAIL message. But the command './pre-inst-env' works.
These are the commands that run:
git clone git://git.savannah.gnu.org/guix.gitguix environment guix./bootstrap./configure --with-libgcrypt-prefix=$HOME/.guix-profile/ --localstatedir=/varmakemake check

this is the error message:

PASS: tests/base32.scmPASS: tests/base64.scmPASS: tests/cpio.scmPASS: tests/hash.scmPASS: tests/pk-crypto.scmPASS: tests/pki.scmPASS: tests/sets.scmPASS: tests/gnu-maintenance.scmPASS: tests/substitute.scmPASS: tests/builders.scmPASS: tests/derivations.scmPASS: tests/ui.scmPASS: tests/records.scmPASS: tests/utils.scmPASS: tests/build-utils.scmPASS: tests/packages.scmPASS: tests/snix.scmPASS: tests/hackage.scmPASS: tests/cran.scmPASS: tests/elpa.scmFAIL: tests/store.scmPASS: tests/monads.scmPASS: tests/gexp.scmPASS: tests/nar.scmPASS: tests/union.scmPASS: tests/profiles.scmPASS: tests/syscalls.scmPASS: tests/gremlin.scmFAIL: tests/lint.scmPASS: tests/publish.scmPASS: tests/scripts.scmPASS: tests/size.scmPASS: tests/graph.scmPASS: tests/challenge.scmPASS: tests/cve.scmPASS: tests/file-systems.scmPASS: tests/system.scmPASS: tests/services.scmPASS: tests/containers.scmPASS: tests/import-utils.scmPASS: tests/pypi.scmPASS: tests/cpan.scmPASS: tests/gem.scmPASS: tests/guix-build.shFAIL: tests/guix-download.shPASS: tests/guix-hash.sh PASS: tests/guix-package.shPASS: tests/guix-package-net.shPASS: tests/guix-system.shPASS: tests/guix-archive.shPASS: tests/guix-authenticate.shPASS: tests/guix-environment.shPASS: tests/guix-environment-container.shPASS: tests/guix-graph.shPASS: tests/guix-lint.shPASS: tests/guix-register.shPASS: tests/guix-gc.shPASS: tests/guix-daemon.sh============================================================================Testsuite summary for GNU Guix 0.9.1============================================================================# TOTAL: 58# PASS: 55# SKIP: 0# XFAIL: 0# FAIL: 3# XPASS: 0# ERROR: 0============================================================================See ./test-suite.logPlease report to bug-guix@gnu.org============================================================================Makefile:3929: recipe for target 'test-suite.log' failedmake[4]: *** [test-suite.log] Error 1make[4]: Leaving directory '/home/bob/guix'Makefile:4035: recipe for target 'check-TESTS' failedmake[3]: *** [check-TESTS] Error 2make[3]: Leaving directory '/home/bob/guix'Makefile:4278: recipe for target 'check-am' failedmake[2]: *** [check-am] Error 2make[2]: Leaving directory '/home/bob/guix'Makefile:3815: recipe for target 'check-recursive' failedmake[1]: *** [check-recursive] Error 1make[1]: Leaving directory '/home/bob/guix'Makefile:4280: recipe for target 'check' failedmake: *** [check] Error 2PASS: tests/base32.scmPASS: tests/base64.scmPASS: tests/cpio.scmPASS: tests/hash.scmPASS: tests/pk-crypto.scmPASS: tests/pki.scmPASS: tests/sets.scmPASS: tests/gnu-maintenance.scmPASS: tests/substitute.scmPASS: tests/builders.scmPASS: tests/derivations.scmPASS: tests/ui.scmPASS: tests/records.scmPASS: tests/utils.scmPASS: tests/build-utils.scmPASS: tests/packages.scmPASS: tests/snix.scmPASS: tests/hackage.scmPASS: tests/cran.scmPASS: tests/elpa.scmFAIL: tests/store.scmPASS: tests/monads.scmPASS: tests/gexp.scmPASS: tests/nar.scmPASS: tests/union.scmPASS: tests/profiles.scmPASS: tests/syscalls.scmPASS: tests/gremlin.scmFAIL: tests/lint.scmPASS: tests/publish.scmPASS: tests/scripts.scmPASS: tests/size.scmPASS: tests/graph.scmPASS: tests/challenge.scmPASS: tests/cve.scmPASS: tests/file-systems.scmPASS: tests/system.scmPASS: tests/services.scmPASS: tests/containers.scmPASS: tests/import-utils.scmPASS: tests/pypi.scmPASS: tests/cpan.scmPASS: tests/gem.scmPASS: tests/guix-build.shFAIL: tests/guix-download.shPASS: tests/guix-hash.sh PASS: tests/guix-package.shPASS: tests/guix-package-net.shPASS: tests/guix-system.shPASS: tests/guix-archive.shPASS: tests/guix-authenticate.shPASS: tests/guix-environment.shPASS: tests/guix-environment-container.shPASS: tests/guix-graph.shPASS: tests/guix-lint.shPASS: tests/guix-register.shPASS: tests/guix-gc.shPASS: tests/guix-daemon.sh============================================================================Testsuite summary for GNU Guix 0.9.1============================================================================# TOTAL: 58# PASS: 55# SKIP: 0# XFAIL: 0# FAIL: 3# XPASS: 0# ERROR: 0============================================================================See ./test-suite.logPlease report to bug-guix@gnu.org============================================================================Makefile:3929: recipe for target 'test-suite.log' failedmake[4]: *** [test-suite.log] Error 1make[4]: Leaving directory '/home/bob/guix'Makefile:4035: recipe for target 'check-TESTS' failedmake[3]: *** [check-TESTS] Error 2make[3]: Leaving directory '/home/bob/guix'Makefile:4278: recipe for target 'check-am' failedmake[2]: *** [check-am] Error 2make[2]: Leaving directory '/home/bob/guix'Makefile:3815: recipe for target 'check-recursive' failedmake[1]: *** [check-recursive] Error 1make[1]: Leaving directory '/home/bob/guix'Makefile:4280: recipe for target 'check' failedmake: *** [check] Error 2

regards
M
M
Mathieu Lirzin wrote on 27 Jan 2016 17:58
(address . rennes@openmailbox.org)(address . 22475@debbugs.gnu.org)
874mdz5589.fsf@gnu.org
Hi,
rennes@openmailbox.org writes:
Toggle quote (15 lines)> i clone guix from git(in GuixSD), and when run 'make check' display> FAIL message. But the command './pre-inst-env' works.>> These are the commands that run:>> git clone git://git.savannah.gnu.org/guix.git> guix environment guix> ./bootstrap> ./configure --with-libgcrypt-prefix=$HOME/.guix-profile/> --localstatedir=/var> make> make check>>> this is the error message:
[...]
Toggle quote (3 lines)> FAIL: tests/store.scm> FAIL: tests/lint.scm> FAIL: tests/guix-download.sh
[...]
Toggle quote (15 lines)> ============================================================================> Testsuite summary for GNU Guix 0.9.1> ============================================================================> # TOTAL: 58> # PASS: 55> # SKIP: 0> # XFAIL: 0> # FAIL: 3> # XPASS: 0> # ERROR: 0> ============================================================================> See ./test-suite.log> Please report to bug-guix@gnu.org> ============================================================================
Can you provide the following files from the root of the repository?
- tests-suite.log- store.log- lint.log
Thanks,
--Mathieu Lirzin
A
A
Andreas Enge wrote on 27 Jan 2016 18:18
(name . Mathieu Lirzin)(address . mthl@gnu.org)
20160127171816.GA17445@debian.eduroam.u-bordeaux.fr
On Wed, Jan 27, 2016 at 05:58:46PM +0100, Mathieu Lirzin wrote:
Toggle quote (4 lines)> > FAIL: tests/store.scm> > FAIL: tests/lint.scm> > FAIL: tests/guix-download.sh
All three tests succeed for me, so this must be connected somehow to yourparticular environment.
Andreas
R
R
rennes wrote on 27 Jan 2016 18:27
(name . Mathieu Lirzin)(address . mthl@gnu.org)(address . 22475@debbugs.gnu.org)
224f732389ffa6f4aad0d4056082d8ba@openmailbox.org
Hi,
i attached files required.
regards


On 2016-01-27 17:58, Mathieu Lirzin wrote:
Toggle quote (49 lines)> Hi,> > rennes@openmailbox.org writes:> >> i clone guix from git(in GuixSD), and when run 'make check' display>> FAIL message. But the command './pre-inst-env' works.>> >> These are the commands that run:>> >> git clone git://git.savannah.gnu.org/guix.git>> guix environment guix>> ./bootstrap>> ./configure --with-libgcrypt-prefix=$HOME/.guix-profile/>> --localstatedir=/var>> make>> make check>> >> >> this is the error message:> [...]>> FAIL: tests/store.scm>> FAIL: tests/lint.scm>> FAIL: tests/guix-download.sh> [...]>> ============================================================================>> Testsuite summary for GNU Guix 0.9.1>> ============================================================================>> # TOTAL: 58>> # PASS: 55>> # SKIP: 0>> # XFAIL: 0>> # FAIL: 3>> # XPASS: 0>> # ERROR: 0>> ============================================================================>> See ./test-suite.log>> Please report to bug-guix@gnu.org>> ============================================================================> > Can you provide the following files from the root of the repository?> > - tests-suite.log> - store.log> - lint.log> > Thanks,> > --> Mathieu Lirzin
====================================== GNU Guix 0.9.1: ./test-suite.log======================================
# TOTAL: 58# PASS: 55# SKIP: 0# XFAIL: 0# FAIL: 3# XPASS: 0# ERROR: 0
.. contents:: :depth: 2
FAIL: tests/store=================
accepted connection from pid 3433, user bobaccepted connection from pid 3433, user bobaccepted connection from pid 3433, user bobrandom seed for tests: 1453914072;;; note: source file ./srfi/srfi-64.scm;;; newer than compiled /gnu/store/5i87jzm90nw8j692y7z1j2qfx16h6ni3-guile-2.0.11/lib/guile/2.0/ccache/srfi/srfi-64.gofinding garbage collector roots...;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0;;; or pass the --no-auto-compile argument to disable.;;; compiling /home/bob/guix/nix/scripts/list-runtime-roots;;; compiled /home/bob/guix/test-tmp/var/3424/cache-3424/guile/ccache/2.0-LE-8-2.0/home/bob/guix/nix/scripts/list-runtime-roots.goremoving stale temporary roots file `/home/bob/guix/test-tmp/var/3424/temproots/3441'determining live/dead paths...accepted connection from pid 3433, user bobfinding garbage collector roots...determining live/dead paths...finding garbage collector roots...determining live/dead paths...finding garbage collector roots...deleting unused links...accepted connection from pid 3433, user bobfinding garbage collector roots...removing stale temporary roots file `/home/bob/guix/test-tmp/var/3424/temproots/3473'deleting `/home/bob/guix/test-tmp/store/h4s3qibk12fxkgprpi0fbv0wwbm4nnhj-delete-me'deleting `/home/bob/guix/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 19.65 MiBaccepted connection from pid 3433, user bobfinding garbage collector roots...removing stale temporary roots file `/home/bob/guix/test-tmp/var/3424/temproots/3480'deleting `/home/bob/guix/test-tmp/store/qbxdfzkscmajhhinvfci172jyk923js6-delete-me'deleting `/home/bob/guix/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 19.65 MiB@ build-started /home/bob/guix/test-tmp/store/m3v4x81ckg9rawdbkqqb4psn94x576z2-the-thing.drv - x86_64-linux /home/bob/guix/test-tmp/var/log/guix/drvs/m3//v4x81ckg9rawdbkqqb4psn94x576z2-the-thing.drv.bz2@ build-succeeded /home/bob/guix/test-tmp/store/m3v4x81ckg9rawdbkqqb4psn94x576z2-the-thing.drv -@ build-started /home/bob/guix/test-tmp/store/zyn8hdy2b78di969fm24j9393dlifc0v-the-thing.drv - x86_64-linux /home/bob/guix/test-tmp/var/log/guix/drvs/zy//n8hdy2b78di969fm24j9393dlifc0v-the-thing.drv.bz2@ build-succeeded /home/bob/guix/test-tmp/store/zyn8hdy2b78di969fm24j9393dlifc0v-the-thing.drv -@ build-started /home/bob/guix/test-tmp/store/fcvyrljisgr1vbmsbrjbxmxkylhvks9h-the-thing.drv - x86_64-linux /home/bob/guix/test-tmp/var/log/guix/drvs/fc//vyrljisgr1vbmsbrjbxmxkylhvks9h-the-thing.drv.bz2@ build-succeeded /home/bob/guix/test-tmp/store/fcvyrljisgr1vbmsbrjbxmxkylhvks9h-the-thing.drv -accepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableaccepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableaccepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableaccepted connection from pid 3433, user bobaccepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableaccepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablesubstitute: guix substitute: warning: while fetching http://does-not-exist/nix-cache-info:server is somewhat slowsubstitute: guix substitute: warning: try `--no-substitutes' if the problem persistssubstitute: Backtrace:substitute: In ice-9/boot-9.scm:substitute: 157: 19 [catch #t #<catch-closure 1d7f580> ...]substitute: In unknown file:substitute: ?: 18 [apply-smob/1 #<catch-closure 1d7f580>]substitute: In ice-9/boot-9.scm:substitute: 63: 17 [call-with-prompt prompt0 ...]substitute: In ice-9/eval.scm:substitute: 432: 16 [eval # #]substitute: In ice-9/boot-9.scm:substitute: 2401: 15 [save-module-excursion #<procedure 1d9d940 at ice-9/boot-9.scm:4045:3 ()>]substitute: 4050: 14 [#<procedure 1d9d940 at ice-9/boot-9.scm:4045:3 ()>]substitute: 1724: 13 [%start-stack load-stack ...]substitute: 1729: 12 [#<procedure 1db4ea0 ()>]substitute: In unknown file:substitute: ?: 11 [primitive-load "/home/bob/guix/scripts/guix"]substitute: In guix/ui.scm:substitute: 1175: 10 [run-guix-command substitute "--query"]substitute: In ice-9/boot-9.scm:substitute: 157: 9 [catch getaddrinfo-error ...]substitute: 157: 8 [catch srfi-34 #<procedure 2c708a0 at guix/ui.scm:411:2 ()> ...]substitute: 157: 7 [catch system-error ...]substitute: In guix/scripts/substitute.scm:substitute: 946: 6 [#<procedure 2c708c0 at guix/scripts/substitute.scm:939:3 ()>]substitute: 797: 5 [process-query "have /home/bob/guix/test-tmp/store/nmng5jh0yybqqm6j4jf3wva9rlxcfxhb-guile-bootstrap-2.0 " ...]substitute: 633: 4 [lookup-narinfos/diverse # #]substitute: 617: 3 [lookup-narinfos "http://does-not-exist" #]substitute: 589: 2 [fetch-narinfos "http://does-not-exist" #]substitute: 222: 1 [download-cache-info "http://does-not-exist"]substitute: In unknown file:substitute: ?: 0 [scm-error misc-error #f ...]substitute: substitute: ERROR: In procedure scm-error:substitute: ERROR: unmatched line "<html><head><meta http-equiv=\"refresh\" content=\"0;url=http://searchguide.level3.com/search/?q=http://does-not-exist/nix-cache-info&t=0\"/ /head body script window.location=\"http://searchguide.level3.com/search/?q=\"+escape(window.location)+\"&r=\"+escape(document.referrer)+\"&t=0\"; /script /body /html "accepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/bob/guix/test-tmp/store/hwl3dai5lm15vg2r6684lvcqgp679iaf-substitute-me /home/bob/guix/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/bob/guix/test-tmp/store/hwl3dai5lm15vg2r6684lvcqgp679iaf-substitute-me (1KiB installed)... file:///.../example.nar 176B 0B/s 00:00 [####################] 100.0% @ substituter-succeeded /home/bob/guix/test-tmp/store/hwl3dai5lm15vg2r6684lvcqgp679iaf-substitute-meaccepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/bob/guix/test-tmp/store/kyyxyqfvahi1fn2nqdslzgaaab9sygss-substitute-me /home/bob/guix/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/bob/guix/test-tmp/store/kyyxyqfvahi1fn2nqdslzgaaab9sygss-substitute-me (1KiB installed)... file:///.../example.nar 176B 0B/s 00:00 [####################] 100.0% @ substituter-succeeded /home/bob/guix/test-tmp/store/kyyxyqfvahi1fn2nqdslzgaaab9sygss-substitute-meaccepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/bob/guix/test-tmp/store/hidfbfxwglxmq7cyvyhzhkrcrd4mj1yf-corrupt-substitute /home/bob/guix/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/bob/guix/test-tmp/store/hidfbfxwglxmq7cyvyhzhkrcrd4mj1yf-corrupt-substitute (1KiB installed)... file:///.../example.nar 128B 0B/s 00:00 [####################] 100.0% @ substituter-failed /home/bob/guix/test-tmp/store/hidfbfxwglxmq7cyvyhzhkrcrd4mj1yf-corrupt-substitute 0 hash mismatch in downloaded path `/home/bob/guix/test-tmp/store/hidfbfxwglxmq7cyvyhzhkrcrd4mj1yf-corrupt-substitute': expected 0000000000000000000000000000000000000000000000000000000000000000, got b8f73a6eb280e63169b1de2a5b5e154676fe1ada685f1e5c7183cbb2c1dcd535accepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable@ substituter-started /home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not /home/bob/guix/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not (1KiB installed)...guix substitute: error: open-file: No such file or directory: "/home/bob/guix/test-tmp/var/3424/substituter-data/example.nar"@ substituter-failed /home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not 256 fetching path `/home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not' failed with exit code 1@ substituter-started /home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not /home/bob/guix/nix/scripts/substitutewarning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not (1KiB installed)...guix substitute: error: open-file: No such file or directory: "/home/bob/guix/test-tmp/var/3424/substituter-data/example.nar"@ substituter-failed /home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not 256 fetching path `/home/bob/guix/test-tmp/store/q56qh3v1rl8wj9rq0bm74w7lc9r2i3rn-substitute-me-not' failed with exit code 1@ build-started /home/bob/guix/test-tmp/store/7hx9y64lciabmw3vz3jn01k8l9jgzs64-substitute-me-not.drv - x86_64-linux /home/bob/guix/test-tmp/var/log/guix/drvs/7h//x9y64lciabmw3vz3jn01k8l9jgzs64-substitute-me-not.drv.bz2@ build-succeeded /home/bob/guix/test-tmp/store/7hx9y64lciabmw3vz3jn01k8l9jgzs64-substitute-me-not.drv -finding garbage collector roots...deleting unused links...finding garbage collector roots...deleting unused links...finding garbage collector roots...deleting unused links...finding garbage collector roots...deleting unused links...@ build-started /home/bob/guix/test-tmp/store/ir9qcvkcgi69diylfgyx489mfif8zra0-bunch.drv - x86_64-linux /home/bob/guix/test-tmp/var/log/guix/drvs/ir//9qcvkcgi69diylfgyx489mfif8zra0-bunch.drv.bz2@ build-succeeded /home/bob/guix/test-tmp/store/ir9qcvkcgi69diylfgyx489mfif8zra0-bunch.drv -finding garbage collector roots...deleting unused links...finding garbage collector roots...deleting unused links...reading the Nix store...reading the Nix store...path `/home/bob/guix/test-tmp/store/phii884551vrqcxvlj6nfw3389204ggx-foo' disappeared, but it still has valid referrers!reading the Nix store...accepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablefetching path `/home/bob/guix/test-tmp/store/74qgba0svij37jfnx8lqrd0x55ppyrrf-corrupt'...warning: authentication and authorization of substitutes disabled!guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailableDownloading /home/bob/guix/test-tmp/store/74qgba0svij37jfnx8lqrd0x55ppyrrf-corrupt (1KiB installed)... file:///.../example.nar 176B 0B/s 00:00 [####################] 100.0% reading the Nix store...checking path existence...checking hashes...reading the Nix store...checking path existence...checking hashes...path `/home/bob/guix/test-tmp/store/74qgba0svij37jfnx8lqrd0x55ppyrrf-corrupt' was modified! expected hash `1c4b66e1fcac86c73e74231eaf91ca18168a857e25583345880fd737f2667981', got `e09c480e2e93336cd3c45aa129f81a0d7ba56c410b849d7779a8136074413b3d'finding garbage collector roots...removing stale temporary roots file `/home/bob/guix/test-tmp/var/3424/temproots/3830'deleting `/home/bob/guix/test-tmp/store/74qgba0svij37jfnx8lqrd0x55ppyrrf-corrupt'deleting `/home/bob/guix/test-tmp/store/trash'deleting unused links...note: currently hard linking saves 19.65 MiBaccepted connection from pid 3433, user bobsubstitute: warning: authentication and authorization of substitutes disabled!substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailablebuilding path(s) `/home/bob/guix/test-tmp/store/zwy70i89sggp86iahxn9gqpd4wshf7k0-non-deterministic'checking path(s) `/home/bob/guix/test-tmp/store/zwy70i89sggp86iahxn9gqpd4wshf7k0-non-deterministic'warning: rewriting hashes in `/home/bob/guix/test-tmp/store/zwy70i89sggp86iahxn9gqpd4wshf7k0-non-deterministic'; cross fingersaccepted connection from pid 3433, user bob@ build-started /home/bob/guix/test-tmp/store/r26lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv - x86_64-linux /home/bob/guix/test-tmp/var/log/guix/drvs/r2//6lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv.bz2@ build-started /home/bob/guix/test-tmp/store/r26lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv - x86_64-linux /home/bob/guix/test-tmp/var/log/guix/drvs/r2//6lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv.bz2result of ?/home/bob/guix/test-tmp/store/r26lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv? differs from previous round; rejecting as non-deterministic@ build-failed /home/bob/guix/test-tmp/store/r26lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv - 1 result of ?/home/bob/guix/test-tmp/store/r26lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv? differs from previous round; rejecting as non-deterministic%%%% Starting test store (Writing full log to "store.log")
;;; ("/home/bob/guix/test-tmp/var/log/guix/drvs/zy/n8hdy2b78di969fm24j9393dlifc0v-the-thing.drv.bz2")
;;; ("/home/bob/guix/test-tmp/var/log/guix/drvs/fc/vyrljisgr1vbmsbrjbxmxkylhvks9h-the-thing.drv.bz2")
;;; (spi (#<<substitutable> path: "/home/bob/guix/test-tmp/store/nmng5jh0yybqqm6j4jf3wva9rlxcfxhb-guile-bootstrap-2.0" deriver: "/home/bob/guix/test-tmp/store/k5qb593w7bsg2hyazdfa0jssvfgg3hdn-guile-bootstrap-2.0.drv" refs: () dl-size: 0 nar-size: 1234>))tests/store.scm:392: FAIL substitute query, alternating URLs
;;; (corrupt #<condition &nix-protocol-error [message: "some substitutes for the outputs of derivation `/home/bob/guix/test-tmp/store/j737r7h6l1mpy7nz4ff1yp602dj5ciy8-corrupt-substitute.drv' failed (usually happens due to networking issues); try `--fallback' to build derivation from source " status: 1] 26e9bd0>)
;;; (c #<condition &nix-protocol-error [message: "signed hash doesn't match actual contents of imported archive; archive could be corrupt, or someone is trying to import a Trojan horse" status: 1] 29372a0>)
;;; (verify1 #t)
;;; (verify2 #f)
;;; (verify3 #t)
;;; (determinism-exception #<condition &nix-protocol-error [message: "derivation `/home/bob/guix/test-tmp/store/9h60dzz99lxb7lrsnfhhyb4jjrq7l56y-non-deterministic.drv' may not be deterministic: hash mismatch in output `/home/bob/guix/test-tmp/store/zwy70i89sggp86iahxn9gqpd4wshf7k0-non-deterministic'" status: 1] 290ba20>)
;;; (multiple-build #<condition &nix-protocol-error [message: "build of `/home/bob/guix/test-tmp/store/r26lhmh1p231lqmysl3crjzgr0njgyfc-non-deterministic.drv' failed" status: 1] 2a2bb70>)# of expected passes 45# of unexpected failures 1./test-env: line 1: 3432 Terminated "/home/bob/guix/pre-inst-env" "/home/bob/guix/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"FAIL tests/store.scm (exit status: 1)
FAIL: tests/lint================
accepted connection from pid 4253, user bobrandom seed for tests: 1453910643;;; note: source file ./srfi/srfi-64.scm;;; newer than compiled /gnu/store/5i87jzm90nw8j692y7z1j2qfx16h6ni3-guile-2.0.11/lib/guile/2.0/ccache/srfi/srfi-64.go%%%% Starting test lint (Writing full log to "lint.log")tests/lint.scm:370: FAIL home-page: host not found# of expected passes 45# of unexpected failures 1./test-env: line 1: 4252 Terminated "/home/bob/guix/pre-inst-env" "/home/bob/guix/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"FAIL tests/lint.scm (exit status: 1)
FAIL: tests/guix-download=========================
+ guix download --versionguix download (GNU Guix) 0.9.1Copyright (C) 2016 the Guix authorsLicense GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.htmlThis is free software: you are free to change and redistribute it.There is NO WARRANTY, to the extent permitted by law.+ guix download http://does.not/existaccepted connection from pid 5114, user bob
Starting download of /tmp/guix-file.qSJyZCFrom http://does.not/exist... exist 0B/s 00:00 | 0B transferred exist 1.1MiB/s 00:00 | 288B transferred /home/bob/guix/test-tmp/store/ma3hazzz1y783d577p07w66cpn5qjsir-exist0f5cx1vmxl5b0ihmgkpng0qs02zi1ip9q0nhhii67lsw2kpgf6c4+ false./test-env: line 1: 5099 Terminated "/home/bob/guix/pre-inst-env" "/home/bob/guix/guix-daemon" --disable-chroot --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL"FAIL tests/guix-download.sh (exit status: 1)
%%%% Starting test storeGroup begin: storeTest begin: test-name: "store-path-hash-part" source-file: "tests/store.scm" source-line: 51 source-form: (test-equal "store-path-hash-part" "283gqy39v3g9dxjy26rynl0zls82fmcg" (store-path-hash-part (string-append (%store-prefix) "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")))Test end: result-kind: pass actual-value: "283gqy39v3g9dxjy26rynl0zls82fmcg" expected-value: "283gqy39v3g9dxjy26rynl0zls82fmcg"Test begin: test-name: "store-path-hash-part #f" source-file: "tests/store.scm" source-line: 57 source-form: (test-equal "store-path-hash-part #f" #f (store-path-hash-part (string-append (%store-prefix) "/foo/bar/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")))Test end: result-kind: pass actual-value: #f expected-value: #fTest begin: test-name: "store-path-package-name" source-file: "tests/store.scm" source-line: 63 source-form: (test-equal "store-path-package-name" "guile-2.0.7" (store-path-package-name (string-append (%store-prefix) "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")))Test end: result-kind: pass actual-value: "guile-2.0.7" expected-value: "guile-2.0.7"Test begin: test-name: "store-path-package-name #f" source-file: "tests/store.scm" source-line: 69 source-form: (test-equal "store-path-package-name #f" #f (store-path-package-name "/foo/bar/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7"))Test end: result-kind: pass actual-value: #f expected-value: #fTest begin: test-name: "direct-store-path?" source-file: "tests/store.scm" source-line: 74 source-form: (test-assert "direct-store-path?" (and (direct-store-path? (string-append (%store-prefix) "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7")) (not (direct-store-path? (string-append (%store-prefix) "/283gqy39v3g9dxjy26rynl0zls82fmcg-guile-2.0.7/bin/guile"))) (not (direct-store-path? (%store-prefix)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "valid-path? live" source-file: "tests/store.scm" source-line: 86 source-form: (test-assert "valid-path? live" (let ((p (add-text-to-store %store "hello" "hello, world"))) (valid-path? %store p)))Test end: result-kind: pass actual-value: #tTest begin: test-name: "valid-path? false" source-file: "tests/store.scm" source-line: 90 source-form: (test-assert "valid-path? false" (not (valid-path? %store (string-append (%store-prefix) "/" (make-string 32 #\e) "-foobar"))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "valid-path? error" source-file: "tests/store.scm" source-line: 95 source-form: (test-assert "valid-path? error" (with-store s (guard (c ((nix-protocol-error? c) #t)) (valid-path? s "foo") #f)))Test end: result-kind: pass actual-value: #tTest begin: test-name: "valid-path? recovery" source-file: "tests/store.scm" source-line: 101 source-form: (test-assert "valid-path? recovery" (with-store s (let-syntax ((true-if-error (syntax-rules () ((_ exp) (guard (c ((nix-protocol-error? c) #t)) exp #f))))) (and (true-if-error (valid-path? s "foo")) (true-if-error (valid-path? s "bar")) (true-if-error (valid-path? s "baz")) (true-if-error (valid-path? s "chbouib")) (valid-path? s (add-text-to-store s "valid" "yeah"))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "hash-part->path" source-file: "tests/store.scm" source-line: 118 source-form: (test-assert "hash-part->path" (let ((p (add-text-to-store %store "hello" "hello, world"))) (equal? (hash-part->path %store (store-path-hash-part p)) p)))Test end: result-kind: pass actual-value: #tTest begin: test-name: "dead-paths" source-file: "tests/store.scm" source-line: 123 source-form: (test-assert "dead-paths" (let ((p (add-text-to-store %store "random-text" (random-text)))) (->bool (member p (dead-paths %store)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "permanent root" source-file: "tests/store.scm" source-line: 144 source-form: (test-assert "permanent root" (let* ((p (with-store store (let ((p (add-text-to-store store "random-text" (random-text)))) (add-permanent-root p) (add-permanent-root p) p)))) (and (member p (live-paths %store)) (begin (remove-permanent-root p) (->bool (member p (dead-paths %store)))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "dead path can be explicitly collected" source-file: "tests/store.scm" source-line: 156 source-form: (test-assert "dead path can be explicitly collected" (let ((p (add-text-to-store %store "random-text" (random-text) (quote ())))) (let-values (((paths freed) (delete-paths %store (list p)))) (and (equal? paths (list p)) (> freed 0) (not (file-exists? p))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "add-text-to-store vs. delete-paths" source-file: "tests/store.scm" source-line: 164 source-form: (test-assert "add-text-to-store vs. delete-paths" (with-store store (let* ((text (random-text)) (path (add-text-to-store store "delete-me" text)) (deleted (delete-paths store (list path))) (path2 (add-text-to-store store "delete-me" text))) (and (string=? path path2) (equal? deleted (list path)) (valid-path? store path) (file-exists? path)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "add-to-store vs. delete-paths" source-file: "tests/store.scm" source-line: 177 source-form: (test-assert "add-to-store vs. delete-paths" (with-store store (let* ((file (search-path %load-path "guix.scm")) (path (add-to-store store "delete-me" #t "sha256" file)) (deleted (delete-paths store (list path))) (path2 (add-to-store store "delete-me" #t "sha256" file))) (and (string=? path path2) (equal? deleted (list path)) (valid-path? store path) (file-exists? path)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "references" source-file: "tests/store.scm" source-line: 189 source-form: (test-assert "references" (let* ((t1 (add-text-to-store %store "random1" (random-text))) (t2 (add-text-to-store %store "random2" (random-text) (list t1)))) (and (equal? (list t1) (references %store t2)) (equal? (list t2) (referrers %store t1)) (null? (references %store t1)) (null? (referrers %store t2)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "requisites" source-file: "tests/store.scm" source-line: 199 source-form: (test-assert "requisites" (let* ((t1 (add-text-to-store %store "random1" (random-text) (quote ()))) (t2 (add-text-to-store %store "random2" (random-text) (list t1))) (t3 (add-text-to-store %store "random3" (random-text) (list t2))) (t4 (add-text-to-store %store "random4" (random-text) (list t1 t3)))) (define (same? x y) (and (= (length x) (length y)) (lset= equal? x y))) (and (same? (requisites %store t1) (list t1)) (same? (requisites %store t2) (list t1 t2)) (same? (requisites %store t3) (list t1 t2 t3)) (same? (requisites %store t4) (list t1 t2 t3 t4)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "derivers" source-file: "tests/store.scm" source-line: 217 source-form: (test-assert "derivers" (let* ((b (add-text-to-store %store "build" "echo $foo > $out" (quote ()))) (s (add-to-store %store "bash" #t "sha256" (search-bootstrap-binary "bash" (%current-system)))) (d (derivation %store "the-thing" s (quasiquote ("-e" (unquote b))) #:env-vars (quasiquote (("foo" unquote (random-text)))) #:inputs (quasiquote (((unquote b)) ((unquote s)))))) (o (derivation->output-path d))) (and (build-derivations %store (list d)) (equal? (query-derivation-outputs %store (derivation-file-name d)) (list o)) (equal? (valid-derivers %store o) (list (derivation-file-name d))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "topologically-sorted, one item" source-file: "tests/store.scm" source-line: 233 source-form: (test-assert "topologically-sorted, one item" (let* ((a (add-text-to-store %store "a" "a")) (b (add-text-to-store %store "b" "b" (list a))) (c (add-text-to-store %store "c" "c" (list b))) (d (add-text-to-store %store "d" "d" (list c))) (s (topologically-sorted %store (list d)))) (equal? s (list a b c d))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "topologically-sorted, several items" source-file: "tests/store.scm" source-line: 241 source-form: (test-assert "topologically-sorted, several items" (let* ((a (add-text-to-store %store "a" "a")) (b (add-text-to-store %store "b" "b" (list a))) (c (add-text-to-store %store "c" "c" (list b))) (d (add-text-to-store %store "d" "d" (list c))) (s1 (topologically-sorted %store (list d a c b))) (s2 (topologically-sorted %store (list b d c a b d)))) (equal? s1 s2 (list a b c d))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "topologically-sorted, more difficult" source-file: "tests/store.scm" source-line: 250 source-form: (test-assert "topologically-sorted, more difficult" (let* ((a (add-text-to-store %store "a" "a")) (b (add-text-to-store %store "b" "b" (list a))) (c (add-text-to-store %store "c" "c" (list b))) (d (add-text-to-store %store "d" "d" (list c))) (w (add-text-to-store %store "w" "w")) (x (add-text-to-store %store "x" "x" (list w))) (y (add-text-to-store %store "y" "y" (list x d))) (s1 (topologically-sorted %store (list y))) (s2 (topologically-sorted %store (list c y))) (s3 (topologically-sorted %store (cons y (references %store y))))) (let* ((x-then-d? (equal? (references %store y) (list x d)))) (and (equal? s1 (if x-then-d? (list w x a b c d y) (list a b c d w x y))) (equal? s2 (if x-then-d? (list a b c w x d y) (list a b c d w x y))) (lset= string=? s1 s3)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "current-build-output-port, UTF-8" source-file: "tests/store.scm" source-line: 274 source-form: (test-assert "current-build-output-port, UTF-8" (string-contains (with-fluids ((%default-port-encoding "UTF-8")) (call-with-output-string (lambda (port) (parameterize ((current-build-output-port port)) (let* ((s "Here\u2019s a Greek letter: \u03bb.") (d (build-expression->derivation %store "foo" (quasiquote (display (unquote s))) #:guile-for-build (package-derivation s %bootstrap-guile (%current-system))))) (guard (c ((nix-protocol-error? c) #t)) (build-derivations %store (list d)))))))) "Here\u2019s a Greek letter: \u03bb."))Test end: result-kind: pass actual-value: 191Test begin: test-name: "current-build-output-port, UTF-8 + garbage" source-file: "tests/store.scm" source-line: 290 source-form: (test-assert "current-build-output-port, UTF-8 + garbage" (string-contains (with-fluids ((%default-port-encoding "UTF-8")) (call-with-output-string (lambda (port) (parameterize ((current-build-output-port port)) (let ((d (build-expression->derivation %store "foo" (quasiquote (begin (use-modules (rnrs io ports)) (display "garbage: ") (put-bytevector (current-output-port) #vu8(128)) (display "lambda: \u03bb\n"))) #:guile-for-build (package-derivation %store %bootstrap-guile)))) (guard (c ((nix-protocol-error? c) #t)) (build-derivations %store (list d)))))))) "garbage: ?lambda: \u03bb"))Test end: result-kind: pass actual-value: 191Test begin: test-name: "log-file, derivation" source-file: "tests/store.scm" source-line: 310 source-form: (test-assert "log-file, derivation" (let* ((b (add-text-to-store %store "build" "echo $foo > $out" (quote ()))) (s (add-to-store %store "bash" #t "sha256" (search-bootstrap-binary "bash" (%current-system)))) (d (derivation %store "the-thing" s (quasiquote ("-e" (unquote b))) #:env-vars (quasiquote (("foo" unquote (random-text)))) #:inputs (quasiquote (((unquote b)) ((unquote s))))))) (and (build-derivations %store (list d)) (file-exists? (pk (log-file %store (derivation-file-name d)))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "log-file, output file name" source-file: "tests/store.scm" source-line: 322 source-form: (test-assert "log-file, output file name" (let* ((b (add-text-to-store %store "build" "echo $foo > $out" (quote ()))) (s (add-to-store %store "bash" #t "sha256" (search-bootstrap-binary "bash" (%current-system)))) (d (derivation %store "the-thing" s (quasiquote ("-e" (unquote b))) #:env-vars (quasiquote (("foo" unquote (random-text)))) #:inputs (quasiquote (((unquote b)) ((unquote s)))))) (o (derivation->output-path d))) (and (build-derivations %store (list d)) (file-exists? (pk (log-file %store o))) (string=? (log-file %store (derivation-file-name d)) (log-file %store o)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "no substitutes" source-file: "tests/store.scm" source-line: 337 source-form: (test-assert "no substitutes" (with-store s (let* ((d1 (package-derivation s %bootstrap-guile (%current-system))) (d2 (package-derivation s %bootstrap-glibc (%current-system))) (o (map derivation->output-path (list d1 d2)))) (set-build-options s #:use-substitutes? #f) (and (not (has-substitutes? s (derivation-file-name d1))) (not (has-substitutes? s (derivation-file-name d2))) (null? (substitutable-paths s o)) (null? (substitutable-path-info s o))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "build-things with output path" source-file: "tests/store.scm" source-line: 348 source-form: (test-assert "build-things with output path" (with-store s (let* ((c (random-text)) (d (build-expression->derivation s "substitute-me" (quasiquote (call-with-output-file %output (lambda (p) (display (unquote c) p)))) #:guile-for-build (package-derivation s %bootstrap-guile (%current-system)))) (o (derivation->output-path d))) (set-build-options s #:use-substitutes? #f) (build-things s (list o)) (not (valid-path? s o)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "substitute query" source-file: "tests/store.scm" source-line: 368 source-form: (test-assert "substitute query" (with-store s (let* ((d (package-derivation s %bootstrap-guile (%current-system))) (o (derivation->output-path d))) (with-derivation-narinfo d (false-if-exception (delete-file-recursively (string-append (getenv "XDG_CACHE_HOME") "/guix/substitute"))) (set-build-options s #:use-substitutes? #t #:substitute-urls (%test-substitute-urls)) (and (has-substitutes? s o) (equal? (list o) (substitutable-paths s (list o))) (match (pk (quote spi) (substitutable-path-info s (list o))) (((? substitutable? s)) (and (string=? (substitutable-deriver s) (derivation-file-name d)) (null? (substitutable-references s)) (equal? (substitutable-nar-size s) 1234)))))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "substitute query, alternating URLs" source-file: "tests/store.scm" source-line: 392 source-form: (test-assert "substitute query, alternating URLs" (let* ((d (with-store s (package-derivation s %bootstrap-guile (%current-system)))) (o (derivation->output-path d))) (with-derivation-narinfo d (false-if-exception (delete-file-recursively (string-append (getenv "XDG_CACHE_HOME") "/guix/substitute"))) (and (with-store s (set-build-options s #:use-substitutes? #t #:substitute-urls (%test-substitute-urls)) (has-substitutes? s o)) (with-store s (set-build-options s #:use-substitutes? #t #:substitute-urls (list "http://does-not-exist")) (not (has-substitutes? s o))) (with-store s (set-build-options s #:use-substitutes? #t #:substitute-urls (%test-substitute-urls)) (has-substitutes? s o))))))Test end: result-kind: fail actual-value: #f actual-error: (srfi-34 #<condition &nix-protocol-error [message: "substituter `substitute' died unexpectedly" status: 1] 2682de0>)Test begin: test-name: "substitute" source-file: "tests/store.scm" source-line: 420 source-form: (test-assert "substitute" (with-store s (let* ((c (random-text)) (d (build-expression->derivation s "substitute-me" (quasiquote (call-with-output-file %output (lambda (p) (exit 1) (display (unquote c) p)))) #:guile-for-build (package-derivation s %bootstrap-guile (%current-system)))) (o (derivation->output-path d))) (with-derivation-substitute d c (set-build-options s #:use-substitutes? #t #:substitute-urls (%test-substitute-urls)) (and (has-substitutes? s o) (build-derivations s (list d)) (equal? c (call-with-input-file o get-string-all)))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "substitute + build-things with output path" source-file: "tests/store.scm" source-line: 439 source-form: (test-assert "substitute + build-things with output path" (with-store s (let* ((c (random-text)) (d (build-expression->derivation s "substitute-me" (quasiquote (call-with-output-file %output (lambda (p) (exit 1) (display (unquote c) p)))) #:guile-for-build (package-derivation s %bootstrap-guile (%current-system)))) (o (derivation->output-path d))) (with-derivation-substitute d c (set-build-options s #:use-substitutes? #t #:substitute-urls (%test-substitute-urls)) (and (has-substitutes? s o) (build-things s (list o)) (valid-path? s o) (equal? c (call-with-input-file o get-string-all)))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "substitute, corrupt output hash" source-file: "tests/store.scm" source-line: 459 source-form: (test-assert "substitute, corrupt output hash" (with-store s (let* ((c "hello, world") (d (build-expression->derivation s "corrupt-substitute" (quasiquote (mkdir %output)) #:guile-for-build (package-derivation s %bootstrap-guile (%current-system)))) (o (derivation->output-path d))) (with-derivation-substitute d c (sha256 => (make-bytevector 32 0)) (set-build-options s #:use-substitutes? #t #:fallback? #f #:substitute-urls (%test-substitute-urls)) (and (has-substitutes? s o) (guard (c ((nix-protocol-error? c) (pk (quote corrupt) c) (not (zero? (nix-protocol-error-status c))))) (build-derivations s (list d)) #f))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "substitute --fallback" source-file: "tests/store.scm" source-line: 489 source-form: (test-assert "substitute --fallback" (with-store s (let* ((t (random-text)) (d (build-expression->derivation s "substitute-me-not" (quasiquote (call-with-output-file %output (lambda (p) (display (unquote t) p)))) #:guile-for-build (package-derivation s %bootstrap-guile (%current-system)))) (o (derivation->output-path d))) (with-derivation-narinfo d (set-build-options s #:use-substitutes? #t #:substitute-urls (%test-substitute-urls)) (and (has-substitutes? s o) (guard (c ((nix-protocol-error? c) (set-build-options s #:use-substitutes? #t #:substitute-urls (%test-substitute-urls) #:fallback? #t) (and (build-derivations s (list d)) (equal? t (call-with-input-file o get-string-all))))) (build-derivations s (list d)) #f))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "export/import several paths" source-file: "tests/store.scm" source-line: 521 source-form: (test-assert "export/import several paths" (let* ((texts (unfold (cut >= <> 10) (lambda _ (random-text)) #{1+}# 0)) (files (map (cut add-text-to-store %store "text" <>) texts)) (dump (call-with-bytevector-output-port (cut export-paths %store files <>)))) (delete-paths %store files) (and (every (negate file-exists?) files) (let* ((source (open-bytevector-input-port dump)) (imported (import-paths %store source))) (and (equal? imported files) (every file-exists? files) (equal? texts (map (lambda (file) (call-with-input-file file get-string-all)) files)))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "export/import paths, ensure topological order" source-file: "tests/store.scm" source-line: 541 source-form: (test-assert "export/import paths, ensure topological order" (let* ((file0 (add-text-to-store %store "baz" (random-text))) (file1 (add-text-to-store %store "foo" (random-text) (list file0))) (file2 (add-text-to-store %store "bar" (random-text) (list file1))) (files (list file1 file2)) (dump1 (call-with-bytevector-output-port (cute export-paths %store (list file1 file2) <>))) (dump2 (call-with-bytevector-output-port (cute export-paths %store (list file2 file1) <>)))) (delete-paths %store files) (and (every (negate file-exists?) files) (bytevector=? dump1 dump2) (let* ((source (open-bytevector-input-port dump1)) (imported (import-paths %store source))) (and (equal? imported (list file1 file2)) (every file-exists? files) (equal? (list file0) (references %store file1)) (equal? (list file1) (references %store file2)))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "export/import incomplete" source-file: "tests/store.scm" source-line: 563 source-form: (test-assert "export/import incomplete" (let* ((file0 (add-text-to-store %store "baz" (random-text))) (file1 (add-text-to-store %store "foo" (random-text) (list file0))) (file2 (add-text-to-store %store "bar" (random-text) (list file1))) (dump (call-with-bytevector-output-port (cute export-paths %store (list file2) <>)))) (delete-paths %store (list file0 file1 file2)) (guard (c ((nix-protocol-error? c) (and (not (zero? (nix-protocol-error-status c))) (string-contains (nix-protocol-error-message c) "not valid")))) (import-paths %store (open-bytevector-input-port dump)))))Test end: result-kind: pass actual-value: 77Test begin: test-name: "export/import recursive" source-file: "tests/store.scm" source-line: 580 source-form: (test-assert "export/import recursive" (let* ((file0 (add-text-to-store %store "baz" (random-text))) (file1 (add-text-to-store %store "foo" (random-text) (list file0))) (file2 (add-text-to-store %store "bar" (random-text) (list file1))) (dump (call-with-bytevector-output-port (cute export-paths %store (list file2) <> #:recursive? #t)))) (delete-paths %store (list file0 file1 file2)) (let ((imported (import-paths %store (open-bytevector-input-port dump)))) (and (equal? imported (list file0 file1 file2)) (every file-exists? (list file0 file1 file2)) (equal? (list file0) (references %store file1)) (equal? (list file1) (references %store file2))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "write-file & export-path yield the same result" source-file: "tests/store.scm" source-line: 596 source-form: (test-assert "write-file & export-path yield the same result" (run-with-store %store (mlet* %store-monad ((drv1 (package->derivation %bootstrap-guile)) (out1 -> (derivation->output-path drv1)) (data -> (unfold (cut >= <> 26) (lambda (i) (random-bytevector 128)) #{1+}# 0)) (build -> (gexp (begin (use-modules (rnrs io ports) (srfi srfi-1)) (let () (define letters (map (lambda (i) (string (integer->char (+ i (char->integer #\a))))) (iota 26))) (define (touch file data) (call-with-output-file file (lambda (port) (put-bytevector port data)))) (mkdir (ungexp output)) (chdir (ungexp output)) (for-each touch (append (drop letters 10) (take letters 10)) (list (ungexp-splicing data))) #t)))) (drv2 (gexp->derivation "bunch" build)) (out2 -> (derivation->output-path drv2)) (item-info -> (store-lift query-path-info))) (mbegin %store-monad (built-derivations (list drv1 drv2)) (foldm %store-monad (lambda (item result) (define ref-hash (let-values (((port get) (open-sha256-port))) (write-file item port) (close-port port) (get))) (>>= (item-info item) (lambda (info) (return (and result (bytevector=? (path-info-hash info) ref-hash)))))) #t (list out1 out2)))) #:guile-for-build (%guile-for-build)))Test end: result-kind: pass actual-value: #tTest begin: test-name: "import corrupt path" source-file: "tests/store.scm" source-line: 662 source-form: (test-assert "import corrupt path" (let* ((text (random-text)) (file (add-text-to-store %store "text" text)) (dump (call-with-bytevector-output-port (cut export-paths %store (list file) <>)))) (delete-paths %store (list file)) (let* ((index (quotient (bytevector-length dump) 4)) (byte (bytevector-u8-ref dump index))) (bytevector-u8-set! dump index (logxor 255 byte))) (and (not (file-exists? file)) (guard (c ((nix-protocol-error? c) (pk (quote c) c) (and (not (zero? (nix-protocol-error-status c))) (string-contains (nix-protocol-error-message c) "corrupt")))) (let* ((source (open-bytevector-input-port dump)) (imported (import-paths %store source))) (pk (quote corrupt-imported) imported) #f)))))Test end: result-kind: pass actual-value: 80Test begin: test-name: "register-path" source-file: "tests/store.scm" source-line: 685 source-form: (test-assert "register-path" (let ((file (string-append (%store-prefix) "/" (make-string 32 #\f) "-fake"))) (when (valid-path? %store file) (delete-paths %store (list file))) (false-if-exception (delete-file file)) (let ((ref (add-text-to-store %store "ref-of-fake" (random-text))) (drv (string-append file ".drv"))) (call-with-output-file file (cut display "This is a fake store item.\n" <>)) (register-path file #:references (list ref) #:deriver drv) (and (valid-path? %store file) (equal? (references %store file) (list ref)) (null? (valid-derivers %store file)) (null? (referrers %store file))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "verify-store" source-file: "tests/store.scm" source-line: 705 source-form: (test-assert "verify-store" (let* ((text (random-text)) (file1 (add-text-to-store %store "foo" text)) (file2 (add-text-to-store %store "bar" (random-text) (list file1)))) (and (pk (quote verify1) (verify-store %store)) (begin (delete-file file1) (not (pk (quote verify2) (verify-store %store)))) (begin (call-with-output-file file1 (lambda (port) (display text port))) (pk (quote verify3) (verify-store %store))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "verify-store + check-contents" source-file: "tests/store.scm" source-line: 722 source-form: (test-assert "verify-store + check-contents" (with-store s (let* ((text (random-text)) (drv (build-expression->derivation s "corrupt" (quasiquote (let ((out (assoc-ref %outputs "out"))) (call-with-output-file out (lambda (port) (display (unquote text) port))) #t)) #:guile-for-build (package-derivation s %bootstrap-guile (%current-system)))) (file (derivation->output-path drv))) (with-derivation-substitute drv text (and (build-derivations s (list drv)) (verify-store s #:check-contents? #t) (begin (chmod file 420) (call-with-output-file file (lambda (port) (display "corrupt!" port))) #t) (not (verify-store s #:check-contents? #t)) (delete-paths s (list file)))))))Test end: result-kind: pass actual-value: ("/home/bob/guix/test-tmp/store/74qgba0svij37jfnx8lqrd0x55ppyrrf-corrupt")Test begin: test-name: "build-things, check mode" source-file: "tests/store.scm" source-line: 759 source-form: (test-assert "build-things, check mode" (with-store store (call-with-temporary-output-file (lambda (entropy entropy-port) (write (random-text) entropy-port) (force-output entropy-port) (let* ((drv (build-expression->derivation store "non-deterministic" (quasiquote (begin (use-modules (rnrs io ports)) (let ((out (assoc-ref %outputs "out"))) (call-with-output-file out (lambda (port) (display (call-with-input-file (unquote entropy) get-string-all) port))) #t))) #:guile-for-build (package-derivation store %bootstrap-guile (%current-system)))) (file (derivation->output-path drv))) (and (build-things store (list (derivation-file-name drv))) (begin (write (random-text) entropy-port) (force-output entropy-port) (guard (c ((nix-protocol-error? c) (pk (quote determinism-exception) c) (and (not (zero? (nix-protocol-error-status c))) (string-contains (nix-protocol-error-message c) "deterministic")))) (build-things store (list (derivation-file-name drv)) (build-mode check)) #f))))))))Test end: result-kind: pass actual-value: 79Test begin: test-name: "build multiple times" source-file: "tests/store.scm" source-line: 796 source-form: (test-assert "build multiple times" (with-store store (set-build-options store #:rounds 2 #:use-substitutes? #f) (call-with-temporary-output-file (lambda (entropy entropy-port) (write (random-text) entropy-port) (force-output entropy-port) (let* ((drv (build-expression->derivation store "non-deterministic" (quasiquote (begin (use-modules (rnrs io ports)) (let ((out (assoc-ref %outputs "out"))) (call-with-output-file out (lambda (port) (display (call-with-input-file (unquote entropy) get-string-all) port) (call-with-output-file (unquote entropy) (lambda (port) (write (quote foobar) port))))) #t))) #:guile-for-build (package-derivation store %bootstrap-guile (%current-system)))) (file (derivation->output-path drv))) (guard (c ((nix-protocol-error? c) (pk (quote multiple-build) c) (and (not (zero? (nix-protocol-error-status c))) (string-contains (nix-protocol-error-message c) "deterministic")))) (current-build-output-port (current-error-port)) (build-things store (list (derivation-file-name drv))) #f))))))Test end: result-kind: pass actual-value: 77Test begin: test-name: "store-lower" source-file: "tests/store.scm" source-line: 834 source-form: (test-equal "store-lower" "Lowered." (let* ((add (store-lower text-file)) (file (add %store "foo" "Lowered."))) (call-with-input-file file get-string-all)))Test end: result-kind: pass actual-value: "Lowered." expected-value: "Lowered."Test begin: test-name: "query-path-info" source-file: "tests/store.scm" source-line: 840 source-form: (test-assert "query-path-info" (let* ((ref (add-text-to-store %store "ref" "foo")) (item (add-text-to-store %store "item" "bar" (list ref))) (info (query-path-info %store item))) (and (equal? (path-info-references info) (list ref)) (equal? (path-info-hash info) (sha256 (string->utf8 (call-with-output-string (cut write-file item <>))))))))Test end: result-kind: pass actual-value: #tGroup end: store# of expected passes 45# of unexpected failures 1
%%%% Starting test lintGroup begin: lintTest begin: test-name: "description: not empty" source-file: "tests/lint.scm" source-line: 141 source-form: (test-assert "description: not empty" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (description "")))) (check-description-style pkg))) "description should not be empty")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "description: valid Texinfo markup" source-file: "tests/lint.scm" source-line: 149 source-form: (test-assert "description: valid Texinfo markup" (->bool (string-contains (with-warnings (check-description-style (dummy-package "x" (description "f{oo}b@r")))) "Texinfo markup in description is invalid")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "description: does not start with an upper-case letter" source-file: "tests/lint.scm" source-line: 156 source-form: (test-assert "description: does not start with an upper-case letter" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (description "bad description.")))) (check-description-style pkg))) "description should start with an upper-case letter")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "description: may start with a digit" source-file: "tests/lint.scm" source-line: 164 source-form: (test-assert "description: may start with a digit" (string-null? (with-warnings (let ((pkg (dummy-package "x" (description "2-component library.")))) (check-description-style pkg)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "description: may start with lower-case package name" source-file: "tests/lint.scm" source-line: 171 source-form: (test-assert "description: may start with lower-case package name" (string-null? (with-warnings (let ((pkg (dummy-package "x" (description "x is a dummy package.")))) (check-description-style pkg)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "description: two spaces after end of sentence" source-file: "tests/lint.scm" source-line: 178 source-form: (test-assert "description: two spaces after end of sentence" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (description "Bad. Quite bad.")))) (check-description-style pkg))) "sentences in description should be followed by two spaces")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "description: end-of-sentence detection with abbreviations" source-file: "tests/lint.scm" source-line: 186 source-form: (test-assert "description: end-of-sentence detection with abbreviations" (string-null? (with-warnings (let ((pkg (dummy-package "x" (description "E.g. Foo, i.e. Bar resp. Baz (a.k.a. DVD).")))) (check-description-style pkg)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: not empty" source-file: "tests/lint.scm" source-line: 194 source-form: (test-assert "synopsis: not empty" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis "")))) (check-synopsis-style pkg))) "synopsis should not be empty")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: does not start with an upper-case letter" source-file: "tests/lint.scm" source-line: 202 source-form: (test-assert "synopsis: does not start with an upper-case letter" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis "bad synopsis.")))) (check-synopsis-style pkg))) "synopsis should start with an upper-case letter")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: may start with a digit" source-file: "tests/lint.scm" source-line: 210 source-form: (test-assert "synopsis: may start with a digit" (string-null? (with-warnings (let ((pkg (dummy-package "x" (synopsis "5-dimensional frobnicator")))) (check-synopsis-style pkg)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: ends with a period" source-file: "tests/lint.scm" source-line: 217 source-form: (test-assert "synopsis: ends with a period" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis "Bad synopsis.")))) (check-synopsis-style pkg))) "no period allowed at the end of the synopsis")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: ends with 'etc.'" source-file: "tests/lint.scm" source-line: 225 source-form: (test-assert "synopsis: ends with 'etc.'" (string-null? (with-warnings (let ((pkg (dummy-package "x" (synopsis "Foo, bar, etc.")))) (check-synopsis-style pkg)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: starts with 'A'" source-file: "tests/lint.scm" source-line: 231 source-form: (test-assert "synopsis: starts with 'A'" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis "A bad synop\u015dis")))) (check-synopsis-style pkg))) "no article allowed at the beginning of the synopsis")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: starts with 'An'" source-file: "tests/lint.scm" source-line: 239 source-form: (test-assert "synopsis: starts with 'An'" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis "An awful synopsis")))) (check-synopsis-style pkg))) "no article allowed at the beginning of the synopsis")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: starts with 'a'" source-file: "tests/lint.scm" source-line: 247 source-form: (test-assert "synopsis: starts with 'a'" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis "a bad synopsis")))) (check-synopsis-style pkg))) "no article allowed at the beginning of the synopsis")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: starts with 'an'" source-file: "tests/lint.scm" source-line: 255 source-form: (test-assert "synopsis: starts with 'an'" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis "an awful synopsis")))) (check-synopsis-style pkg))) "no article allowed at the beginning of the synopsis")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: too long" source-file: "tests/lint.scm" source-line: 263 source-form: (test-assert "synopsis: too long" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (synopsis (make-string 80 #\x))))) (check-synopsis-style pkg))) "synopsis should be less than 80 characters long")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: start with package name" source-file: "tests/lint.scm" source-line: 271 source-form: (test-assert "synopsis: start with package name" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (name "foo") (synopsis "foo, a nice package")))) (check-synopsis-style pkg))) "synopsis should not start with the package name")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: start with package name prefix" source-file: "tests/lint.scm" source-line: 280 source-form: (test-assert "synopsis: start with package name prefix" (string-null? (with-warnings (let ((pkg (dummy-package "arb" (synopsis "Arbitrary precision")))) (check-synopsis-style pkg)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "synopsis: start with abbreviation" source-file: "tests/lint.scm" source-line: 287 source-form: (test-assert "synopsis: start with abbreviation" (string-null? (with-warnings (let ((pkg (dummy-package "uucp" (synopsis "UUCP implementation") (description "Imagine this is Taylor UUCP.")))) (check-synopsis-style pkg)))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "inputs: pkg-config is probably a native input" source-file: "tests/lint.scm" source-line: 296 source-form: (test-assert "inputs: pkg-config is probably a native input" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (inputs (quasiquote (("pkg-config" (unquote pkg-config)))))))) (check-inputs-should-be-native pkg))) "pkg-config should probably be a native input")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "patches: file names" source-file: "tests/lint.scm" source-line: 305 source-form: (test-assert "patches: file names" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (source (origin (method url-fetch) (uri "someurl") (sha256 "somesha") (patches (list "/path/to/y.patch"))))))) (check-patch-file-names pkg))) "file names of patches should start with the package name")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "patches: not found" source-file: "tests/lint.scm" source-line: 319 source-form: (test-assert "patches: not found" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (source (origin (method url-fetch) (uri "someurl") (sha256 "somesha") (patches (list (search-patch "this-patch-does-not-exist!")))))))) (check-patch-file-names pkg))) "patch not found")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "derivation: invalid arguments" source-file: "tests/lint.scm" source-line: 334 source-form: (test-assert "derivation: invalid arguments" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (arguments (quote (#:imported-modules (invalid-module))))))) (check-derivation pkg))) "failed to create derivation")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "license: invalid license" source-file: "tests/lint.scm" source-line: 344 source-form: (test-assert "license: invalid license" (string-contains (with-warnings (check-license (dummy-package "x" (license #f)))) "invalid license"))Test end: result-kind: pass actual-value: 28Test begin: test-name: "home-page: wrong home-page" source-file: "tests/lint.scm" source-line: 350 source-form: (test-assert "home-page: wrong home-page" (->bool (string-contains (with-warnings (let ((pkg (package (inherit (dummy-package "x")) (home-page #f)))) (check-home-page pkg))) "invalid")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "home-page: invalid URI" source-file: "tests/lint.scm" source-line: 360 source-form: (test-assert "home-page: invalid URI" (->bool (string-contains (with-warnings (let ((pkg (package (inherit (dummy-package "x")) (home-page "foobar")))) (check-home-page pkg))) "invalid home page URL")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "home-page: host not found" source-file: "tests/lint.scm" source-line: 370 source-form: (test-assert "home-page: host not found" (->bool (string-contains (with-warnings (let ((pkg (package (inherit (dummy-package "x")) (home-page "http://does-not-exist")))) (check-home-page pkg))) "domain not found")))Test end: result-kind: fail actual-value: #fTest begin: test-name: "home-page: Connection refused" source-file: "tests/lint.scm" source-line: 381 source-form: (test-assert "home-page: Connection refused" (->bool (string-contains (with-warnings (let ((pkg (package (inherit (dummy-package "x")) (home-page %local-url)))) (check-home-page pkg))) "Connection refused")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "home-page: 200" source-file: "tests/lint.scm" source-line: 392 source-form: (test-equal "home-page: 200" "" (with-warnings (with-http-server 200 (let ((pkg (package (inherit (dummy-package "x")) (home-page %local-url)))) (check-home-page pkg)))))Test end: result-kind: pass actual-value: "" expected-value: ""Test begin: test-name: "home-page: 404" source-file: "tests/lint.scm" source-line: 402 source-form: (test-assert "home-page: 404" (->bool (string-contains (with-warnings (with-http-server 404 (let ((pkg (package (inherit (dummy-package "x")) (home-page %local-url)))) (check-home-page pkg)))) "not reachable: 404")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "source-file-name" source-file: "tests/lint.scm" source-line: 413 source-form: (test-assert "source-file-name" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (version "3.2.1") (source (origin (method url-fetch) (uri "http://www.example.com/3.2.1.tar.gz")(sha256 %null-sha256)))))) (check-source-file-name pkg))) "file name should contain the package name")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "source-file-name: v prefix" source-file: "tests/lint.scm" source-line: 427 source-form: (test-assert "source-file-name: v prefix" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (version "3.2.1") (source (origin (method url-fetch) (uri "http://www.example.com/v3.2.1.tar.gz")(sha256 %null-sha256)))))) (check-source-file-name pkg))) "file name should contain the package name")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "source-file-name: bad checkout" source-file: "tests/lint.scm" source-line: 441 source-form: (test-assert "source-file-name: bad checkout" (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (version "3.2.1") (source (origin (method git-fetch) (uri (git-reference (url "http://www.example.com/x.git")(commit "0"))) (sha256 %null-sha256)))))) (check-source-file-name pkg))) "file name should contain the package name")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "source-file-name: good checkout" source-file: "tests/lint.scm" source-line: 457 source-form: (test-assert "source-file-name: good checkout" (not (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (version "3.2.1") (source (origin (method git-fetch) (uri (git-reference (url "http://git.example.com/x.git")(commit "0"))) (file-name (string-append "x-" version)) (sha256 %null-sha256)))))) (check-source-file-name pkg))) "file name should contain the package name"))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "source-file-name: valid" source-file: "tests/lint.scm" source-line: 475 source-form: (test-assert "source-file-name: valid" (not (->bool (string-contains (with-warnings (let ((pkg (dummy-package "x" (version "3.2.1") (source (origin (method url-fetch) (uri "http://www.example.com/x-3.2.1.tar.gz")(sha256 %null-sha256)))))) (check-source-file-name pkg))) "file name should contain the package name"))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "source: 200" source-file: "tests/lint.scm" source-line: 491 source-form: (test-equal "source: 200" "" (with-warnings (with-http-server 200 (let ((pkg (package (inherit (dummy-package "x")) (source (origin (method url-fetch) (uri %local-url) (sha256 %null-sha256)))))) (check-source pkg)))))Test end: result-kind: pass actual-value: "" expected-value: ""Test begin: test-name: "source: 404" source-file: "tests/lint.scm" source-line: 504 source-form: (test-assert "source: 404" (->bool (string-contains (with-warnings (with-http-server 404 (let ((pkg (package (inherit (dummy-package "x")) (source (origin (method url-fetch) (uri %local-url) (sha256 %null-sha256)))))) (check-source pkg)))) "not reachable: 404")))Test end: result-kind: pass actual-value: #tTest begin: test-name: "cve" source-file: "tests/lint.scm" source-line: 518 source-form: (test-assert "cve" (mock ((guix scripts lint) package-vulnerabilities (const (quote ()))) (string-null? (with-warnings (check-vulnerabilities (dummy-package "x"))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "cve: one vulnerability" source-file: "tests/lint.scm" source-line: 523 source-form: (test-assert "cve: one vulnerability" (mock ((guix scripts lint) package-vulnerabilities (lambda (package) (list (make-struct (@@ (guix cve) <vulnerability>) 0 "CVE-2015-1234" (list (cons (package-name package) (package-version package))))))) (string-contains (with-warnings (check-vulnerabilities (dummy-package "pi" (version "3.14")))) "vulnerable to CVE-2015-1234")))Test end: result-kind: pass actual-value: 41Test begin: test-name: "cve: one patched vulnerability" source-file: "tests/lint.scm" source-line: 535 source-form: (test-assert "cve: one patched vulnerability" (mock ((guix scripts lint) package-vulnerabilities (lambda (package) (list (make-struct (@@ (guix cve) <vulnerability>) 0 "CVE-2015-1234" (list (cons (package-name package) (package-version package))))))) (string-null? (with-warnings (check-vulnerabilities (dummy-package "pi" (version "3.14") (source (dummy-origin (patches (list "/a/b/pi-CVE-2015-1234.patch"))))))))))Test end: result-kind: pass actual-value: #tTest begin: test-name: "formatting: lonely parentheses" source-file: "tests/lint.scm" source-line: 552 source-form: (test-assert "formatting: lonely parentheses" (string-contains (with-warnings (check-formatting (dummy-package "ugly as hell!"))) "lonely"))Test end: result-kind: pass actual-value: 66Test begin: test-name: "formatting: tabulation" source-file: "tests/lint.scm" source-line: 562 source-form: (test-assert "formatting: tabulation" (string-contains (with-warnings (check-formatting (dummy-package "leave the tab here:\t"))) "tabulation"))Test end: result-kind: pass actual-value: 47Test begin: test-name: "formatting: trailing white space" source-file: "tests/lint.scm" source-line: 568 source-form: (test-assert "formatting: trailing white space" (string-contains (with-warnings (check-formatting (dummy-package "x"))) "trailing white space"))Test end: result-kind: pass actual-value: 28Test begin: test-name: "formatting: long line" source-file: "tests/lint.scm" source-line: 575 source-form: (test-assert "formatting: long line" (string-contains (with-warnings (check-formatting (dummy-package "x"))) "too long"))Test end: result-kind: pass actual-value: 43Test begin: test-name: "formatting: alright" source-file: "tests/lint.scm" source-line: 583 source-form: (test-assert "formatting: alright" (string-null? (with-warnings (check-formatting (dummy-package "x")))))Test end: result-kind: pass actual-value: #tGroup end: lint# of expected passes 45# of unexpected failures 1
A
A
Alex Kost wrote on 28 Jan 2016 22:11
(address . rennes@openmailbox.org)(address . 22475@debbugs.gnu.org)
878u391kat.fsf@gmail.com
rennes@openmailbox.org (2016-01-27 18:53 +0300) wrote:
Toggle quote (13 lines)> Hi,>> i clone guix from git(in GuixSD), and when run 'make check' display FAIL> message. But the command './pre-inst-env' works.>> These are the commands that run:>> git clone git://git.savannah.gnu.org/guix.git> guix environment guix> ./bootstrap> ./configure --with-libgcrypt-prefix=$HOME/.guix-profile/> --localstatedir=/var
Just a side note: "--with-libgcrypt-prefix" is not necessary now(I think after commit dd01fec¹).
¹ http://git.savannah.gnu.org/cgit/guix.git/commit/?id=dd01fecd23a4ded46b99a51dc08ac5d964dbcd53
-- Alex
R
R
rennes wrote on 29 Jan 2016 03:43
(name . Alex Kost)(address . alezost@gmail.com)(address . 22475@debbugs.gnu.org)
7716871ab4e680a079e982faded8cdda@openmailbox.org
Hi,
On 2016-01-28 22:11, Alex Kost wrote:
Toggle quote (23 lines)> rennes@openmailbox.org (2016-01-27 18:53 +0300) wrote:> >> Hi,>> >> i clone guix from git(in GuixSD), and when run 'make check' display >> FAIL>> message. But the command './pre-inst-env' works.>> >> These are the commands that run:>> >> git clone git://git.savannah.gnu.org/guix.git>> guix environment guix>> ./bootstrap>> ./configure --with-libgcrypt-prefix=$HOME/.guix-profile/>> --localstatedir=/var> > Just a side note: "--with-libgcrypt-prefix" is not necessary now> (I think after commit dd01fec¹).> > ¹> http://git.savannah.gnu.org/cgit/guix.git/commit/?id=dd01fecd23a4ded46b99a51dc08ac5d964dbcd53

i test again without --with-libgcrypt-prefix", and works.
Thanks.
L
L
Ludovic Courtès wrote on 31 Jan 2016 10:21
(address . rennes@openmailbox.org)
87a8nmgl3n.fsf@gnu.org
rennes@openmailbox.org skribis:
Toggle quote (6 lines)> Starting download of /tmp/guix-file.qSJyZC> From http://does.not/exist...> exist 0B/s 00:00 | 0B transferred. exist 1.1MiB/s 00:00 | 288B transferred> /home/bob/guix/test-tmp/store/ma3hazzz1y783d577p07w66cpn5qjsir-exist> 0f5cx1vmxl5b0ihmgkpng0qs02zi1ip9q0nhhii67lsw2kpgf6c4
AFAICS all the tests failing here are due to misbehaving nameresolution, which could be due to to your ISP doing “DNS hijacking”—thatis, the ‘does.not’ host above does not exist, but you ISP’s DNS serverreturns an IP address anyway to redirect you to their own server.
I think there’s nothing we can do on our side. But you should complainto your ISP! :-)
Ludo’.
L
L
Ludovic Courtès wrote on 31 Jan 2016 10:30
control message for bug #22475
(address . control@debbugs.gnu.org)
87d1sif65d.fsf@gnu.org
tags 22475 notabug
L
L
Ludovic Courtès wrote on 31 Jan 2016 10:30
(address . control@debbugs.gnu.org)
87bn82f652.fsf@gnu.org
close 22475 0.9.0
?
Your comment

This issue is archived.

To comment on this conversation send email to 22475@debbugs.gnu.org