git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] t/lib-httpd: pass LANG to Apache

From
Jeff King <peff@peff.net>
Date
Oct 5, 2022, 21:20 UTC
Message-ID
<Yz31Lv+97z9p/0TK@coredump.intra.peff.net>
In-Reply-To
<xmqqtu4inj6q.fsf@gitster.g>
On Wed, Oct 05, 2022 at 12:50:53PM -0700, Junio C Hamano wrote:
Show 20 quoted lines
> René Scharfe <l.s.r@web.de> writes:
> 
> > t5411 starts a web server with no explicit language setting, so it uses
> > the system default.  Ten of its tests expect it to return error messages
> > containing the prefix "fatal: ", emitted by die().  This prefix can be
> > localized since a1fd2cf8cd (i18n: mark message helpers prefix for
> > translation, 2022-06-21), however.  As a result these ten tests break
> > for me on a system with LANG="de_DE.UTF-8" because the web server sends
> > localized messages with "Schwerwiegend: " instead of "fatal: ".
> >
> > Fix these tests by passing LANG to the web server, which is set to "C"
> > by t/test-lib.sh, to get untranslated messages on both sides.
> 
> It is a good thing to do, but we seem to be extra conservative and
> set both LC_ALL=C LANG=C (presumably by following the habit acquired
> back when locale support were being introduced to various systems
> with different degree, which way predates Git itself) and export
> them in the main part of the test framework.
> 
> Shouldn't we be doing the same here?

I think setting both probably is overkill. But if we are going to set one, the important one is LC_ALL. It overrides specific LC_* variables, which in turn override LANG. So just setting LANG would get confused if LC_MESSAGES were set, for example.

That said, there probably is no downside to passing through both, so we might as well do so.

Other than that, the patch is obviously the right thing to be doing. I'm surprised it took this long for it to be a problem. ;)

-Peff
Previous: Junio C HamanoNext: René Scharfe
Message 3 of 5 in “t/lib-httpd: pass LANG to Apache”
  1. t/lib-httpd: pass LANG to ApacheRené Scharfe, Oct 4, 2022
  2. Junio C HamanoOct 5, 2022
  3. Jeff KingOct 5, 2022
  4. t/lib-httpd: pass LANG and LC_ALL to ApacheRené Scharfe, Oct 6, 2022
  5. Junio C HamanoOct 6, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.