Michael J Gruber <git@xxxxxxxxx> writes: > Ævar Arnfjörð Bjarmason venit, vidit, dixit 20.04.2017 23:58: >> 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... To be quite honest, I have always felt that we are just as likely inadvertently use test_i18ncmp when we should use test_cmp (and vice versa) as we would mark plumbing messages with _() by mistake with this approach, and even with constant monitoring by something like Travis, GETTEXT_POISON may be able to catch mistakes only some of the time (i.e. when we do not make mistakes in writing our tests). Without constant monitoring, I agree that the mechanism does not work well to catch our mistakes.