#1078681 guile-3.0: Something broken in dealing with locales

Package:
guile-3.0
Source:
guile-3.0
Description:
GNU extension language and Scheme interpreter
Submitter:
Francesco P. Lovergine
Date:
2024-08-16 09:54:02 UTC
Severity:
normal
#1078681#5
Date:
2024-08-14 08:13:07 UTC
From:
To:
This problem affects both testing and unstable with 3.0.9 and 3.0.10. Feel free to raise level if appropriate,
because it causes multiple problems even in third-party modules.


$ guile
GNU Guile 3.0.9
Copyright (C) 1995-2023 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> (setlocale LC_ALL "en_US.utf8")
ice-9/boot-9.scm:1685:16: In procedure raise-exception:
In procedure setlocale: Invalid argument

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
scheme@(guile-user) [1]>

This seems not a guile issue but a pure Debian one, the guix version
works for instance. Note that this does not affect stable.

#1078681#10
Date:
2024-08-14 08:56:55 UTC
From:
To:
Bah, sorry for the noise, that's due to missing generated locales, which
needs to be considered in code.

#1078681#15
Date:
2024-08-14 19:34:46 UTC
From:
To:
"Francesco P. Lovergine" <frankie@debian.org> writes:

Hmm.  Perhaps check (if you haven't already) that the locales package is
installed and that locale is enabled (e.g. via dpkg-reconfigure
locales).  Oh, or actually, "locale -a" may be a sufficient check.

Thanks

#1078681#20
Date:
2024-08-14 20:13:00 UTC
From:
To:
Yep, I had to generate the required locale via dpkg-reconfigure, which in general
is a bit a pain because some modules have tests done with specific
locales which fail, that was the origin of the report... Probably should be
considered a non-issue.

#1078681#25
Date:
2024-08-16 09:51:47 UTC
From:
To:
Ok, I *think* this issue could be converted in an upstream one, about
documentation. Note that make-locale reports:

"A system-error exception (see How to Handle Errors) is raised by
make-locale when locale-name does not match any of the locales compiled
on the system. Note that on non-GNU systems, this error may be raised
later, when the locale object is actually used."

while setlocale section does not report anything about that.