[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#46038: guix 1.3.0rc1 test failure: channels-news, one entry
From: |
Vagrant Cascadian |
Subject: |
bug#46038: guix 1.3.0rc1 test failure: channels-news, one entry |
Date: |
Tue, 04 May 2021 15:34:44 -0700 |
On 2021-05-04, Ludovic Courtès wrote:
> Vagrant Cascadian <vagrant@reproducible-builds.org> skribis:
>
>> On 2021-01-22, Vagrant Cascadian wrote:
>>> I've uploaded guix 1.2.0 built against guile-2.2 to Debian, and while it
>>> builds fine on the official buildd.debian.org infrastructure, on amd64
>>> and arm64 the "channel-news, one entry" test from tests/channels.scm
>>> fails on tests.reproducible-builds.org.
>>>
>>> There are likely a few differences in the two build environments,
>>> possibly including network access.
>>>
>>> Does the "channel-news, one entry" test indirectly depend on network or
>>> bootstrap binaries?
>>>
>>> Could a difference in locale related variables affect the result of the
>>> test (e.g. LANGUAGE=en:en_US vs. LANGUAGE unset, LC_ALL unset
>>> vs. LC_ALL=C or LC_ALL=C.UTF-8)?
>>>
>>>
>>> https://tests.reproducible-builds.org/debian/rb-pkg/experimental/amd64/guix.html
>>
>> Still basically the same story with 1.3.0rc1, in some cases this test
>> fails, but I haven't consistently figured out what triggers it.
>>
>>
>>> test-name: channel-news, one entry
>>> location: /build/1st/guix-1.2.0/tests/channels.scm:324
>>> source:
>
> [...]
>
>>> + (lset= equal?
>>> + (map channel-news-entry-title
>>> + (channel-news-for-commit channel commit5))
>>> + '((("en" . "Another file!"))
>>> + (("en" . "Old news.") ("eo" . "Malnova?oj."))))
>
> The culprit is right here: it should read “Malnovaĵoj”, but there’s a
> question mark instead of ‘ĵ’.
>
> Could it be that you’re not running tests in a UTF-8 locale?
Thanks for taking a deeper look!
Yes, on tests.reproducible-builds.org, one build is run in the C locale,
the other in various UTF-8 locales (somewhat arbitrarily tied to
architecture exactly which UTF-8 locale is used). I'm guessing
buildd.debian.org use C.UTF-8, since it builds fine there.
So now the question is what to do; should tests be able to assume a
UTF-8 locale?
Should I try to adapt the test to work in C?
Should I workaround it in the Debian packaging by forcing to use a UTF-8
locale (on Debian, the only one definitely available is C.UTF-8, which
isn't in upstream glibc, and thus not in guix itself).
live well,
vagrant
signature.asc
Description: PGP signature