Re: [BUG] test suite broken with GETTEXT_POISON=YesPlease
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2017-04-21 18:29:25
On Fri, Apr 21, 2017 at 4:47 PM, Michael J Gruber [off-list ref] wrote:
Ævar Arnfjörð Bjarmason venit, vidit, dixit 20.04.2017 23:58:quoted
As a refresh of everyone's memory (because mine needed it). This is a feature I added back in 2011 when the i18n support was initially added. There was concern at the time that we would inadvertently mark plumbing messages for translation, particularly something in a shared code path, and this was a way to hopefully smoke out those issues with the test suite. However compiling with it breaks a couple of dozen tests, I stopped digging when I saw some broke back in 2014. What should be done about this? I think if we're going to keep them they need to be run regularly by something like Travis (Lars CC'd), however empirical evidence suggests that not running them is just fine too, so should we just remove support for this test mode? I don't care, but I can come up with the patch either way, but would only be motivated to write the one-time fix for it if some CI system is actually running them regularly, otherwise they'll just be subject to bitrotting again.I use that switch when I change something that involves l10n, but usually I run specific tests only. To be honest: I have to make sure not to get confused by (nor forget one of) the build flag GETTEXT_POISON and the environment variable GIT_GETTEXT_POISON. I'm not sure I always tested what I meant to test...
For any of the built-in tests, you just need to compile git with GETTEXT_POISON=YesPlease, the env var is set by test-lib.sh for you, you only need to set GIT_GETTEXT_POISON=1 if you're ad-hoc running some git command yourself, e.g.: $ ./git status On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working tree clean $ GIT_GETTEXT_POISON=1 ./git status # GETTEXT POISON #master # GETTEXT POISON #