Re: [PULL] svn pathnameencoding for git svn dcommit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]