diff mbox series

Re* [PATCH v4 1/2] transport: die if server options are unsupported

Message ID xmqqlg0bvppc.fsf_-_@gitster-ct.c.googlers.com (mailing list archive)
State New, archived
Headers show
Series Re* [PATCH v4 1/2] transport: die if server options are unsupported | expand

Commit Message

Junio C Hamano April 15, 2019, 4:48 a.m. UTC
SZEDER Gábor <szeder.dev@gmail.com> writes:

> ... therefore these should be 'test_i18ngrep'.  This applies to the
> other tests in this patch series as well.
> ...

Hmph.  That would mean the following is needed, but I suspect that
6cdccfce ("i18n: make GETTEXT_POISON a runtime option", 2018-11-08)
is somewhat broken (see the bottom for a suggested fix).

 t/t5702-protocol-v2.sh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Comments

Junio C Hamano April 15, 2019, 4:54 a.m. UTC | #1
Junio C Hamano <gitster@pobox.com> writes:

> SZEDER Gábor <szeder.dev@gmail.com> writes:
>
>> ... therefore these should be 'test_i18ngrep'.  This applies to the
>> other tests in this patch series as well.
>> ...
>
> Hmph.  That would mean the following is needed,...

And a corresponding fix for step 2/2 would look like this.

 t/t5702-protocol-v2.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/t/t5702-protocol-v2.sh b/t/t5702-protocol-v2.sh
index 324bdf5715..9b048f6c8b 100755
--- a/t/t5702-protocol-v2.sh
+++ b/t/t5702-protocol-v2.sh
@@ -288,8 +288,8 @@ test_expect_success 'warn if using server-option with clone with legacy protocol
 		clone --server-option=hello --server-option=world \
 		"file://$(pwd)/file_parent" myclone 2>err &&
 
-	grep "see protocol.version in" err &&
-	grep "server options require protocol version 2 or later" err
+	test_i18ngrep "see protocol.version in" err &&
+	test_i18ngrep "server options require protocol version 2 or later" err
 '
 
 test_expect_success 'upload-pack respects config using protocol v2' '
SZEDER Gábor April 15, 2019, 9:43 a.m. UTC | #2
On Mon, Apr 15, 2019 at 01:48:31PM +0900, Junio C Hamano wrote:
> SZEDER Gábor <szeder.dev@gmail.com> writes:
> 
> > ... therefore these should be 'test_i18ngrep'.  This applies to the
> > other tests in this patch series as well.
> > ...
> 
> Hmph.  That would mean the following is needed, but I suspect that
> 6cdccfce ("i18n: make GETTEXT_POISON a runtime option", 2018-11-08)
> is somewhat broken (see the bottom for a suggested fix).

Oh, wow, indeed.

I still notice these [1], because I prefer to run the GETTEXT_POISION
CI jobs in my half-baked "scrambled" mode [2], but haven't yet got
around to deal with the conflicts between those patches and
'ab/dynamic-gettext-poison', so my script prepping in-flight topics
for my CI builds still starts with reverting
'ab/dynamic-gettext-poison', restoring that missing 'export'.


[1] https://travis-ci.org/szeder/git-cooking-topics-for-travis-ci/jobs/519163854#L2724

[2] https://public-inbox.org/git/20181022202241.18629-1-szeder.dev@gmail.com/

> -- >8 --
> Subject: [PATCH] gettext tests: export the restored GIT_TEST_GETTEXT_POISON
> 
> 6cdccfce ("i18n: make GETTEXT_POISON a runtime option", 2018-11-08)
> made the gettext-poison test a runtime option (which was a good
> move) and adjusted the test framework so that Git commands we run as
> part of the framework, as opposed to the ones that are part of the
> test proper, are not affected by the setting.  The original value
> for the GIT_TEST_GETTEXT_POISON environment variable is saved away
> in another variable and gets unset, and then later the saved value
> is restored to the environment variable.
> 
> But the code forgot to export the variable again, which is necessary
> to restore the "export" bit that was lost when the variable was unset.
> 
> Signed-off-by: Junio C Hamano <gitster@pobox.com>
> ---
>  t/test-lib.sh | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/t/test-lib.sh b/t/test-lib.sh
> index 8665b0a9b6..078efda9da 100644
> --- a/t/test-lib.sh
> +++ b/t/test-lib.sh
> @@ -1394,6 +1394,7 @@ test -z "$NO_GETTEXT" && test_set_prereq GETTEXT
>  if test -n "$GIT_TEST_GETTEXT_POISON_ORIG"
>  then
>  	GIT_TEST_GETTEXT_POISON=$GIT_TEST_GETTEXT_POISON_ORIG
> +	export GIT_TEST_GETTEXT_POISON
>  	unset GIT_TEST_GETTEXT_POISON_ORIG
>  fi

Makes sense.
diff mbox series

Patch

diff --git a/t/t5702-protocol-v2.sh b/t/t5702-protocol-v2.sh
index 1e8357a4c7..f8912211e0 100755
--- a/t/t5702-protocol-v2.sh
+++ b/t/t5702-protocol-v2.sh
@@ -186,8 +186,8 @@  test_expect_success 'warn if using server-option with ls-remote with legacy prot
 	test_must_fail env GIT_TEST_PROTOCOL_VERSION=0 git -c protocol.version=0 \
 		ls-remote -o hello -o world "file://$(pwd)/file_parent" master 2>err &&
 
-	grep "see protocol.version in" err &&
-	grep "server options require protocol version 2 or later" err
+	test_i18ngrep "see protocol.version in" err &&
+	test_i18ngrep "server options require protocol version 2 or later" err
 '
 
 test_expect_success 'clone with file:// using protocol v2' '
@@ -266,8 +266,8 @@  test_expect_success 'warn if using server-option with fetch with legacy protocol
 	test_must_fail env GIT_TEST_PROTOCOL_VERSION=0 git -C temp_child -c protocol.version=0 \
 		fetch -o hello -o world "file://$(pwd)/file_parent" master 2>err &&
 
-	grep "see protocol.version in" err &&
-	grep "server options require protocol version 2 or later" err
+	test_i18ngrep "see protocol.version in" err &&
+	test_i18ngrep "server options require protocol version 2 or later" err
 '
 
 test_expect_success 'upload-pack respects config using protocol v2' '


-- >8 --
Subject: [PATCH] gettext tests: export the restored GIT_TEST_GETTEXT_POISON

6cdccfce ("i18n: make GETTEXT_POISON a runtime option", 2018-11-08)
made the gettext-poison test a runtime option (which was a good
move) and adjusted the test framework so that Git commands we run as
part of the framework, as opposed to the ones that are part of the
test proper, are not affected by the setting.  The original value
for the GIT_TEST_GETTEXT_POISON environment variable is saved away
in another variable and gets unset, and then later the saved value
is restored to the environment variable.

But the code forgot to export the variable again, which is necessary
to restore the "export" bit that was lost when the variable was unset.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 t/test-lib.sh | 1 +
 1 file changed, 1 insertion(+)

diff --git a/t/test-lib.sh b/t/test-lib.sh
index 8665b0a9b6..078efda9da 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -1394,6 +1394,7 @@  test -z "$NO_GETTEXT" && test_set_prereq GETTEXT
 if test -n "$GIT_TEST_GETTEXT_POISON_ORIG"
 then
 	GIT_TEST_GETTEXT_POISON=$GIT_TEST_GETTEXT_POISON_ORIG
+	export GIT_TEST_GETTEXT_POISON
 	unset GIT_TEST_GETTEXT_POISON_ORIG
 fi