On 2016/02/21 8:37 +0900, Eric Wong wrote: > Kazutoshi Satoda <k_satoda@xxxxxxxxxxxxx> wrote: ... >> Setting LC_ALL=C.UTF-8 in the test 11-12 made them pass on Cygwin. >> Same change made the previous version also pass. Please find the patch >> in the attached output of git format-patch. > > Thanks. However, I also wonder what happens on machines without > "C.UTF-8" support (are there still any?). > >> Could you please test with this on non-Cygwin environment? > > Works for me, at least. I've squashed your changes into the two > patches already queued up. I needed to split the > "export LC_ALL=C.UTF-8" statement into > "LC_ALL=C.UTF-8 && export LC_ALL" for portability. Thank you. >> If it made no harm, please tell me what should I do to proceed this patch. >> Will you (Eric) please make further integration? Shall I make another >> series (v2) of patches? > > I've pushed out a new branch with your LC_ALL changes squashed > in. However I'm unsure if there's any new portability problems > with LC_ALL=C.UTF-8... > > Junio or anyone else: thoughts? The test passed on my environment. I've searched use of LC_ALL values other than "C". It seems be the best to move the variable a_utf8_locale in t9129 to lib-git-svn.sh and use it also in t9115. t/Makefile:83 > $(MAKE) $(TSVN) GIT_SVN_NO_OPTIMIZE_COMMITS=0 LC_ALL=en_US.UTF-8 Here, "en_US.UTF-8" is hard-coded. I think this is at least more problematic than hard-coding "C.UTF-8". Beside hard-coding, does this take effect while test-lib.sh does LC_ALL=C ? t/t9129-git-svn-i18n-commitencoding.sh:17 > a_utf8_locale=$(locale -a | sed -n '/\.[uU][tT][fF]-*8$/{ > p > q > }') > > if test -n "$a_utf8_locale" > then > test_set_prereq UTF8 > else > say "# UTF-8 locale not available, some tests are skipped" > fi Here, a UTF-8 locale is took from "locale -a", and the test is skipped if not found. This gives "a_utf8_locale=C.utf8" on my Cygwin environment. There was a record that says the difference of ".utf8" and ".UTF-8" caused a failure. https://git.kernel.org/cgit/git/git.git/commit/?id=2de03ebe0635c93e182c3367140f999e79bdadcd t/lib-gettext.sh:17 > # is_IS.UTF-8 on Solaris and FreeBSD, is_IS.utf8 on Debian > is_IS_locale=$(locale -a 2>/dev/null | > sed -n '/^is_IS\.[uU][tT][fF]-*8$/{ > p > q > }') ... > if test -n "$is_IS_locale" && > test $GIT_INTERNAL_GETTEXT_SH_SCHEME != "fallthrough" > then > # Some of the tests need the reference Icelandic locale > test_set_prereq GETTEXT_LOCALE ... > else > say "# lib-gettext: No is_IS UTF-8 locale available" > fi (the same logic is used for is_IS.ISO8859-1.) Here, a UTF-8 locale with hard coded "is_IS" is took from "locale -a", and the test is skipped if not found. This gives "is_IS_locale=is_IS.utf8.utf8" on my Cygwin environment. -- k_satoda -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html