On Mon, Dec 18, 2017 at 11:04 PM, SZEDER Gábor <[email protected]> wrote:
> $ sudo apt-get install language-pack-is
> [...]
> $ ./t0204-gettext-reencode-sanity.sh
> # lib-gettext: Found 'is_IS.utf8' as an is_IS UTF-8 locale
> # lib-gettext: No is_IS ISO-8859-1 locale available
> ok 1 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Icelandic
> ok 2 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Runes
> ok 3 # skip gettext: Emitting ISO-8859-1 from our UTF-8 *.mo files /
> Icelandic (missing GETTEXT_ISO_LOCALE)
> ok 4 # skip gettext: impossible ISO-8859-1 output (missing
> GETTEXT_ISO_LOCALE)
> ok 5 - gettext: Fetching a UTF-8 msgid -> UTF-8
> ok 6 # skip gettext: Fetching a UTF-8 msgid -> ISO-8859-1 (missing
> GETTEXT_ISO_LOCALE)
> ok 7 - gettext.c: git init UTF-8 -> UTF-8
> ok 8 # skip gettext.c: git init UTF-8 -> ISO-8859-1 (missing
> GETTEXT_ISO_LOCALE)
> # passed all 8 test(s)
> 1..8
>
> I'd expect something like this in the Travis CI build jobs as well, but
> prove hides the detailed output.
>
> It seems we would loose coverage with this patch, so it should be
> dropped.
Not so fast!
Notice how there are still a few tests skipped above, because of missing
GETTEXT_ISO_LOCALE.
# grep is_IS /etc/locale.gen
# is_IS ISO-8859-1
# is_IS.UTF-8 UTF-8
# sed -i -e 's/^# is_IS/is_IS/' /etc/locale.gen
# locale-gen
Generating locales (this might take a while)...
[...]
is_IS.ISO-8859-1... done
is_IS.UTF-8... done
Generation complete.
Both UTF-8 and ISO Icelandic locales are generated, good.
$ $ ./t0204-gettext-reencode-sanity.sh
# lib-gettext: Found 'is_IS.utf8' as an is_IS UTF-8 locale
# lib-gettext: Found 'is_IS.iso88591' as an is_IS ISO-8859-1 locale
ok 1 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Icelandic
ok 2 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Runes
ok 3 - gettext: Emitting ISO-8859-1 from our UTF-8 *.mo files / Icelandic
ok 4 - gettext: impossible ISO-8859-1 output
ok 5 - gettext: Fetching a UTF-8 msgid -> UTF-8
ok 6 - gettext: Fetching a UTF-8 msgid -> ISO-8859-1
ok 7 - gettext.c: git init UTF-8 -> UTF-8
ok 8 - gettext.c: git init UTF-8 -> ISO-8859-1
# passed all 8 test(s)
And now all those tests are run, great!
But look what happens without the language pack:
# dpkg -P language-pack-is{,-base}
[...]
# grep is_IS /etc/locale.gen
is_IS ISO-8859-1
is_IS.UTF-8 UTF-8
buzz ~# locale-gen
Generating locales (this might take a while)...
[...]
is_IS.ISO-8859-1... done
is_IS.UTF-8... done
Generation complete.
Still both Icelandic locales are generated.
$ ./t0204-gettext-reencode-sanity.sh
# lib-gettext: Found 'is_IS.utf8' as an is_IS UTF-8 locale
# lib-gettext: Found 'is_IS.iso88591' as an is_IS ISO-8859-1 locale
ok 1 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Icelandic
ok 2 - gettext: Emitting UTF-8 from our UTF-8 *.mo files / Runes
ok 3 - gettext: Emitting ISO-8859-1 from our UTF-8 *.mo files / Icelandic
ok 4 - gettext: impossible ISO-8859-1 output
ok 5 - gettext: Fetching a UTF-8 msgid -> UTF-8
ok 6 - gettext: Fetching a UTF-8 msgid -> ISO-8859-1
ok 7 - gettext.c: git init UTF-8 -> UTF-8
ok 8 - gettext.c: git init UTF-8 -> ISO-8859-1
# passed all 8 test(s)
And still all those tests are run!
I did run all test scripts sourcing 'lib-gettext.sh' with both locales
generated and didn't see any errors, independently from whether the
language pack was installed or not. I still have a few skipped tests
(because of no GETTEXT_POISON and something PCRE-related), but those,
too, are independent from the language pack.
So it seems that we don't need 'language-pack-is' after all; what we do
need are the ISO and UTF-8 Icelandic locales. Not sure we can modify
/etc/locale.gen without sudo in the Travis CI build job, though, and
I've run out of time to try.
Gábor