emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#39970: closed (guix commands broken on Azerbaijani 'az_AZ' and Turki


From: GNU bug Tracking System
Subject: bug#39970: closed (guix commands broken on Azerbaijani 'az_AZ' and Turkish 'tr_TR' locales)
Date: Wed, 05 May 2021 04:48:02 +0000

Your message dated Wed, 05 May 2021 00:47:02 -0400
with message-id <875yzxlrcp.fsf@gmail.com>
and subject line Re: bug#39970: guix commands broken on Azerbaijani 'az_AZ' and 
Turkish 'tr_TR' locales
has caused the debbugs.gnu.org bug report #39970,
regarding guix commands broken on Azerbaijani 'az_AZ' and Turkish 'tr_TR' 
locales
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
39970: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=39970
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: guix commands broken on Azerbaijani 'az_AZ' and Turkish 'tr_TR' locales Date: Sat, 7 Mar 2020 13:00:52 +0100
After running

export LC_ALL=tr_TR.utf8

many important Guix commands like 'guix environment', 'guix install'
and 'guix pull' fail.

$ guix environment --ad-hoc hello
Backtrace:
           1 (primitive-load "/home/florian/.config/guix/current/bin…")
In guix/ui.scm:
  1826:12  0 (run-guix-command _ . _)

guix/ui.scm:1826:12: In procedure run-guix-command:
In procedure string-length: Wrong type argument in position 1 (expecting 
string): #f


Running guix via ./pre-inst-env gives a more useful backtrace.  The
reason is that in guix/store.scm

(use-modules (ice-9 regex))
(regexp-exec (make-regexp "^/gnu/store/([0-9a-df-np-sv-z]{32})-([^/]+)$")
             
"/gnu/store/bv9py3f2dsa5iw0aijqjv9zxwprcy1nb-fontconfig-2.13.1.drv")

evaluates to #f in Turkish, possibly because of the presence of
dotless i (ı) in the range.

The attached patch fixes the issue by including i explicitly, but I
believe enumerating all of [0-9abcdfghijklmnpqrsvwxyz] explicitly
might be more future-proof.

Shall I push the patch modified to list all letters in
[0-9abcdfghijklmnpqrsvwxyz] explicitly?  Numbers too?  I suppose there
is no downside to listing all without ranges.

I wonder what else is affected; the installer maybe?  I have not
tested yet.

Regards,
Florian

Attachment: 0001-store-Fix-many-guix-commands-failing-on-some-locales.patch
Description: Text document


--- End Message ---
--- Begin Message --- Subject: Re: bug#39970: guix commands broken on Azerbaijani 'az_AZ' and Turkish 'tr_TR' locales Date: Wed, 05 May 2021 00:47:02 -0400 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> writes:

> On Tue, Mar 17, 2020 at 10:20:01PM +0100, Ludovic Courtès wrote:
>> "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de> skribis:
>> > `LC_ALL=tr_TR.utf8 make check` is still very unhappy though.
>> > There are many failures.  I will continue to investigate later today.
>> 
>> OK.
>
> The tests fail to many other uses of [a-z] in regexps.  I will look;
> for e.g. guix/import/cran.scm
>
> (if (string-match "^[A-Za-z][^ :]+:( |\n|$)" line)
>     …)
>
> it would be easier and clearer to just list [a-z] explicitly:
>
>
>> LGTM, thank you!
>
> :) Pushed as 771c5e155d7862ed91a5d503eecc00c1db1150ad.

Closing.

Thank you,

Maxim


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]