Even though the tests in Kaem/test.sh are prefixed with LANG=C, other variables such as LC_ALL can override the effective locale.
The test suite for Kaem/test/test14 fails when LC_ALL=C.
18:53 < vagrantc> LANG=en_US.UTF-8 ./bin/kaem -f "Kaem/test/test14/kaem.test"
18:53 < vagrantc> hiprintf: warning: ignoring excess arguments, starting with ‘’
18:54 < vagrantc> LANG=C ./bin/kaem -f "Kaem/test/test14/kaem.test"
18:54 < vagrantc> hiprintf: warning: ignoring excess arguments, starting with ''
18:54 < vagrantc> now for a magic trick, since they're called with LANG=C
18:54 < vagrantc> LC_ALL=en_US.UTF-8 LANG=C ./bin/kaem -f "Kaem/test/test14/kaem.test"
18:54 < vagrantc> hiprintf: warning: ignoring excess arguments, starting with ‘’
I'm not sure what the best fix is at the moment; maybe prefix the tests with LC_ALL=C and update the test suite answers to use the checksum for the C locale variant.
Alternately, pick a widely used UTF-8 locale (e.g. en_US.UTF-8), and also prefix the test suite with LC_ALL=en_US.UTF-8. It would be nicer to use C.UTF-8, but this is not supported in upstream glibc, and various distros that support it are not 100% compatible with each other.
For the moment, I think I will "export LC_ALL=C.UTF-8" for Debian package builds, as it seems to fix the issue for 1.1.0 for the moment.
The text was updated successfully, but these errors were encountered:
I'm not sure if there is a specific LANGUAGE value that would be widely available (such as LANG=C and LC_ALL=C) ... maybe unsetting LANGUAGE entirely would work.
Even though the tests in Kaem/test.sh are prefixed with LANG=C, other variables such as LC_ALL can override the effective locale.
The test suite for Kaem/test/test14 fails when LC_ALL=C.
18:53 < vagrantc> LANG=en_US.UTF-8 ./bin/kaem -f "Kaem/test/test14/kaem.test"
18:53 < vagrantc> hiprintf: warning: ignoring excess arguments, starting with ‘’
18:54 < vagrantc> LANG=C ./bin/kaem -f "Kaem/test/test14/kaem.test"
18:54 < vagrantc> hiprintf: warning: ignoring excess arguments, starting with ''
18:54 < vagrantc> now for a magic trick, since they're called with LANG=C
18:54 < vagrantc> LC_ALL=en_US.UTF-8 LANG=C ./bin/kaem -f "Kaem/test/test14/kaem.test"
18:54 < vagrantc> hiprintf: warning: ignoring excess arguments, starting with ‘’
I'm not sure what the best fix is at the moment; maybe prefix the tests with LC_ALL=C and update the test suite answers to use the checksum for the C locale variant.
Alternately, pick a widely used UTF-8 locale (e.g. en_US.UTF-8), and also prefix the test suite with LC_ALL=en_US.UTF-8. It would be nicer to use C.UTF-8, but this is not supported in upstream glibc, and various distros that support it are not 100% compatible with each other.
For the moment, I think I will "export LC_ALL=C.UTF-8" for Debian package builds, as it seems to fix the issue for 1.1.0 for the moment.
The text was updated successfully, but these errors were encountered: