retitle 759733 perl: t/run/locale fails with bad LC_* settings
severity 759733 minor
thanks

On Fri, Aug 29, 2014 at 12:10:32PM -0700, gregor herrmann wrote:
> Source: perl
> Version: 5.20.0-4
> Severity: normal

> t/run/locale .................................................. # Failed test 
> 2 - LC_NUMERIC without environment nor setlocale() has no effect in any 
> locale at ./test.pl line 982
> #      got "perl: warning: Setting locale failed.\nperl: warning: Please 
> check that your locale settings:\n\tLANGUAGE = (unset),\n\tLC_ALL = 
> \"\",\n\tLC_CTYPE = \"de_AT.utf8\",\n\tLANG = \"\"\n    are supported and 
> installed on your system.\nperl: warning: Falling back to the standard locale 
> (\"C\")."
> # expected ""

Thanks for the report.

So, I think what happens is that the shell where you're building
has a "bad" LC_CTYPE setting (bad because the locale is not available),
but it's normally masked by a "good" LC_ALL setting (probably "C").

The above test explicitly unsets LC_ALL:
    local $ENV{LC_NUMERIC}; # So not taken as a default
    local $ENV{LC_ALL}; # so it never overrides LC_NUMERIC
    local $ENV{LANG};   # So not taken as a default

so the lack of the requested locale becomes a problem, perl warns
accordingly, and the test interprets this as a failure.

While it would be nice if the code could handle this and perhaps skip
tests as necessary, it is sort of a user error. Don't do that, then
(at least for now :) 

I'm downgrading the severity, hope that's OK with you.
-- 
Niko Tyni   [email protected]


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to