GNU bug report logs - #40482
Test failure in tests/packages.scm after merging master into core-updates

Previous Next

Package: guix;

Reported by: Marius Bakke <mbakke <at> fastmail.com>

Date: Tue, 7 Apr 2020 11:32:02 UTC

Severity: normal

Merged with 40535

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Jan Nieuwenhuizen <janneke <at> gnu.org>
Subject: bug#40535: closed (Re: bug#40482: Test failure in tests/packages.scm
 after merging master into core-updates)
Date: Fri, 10 Apr 2020 22:37:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#40482: [core-updates]: Updating `guix' makes package-transitive-supported-systems test fail

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 40535 <at> debbugs.gnu.org.

-- 
40482: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=40482
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Ludovic Courtès <ludo <at> gnu.org>
To: Marius Bakke <mbakke <at> fastmail.com>
Cc: 40482-done <at> debbugs.gnu.org
Subject: Re: bug#40482: Test failure in tests/packages.scm after merging
 master into core-updates
Date: Sat, 11 Apr 2020 00:36:00 +0200
Hello,

Marius Bakke <mbakke <at> fastmail.com> skribis:

> On the current "core-updates" branch (commit
> a533c5a1835cbeafaf595c4474e2ce6adde7de8d), one test starts to fail if
> commits 190ddfe21e3d87719733d12fb9b5eb176125a49f and
> a187cc562890895ad41dfad00eb1d5c4a4b00936 are applied:
>
> test-name: package-transitive-supported-systems, implicit inputs
> location: tests/packages.scm:362
> source:
> + (test-equal
> +   "package-transitive-supported-systems, implicit inputs"
> +   %supported-systems
> +   (let ((p (dummy-package
> +              "foo"
> +              (build-system gnu-build-system)
> +              (supported-systems
> +                `("does-not-exist" "foobar" ,@%supported-systems)))))
> +     (parameterize
> +       ((%current-system "armhf-linux"))
> +       (package-transitive-supported-systems p))))
> expected-value: ("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "mips64el-linux" "i586-gnu")
> actual-value: ("x86_64-linux" "i686-linux")
> result: FAIL
>
>
> After some trial and error I found that simply removing the test added
> by commit a187cc562890895ad41dfad00eb1d5c4a4b00936 will make the above
> test pass!

This is fixed by e85d4cecbe253e59a8a2a42b6ce427d96ff10534.

This has to do with memoization of things that are actually
system-dependent.  This is why you’d see this side effect: in one case,
the first thing memoized would be the armhf graph, in the other case it
would be the x86_64 one.

Concretely,

  guix build coreutils -s x86_64-linux -s armhf-linux

would return the right derivation for x86_64 and a bogus one for armhf
(one that depends on Mes, Gash, etc.).

Thanks,
Ludo’.

[Message part 3 (message/rfc822, inline)]
From: Jan Nieuwenhuizen <janneke <at> gnu.org>
To: bug-guix <at> gnu.org
Subject: [core-updates]: Updating `guix' makes
 package-transitive-supported-systems test fail
Date: Fri, 10 Apr 2020 14:05:40 +0200
Hi,

On current core-updates

    d523eb5c9c gnu: python-cython: The i686 python2 workaround is needed for 32-bit ARM too.

updating the guix package like so

    make update-guix-package

leads to a test failure of package-transitive-supported-systems

    make check TESTS=tests/packages

=>

    test-name: package-transitive-supported-systems, implicit inputs
    location: /home/janneke/src/guix/core-updates/tests/packages.scm:397
    source:
    + (test-equal
    +   "package-transitive-supported-systems, implicit inputs"
    +   %supported-systems
    +   (let ((p (dummy-package
    +              "foo"
    +              (build-system gnu-build-system)
    +              (supported-systems
    +                `("does-not-exist" "foobar" ,@%supported-systems)))))
    +     (parameterize
    +       ((%current-system "armhf-linux"))
    +       (package-transitive-supported-systems p))))
    expected-value: ("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "mips64el-linux" "i586-gnu")
    actual-value: ("x86_64-linux" "i686-linux")
    result: FAIL

Last week, when core-updates was at

    1808e64de0 gnu: coreutils: Typo: Use libcap only when supported.

it worked correctly.

This is unfortunate, as wip-hurd-vm (freshly rebased) depends on a guix
update.

Greetings,
janneke

-- 
Jan Nieuwenhuizen <janneke <at> gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com



This bug report was last modified 5 years and 41 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.