From: Cyril Hrubis <chrubis@suse.cz>
To: Petr Vorel <pvorel@suse.cz>
Cc: Yan Vugenfirer <yan@daynix.com>,
Yuri Benditovich <yuri.benditovich@daynix.com>,
ltp@lists.linux.it
Subject: Re: [LTP] [PATCH v3] tst_test.sh: Normalize the locale
Date: Fri, 21 Oct 2022 14:42:50 +0200 [thread overview]
Message-ID: <Y1KTyn/9pv5lvbhj@yuki> (raw)
In-Reply-To: <Y1KBzfdqbibHmAa3@pevik>
Hi!
> > > > diff --git a/testcases/lib/tst_test.sh b/testcases/lib/tst_test.sh
> > > > index 28b7d12ba..5ebbe1d25 100644
> > > > --- a/testcases/lib/tst_test.sh
> > > > +++ b/testcases/lib/tst_test.sh
> > > > @@ -831,3 +831,5 @@ if [ -z "$TST_NO_DEFAULT_RUN" ]; then
> > > > fi
> > > > fi
> > > > fi
> > > > +
> > > > +export LC_ALL=C
>
> > > Thinking about it twice this might have impact on other tests.
> > > Li, Cyril, any idea about it?
>
> > Actually I think that we should have put this into the tst_test.sh from
> > the start. We do have this as a workaround in du01.sh and telnet01.sh
> > already.
>
> > The plus side is that all possible bugreports from users will have all
> > messages in english which would make debugging easier.
>
> Thanks for acking this.
>
> I suppose Akihiko is correct that we don't have to put it via setlocale()
> in C API, right?
I do not think so. It's not entirely clear from documentation how this
is supposed to work. However it seems that in bash the effect is
immediate, if you export new locale and then type nonexisting command
name to bash prompt to get a message from bash it's in the new locale.
So either setlocale() is not needed or bash calls it if it detects that
one of the LC_ variables has been changed and calls it.
For dash it does not seem that it has been translated at all, it
produces messages in english either way, so we do not have to care.
And all localized programs that we start from the shell after the export
do call setlocale() at the start of the main(). That is actually
required to enable locale support to begin with.
> Also I guess you prefer this version (LC_ALL=C). I suggested unset LC_ALL;
> export LC_COLLATE=C; export LC_NUMERIC=C as it's used in kernel's Makefile (they
> have more there, but IMHO only this is relevant for us).
I do not think that LC_COLLATE and LC_NUMERIC is enough, we want actuall
messages in english. If we do not want to use LC_ALL, which is probably
the easiest we should use at least LC_MESSAGES and LC_NUMERIC but
possibly LC_TIME too since date and time can be part of the messages we
do parse as well.
--
Cyril Hrubis
chrubis@suse.cz
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2022-10-21 12:41 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-20 13:37 [LTP] [PATCH v3] tst_test.sh: Normalize the locale Akihiko Odaki
2022-10-20 17:30 ` Petr Vorel
2022-10-20 19:09 ` Akihiko Odaki
2022-10-21 9:11 ` Cyril Hrubis
2022-10-21 11:26 ` Petr Vorel
2022-10-21 12:42 ` Cyril Hrubis [this message]
2022-10-21 13:11 ` Petr Vorel
2022-10-21 13:24 ` Cyril Hrubis
2022-11-07 10:27 ` Richard Palethorpe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Y1KTyn/9pv5lvbhj@yuki \
--to=chrubis@suse.cz \
--cc=ltp@lists.linux.it \
--cc=pvorel@suse.cz \
--cc=yan@daynix.com \
--cc=yuri.benditovich@daynix.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox