(address . bug-guix@gnu.org)
Hi,
Lars-Dominik, I'm CCing you on this email because you introduced the
code discussed below, so I'm hoping you might know something about it.
If you could please take a look, I'd really appreciate it!
Starting with commit 09448c0994390697e876db235a3b773311795238, "make
check" fails when a guix-daemon is running. (It doesn't fail when
guix-daemon is not running, since the problematic code below is only
executed when an "external store" is available.) A guix-daemon is
usually running when one manually invokes "make check" on a system where
Guix has already been installed.
One specific test failure is test/guix-package.sh, which fails as
follows:
Toggle snippet (37 lines)
test-name: python-build-system: python-dummy-ok
location: /home/marusich/guix-core-updates/tests/builders.scm:174
source:
+ (test-assert
+ (string-append
+ "python-build-system: "
+ (package-name p))
+ (let* ((drv (package-derivation store p)))
+ (build-derivations store (list drv))))
actual-value: #f
actual-error:
+ (out-of-range
+ #f
+ "Value out of range ~S to ~S: ~S"
+ (0 59 81)
+ (81))
result: FAIL
test-name: python-build-system: python-dummy-no-setuptools
location: /home/marusich/guix-core-updates/tests/builders.scm:174
source:
+ (test-assert
+ (string-append
+ "python-build-system: "
+ (package-name p))
+ (let* ((drv (package-derivation store p)))
+ (build-derivations store (list drv))))
actual-value: #f
actual-error:
+ (out-of-range
+ #f
+ "Value out of range ~S to ~S: ~S"
+ (0 59 81)
+ (81))
result: FAIL
The test succeeds on the previous commit.
Upon closer inspection, it seems the failure occurs when calling
package-derivation. By putting the following code into the
tests/builders.scm file...
Toggle snippet (6 lines)
(pk 'beforerun)
(with-external-store store
(package-derivation store python-dummy-ok))
(pk 'afterrun)
...I was able to get this error message when running "make check
TESTS=tests/builders.scm":
Toggle snippet (39 lines)
;;; (beforerun)
Backtrace:
In guix/packages.scm:
1519:22 19 (thunk)
1448:25 18 (bag->derivation #<store-connection 256.99 7fff865c5190> …)
In srfi/srfi-1.scm:
586:29 17 (map1 (("source" #<origin "https://data.iana.org/t…>) …))
586:29 16 (map1 (("tzcode" #<origin "https://data.iana.org/t…>) …))
586:17 15 (map1 (("tar" #<package tar@1.34 guix/build-system…>) …))
In guix/packages.scm:
1224:16 14 (expand-input #<store-connection 256.99 7fff865c5190> # …)
1181:16 13 (package-derivation _ #<package tar@1.34 guix/build-sy…> …)
1519:22 12 (thunk)
1448:25 11 (bag->derivation #<store-connection 256.99 7fff865c5190> …)
In srfi/srfi-1.scm:
586:17 10 (map1 (("source" #<origin "mirror://gnu/tar/tar-1.…>) …))
In guix/packages.scm:
1243:5 9 (expand-input _ _ _ _ _)
In ice-9/boot-9.scm:
1736:10 8 (with-exception-handler _ _ #:unwind? _ # _)
In guix/packages.scm:
1248:18 7 (_)
In guix/store.scm:
2062:24 6 (run-with-store #<store-connection 256.99 7fff865c5190> …)
1896:8 5 (_ _)
In guix/gexp.scm:
258:18 4 (_ _)
In guix/packages.scm:
1635:7 3 (_ _)
616:2 2 (patch-and-repack #<derivation /gnu/store/z66sd90j5ya4…> …)
In unknown file:
1 (string-drop "/gnu/store/4y8yhyxhvh725bp3bk7wzr3jn8r5h…" …)
In ice-9/boot-9.scm:
1669:16 0 (raise-exception _ #:continuable? _)
ice-9/boot-9.scm:1669:16: In procedure raise-exception:
Value out of range 0 to 59: 74
I'm not sure exactly what the problem is. I'm inclined to believe that
it represents some sort of test logic bug, rather than a real python
packaging bug, I'm not really sure.
I see that the problematic forms are using macros. Specifically, the
tests/builders.scm code is attempting to simultaneously mix invocations
of lambdas, the test-assert syntax (i.e., macro), and the
with-external-store syntax (i.e., macro). I wonder if there's a
macro-related bug lurking here... Any ideas?
For now, the failures can be worked around by stopping guix-daemon when
running "make check." Naturally, this bug isn't a problem when guix
builds guix, since an external store is not available in the build
environment, so the problematic code doesn't get executed there.
--
Chris
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEy/WXVcvn5+/vGD+x3UCaFdgiRp0FAmBHNk4ACgkQ3UCaFdgi
Rp0EzBAAuTD12/e/9kSTOXvU0eatYfk9fL7DT1wEkgoBLU4tZeECdxqbyMXOv+9B
KK1rM6Hr4yYZIXW1+7AMnU4bM+tgJSdkF3k+yHAjeTgOx/r4gSfvliDt5RTPadhW
rjfl1+iIyGrgwcA+b942nLWBirM/v05T0y2Pw/0Xe2rnExQDiIE5lysL5CGnYKgW
AYWYW0Re1TSagIPIZfPyCJwSXLq5GXnehlRxr+6smA/sMqIjs/YN3Yt9ONobCvqF
Tvvk2y5rol7MpBM51inoTdd0MD8AI7/cMQ4nZR/JL/rrZdvij5esi/Nwbsx5bJXZ
3LvFCVHo05mNg+dAQso+V6muJ2rLay/t+rmZsprKsVkmFY4vl+679kKkzS6GUjG3
MbqCMurSUAWg63x8hDsQNtutvNUhOQzFbTvvU/87SbGAYdRaw2OGyXeRk63s3i9B
BrU1mpWML+0ge+j7h38TIUs010yyW/rtCWKCUnwYDfm5SzDuOc/NlN5O99mORTck
jbzttPYY0rfWq4hEU7ZDJ72Em5LJy2WmifJraIL49OPVj8MMLvRdFBw/Gzxn93k6
hMBXFFC7uO1FE1dle19bq8dG1GJzjTn7sRlyotx1gr/SgqikeJQj+BZasV1/xP5U
kyzJ9csWrVs6i664TjrxaY8+Pu7HHmcstmRsAOXV09oGYaAXtBQ=
=CVvc
-----END PGP SIGNATURE-----