Subject: Re: bug#65755: [PATCH 0/3] Mark some packages as not supported on the hurd.

From: Ludovic Courtès <[email-masked]>
Date: Fri, 15 Sep 2023 21:43:53 +0200

Christopher Baines <[email-masked]> skribis:

> Janneke Nieuwenhuizen <[email-masked]> writes:
>
>> Marius found that building the updated "guix" package on the
>> just-rebased hurd-team branch failed.
>>
>> It turns out that the packages.scm test on master fails notably:
>> package-transitive-supported-systems, implicit inputs
>>
>> test-name: package-transitive-supported-systems, implicit inputs
>> location: /home/janneke/src/guix/master/tests/packages.scm:496
>> 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" "mips64el-linux" "aarch64-linux" "powerpc64le-linux" "riscv64-linux" "i686-linux" "armhf-linux" "i586-gnu" "powerpc-linux")
>> actual-value: ("x86_64-linux" "mips64el-linux" "aarch64-linux" "powerpc64le-linux" "riscv64-linux" "i686-linux" "armhf-linux" "powerpc-linux")
>> result: FAIL

[...]

> I don't think there's anything wrong with adjusting the expectation to
> have the test pass, but to me the longer term thing to do is look at
> changing the code around supported systems.

Agreed, we need to change the expected result to:

  (filter target-linux? %supported-systems)

This is expected given that ‘%current-system’ is set to *-linux.

> On not breaking tests when making changes though, I don't generally run
> make check unless I'm changing code in guix/ but it would be nice to
> start QA doing that for every patch series.

Yes!

> We should also probably try to avoid tests that break when making
> changes to packages.

We try to avoid it but there are a few cases where we test real packages
that we hope rarely change.

Thanks,
Ludo’.