* [PATCH 0/1] For v2.37.0: fix tests breaking with NO_CURL=Y @ 2022-06-15 10:36 Ævar Arnfjörð Bjarmason 2022-06-15 10:36 ` [PATCH 1/1] tests: add LIBCURL prerequisite to tests needing libcurl Ævar Arnfjörð Bjarmason 0 siblings, 1 reply; 5+ messages in thread From: Ævar Arnfjörð Bjarmason @ 2022-06-15 10:36 UTC (permalink / raw) To: git; +Cc: Junio C Hamano, Derrick Stolee, Ævar Arnfjörð Bjarmason The fetch.credentialsInUrl inadvertently broke with NO_CURL=Y builds, which I'm e.g. spotting in my GCC farm testing. This fixes it. Ævar Arnfjörð Bjarmason (1): tests: add LIBCURL prerequisite to tests needing libcurl t/lib-httpd.sh | 2 +- t/t5516-fetch-push.sh | 4 ++-- t/t5601-clone.sh | 4 ++-- t/test-lib.sh | 1 + 4 files changed, 6 insertions(+), 5 deletions(-) -- 2.36.1.1239.gfba91521d90 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/1] tests: add LIBCURL prerequisite to tests needing libcurl 2022-06-15 10:36 [PATCH 0/1] For v2.37.0: fix tests breaking with NO_CURL=Y Ævar Arnfjörð Bjarmason @ 2022-06-15 10:36 ` Ævar Arnfjörð Bjarmason 2022-06-15 18:29 ` Junio C Hamano 0 siblings, 1 reply; 5+ messages in thread From: Ævar Arnfjörð Bjarmason @ 2022-06-15 10:36 UTC (permalink / raw) To: git; +Cc: Junio C Hamano, Derrick Stolee, Ævar Arnfjörð Bjarmason Add and use a LIBCURL prerequisite for tests added in 6dcbdc0d661 (remote: create fetch.credentialsInUrl config, 2022-06-06). These tests would get as far as emitting a couple of the warnings we were testing for, but would then die as we had no "git-remote-https" program compiled. It would be more consistent with other prerequisites (e.g. PERL for NO_PERL) to name this "CURL", but since e9184b0789a (t5561: skip tests if curl is not available, 2018-04-03) we've had that prerequisite defined for checking of we have the curl(1) program. The existing "CURL" prerequisite is only used in one place, and we should probably name it "CURL_PROGRAM", then rename "LIBCURL" to "CURL" as a follow-up, but for now (pre-v2.37.0) let's aim for the most minimal fix possible. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail•com> --- t/lib-httpd.sh | 2 +- t/t5516-fetch-push.sh | 4 ++-- t/t5601-clone.sh | 4 ++-- t/test-lib.sh | 1 + 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh index 782891908d7..1f6b9b08d1d 100644 --- a/t/lib-httpd.sh +++ b/t/lib-httpd.sh @@ -29,7 +29,7 @@ # Copyright (c) 2008 Clemens Buchacher <drizzd@aon•at> # -if test -n "$NO_CURL" +if ! test_have_prereq LIBCURL then skip_all='skipping test, git built without http support' test_done diff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh index dedca106a7a..c1220b2ed35 100755 --- a/t/t5516-fetch-push.sh +++ b/t/t5516-fetch-push.sh @@ -1834,7 +1834,7 @@ test_expect_success 'refuse to push a hidden ref, and make sure do not pollute t test_dir_is_empty testrepo/.git/objects/pack ' -test_expect_success 'fetch warns or fails when using username:password' ' +test_expect_success LIBCURL 'fetch warns or fails when using username:password' ' message="URL '\''https://username:<redacted>@localhost/'\'' uses plaintext credentials" && test_must_fail git -c fetch.credentialsInUrl=allow fetch https://username:password@localhost 2>err && ! grep "$message" err && @@ -1853,7 +1853,7 @@ test_expect_success 'fetch warns or fails when using username:password' ' ' -test_expect_success 'push warns or fails when using username:password' ' +test_expect_success LIBCURL 'push warns or fails when using username:password' ' message="URL '\''https://username:<redacted>@localhost/'\'' uses plaintext credentials" && test_must_fail git -c fetch.credentialsInUrl=allow push https://username:password@localhost 2>err && ! grep "$message" err && diff --git a/t/t5601-clone.sh b/t/t5601-clone.sh index d2f046b4b92..eeed233362d 100755 --- a/t/t5601-clone.sh +++ b/t/t5601-clone.sh @@ -71,7 +71,7 @@ test_expect_success 'clone respects GIT_WORK_TREE' ' ' -test_expect_success 'clone warns or fails when using username:password' ' +test_expect_success LIBCURL 'clone warns or fails when using username:password' ' message="URL '\''https://username:<redacted>@localhost/'\'' uses plaintext credentials" && test_must_fail git -c fetch.credentialsInUrl=allow clone https://username:password@localhost attempt1 2>err && ! grep "$message" err && @@ -89,7 +89,7 @@ test_expect_success 'clone warns or fails when using username:password' ' test_line_count = 1 warnings ' -test_expect_success 'clone does not detect username:password when it is https://username@domain:port/' ' +test_expect_success LIBCURL 'clone does not detect username:password when it is https://username@domain:port/' ' test_must_fail git -c fetch.credentialsInUrl=warn clone https://username@localhost:8080 attempt3 2>err && ! grep "uses plaintext credentials" err ' diff --git a/t/test-lib.sh b/t/test-lib.sh index 736c6447ecf..02bc88c72b4 100644 --- a/t/test-lib.sh +++ b/t/test-lib.sh @@ -1572,6 +1572,7 @@ esac test_set_prereq REFFILES ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1 +test -z "$NO_CURL" && test_set_prereq LIBCURL test -z "$NO_PERL" && test_set_prereq PERL test -z "$NO_PTHREADS" && test_set_prereq PTHREADS test -z "$NO_PYTHON" && test_set_prereq PYTHON -- 2.36.1.1239.gfba91521d90 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] tests: add LIBCURL prerequisite to tests needing libcurl 2022-06-15 10:36 ` [PATCH 1/1] tests: add LIBCURL prerequisite to tests needing libcurl Ævar Arnfjörð Bjarmason @ 2022-06-15 18:29 ` Junio C Hamano 2022-06-15 20:28 ` Ævar Arnfjörð Bjarmason 0 siblings, 1 reply; 5+ messages in thread From: Junio C Hamano @ 2022-06-15 18:29 UTC (permalink / raw) To: Ævar Arnfjörð Bjarmason; +Cc: git, Derrick Stolee Ævar Arnfjörð Bjarmason <avarab@gmail•com> writes: > The existing "CURL" prerequisite is only used in one place, and we > should probably name it "CURL_PROGRAM", True. It probably wants to become a lazy prerequisite defined only in that program. > then rename "LIBCURL" to > "CURL" as a follow-up, but for now (pre-v2.37.0) let's aim for the > most minimal fix possible. OK. > Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail•com> > --- > t/lib-httpd.sh | 2 +- > t/t5516-fetch-push.sh | 4 ++-- > t/t5601-clone.sh | 4 ++-- > t/test-lib.sh | 1 + > 4 files changed, 6 insertions(+), 5 deletions(-) > > diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh > index 782891908d7..1f6b9b08d1d 100644 > --- a/t/lib-httpd.sh > +++ b/t/lib-httpd.sh > @@ -29,7 +29,7 @@ > # Copyright (c) 2008 Clemens Buchacher <drizzd@aon•at> > # > > -if test -n "$NO_CURL" > +if ! test_have_prereq LIBCURL > then > skip_all='skipping test, git built without http support' > test_done This is not strictly needed in "the most minimal fix possible", is it? Just checking. > diff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh > index dedca106a7a..c1220b2ed35 100755 > --- a/t/t5516-fetch-push.sh > +++ b/t/t5516-fetch-push.sh > @@ -1834,7 +1834,7 @@ test_expect_success 'refuse to push a hidden ref, and make sure do not pollute t > test_dir_is_empty testrepo/.git/objects/pack > ' > > -test_expect_success 'fetch warns or fails when using username:password' ' > +test_expect_success LIBCURL 'fetch warns or fails when using username:password' ' This _is_ needed. > -test_expect_success 'push warns or fails when using username:password' ' > +test_expect_success LIBCURL 'push warns or fails when using username:password' ' So is this. > -test_expect_success 'clone warns or fails when using username:password' ' > +test_expect_success LIBCURL 'clone warns or fails when using username:password' ' And this too. > -test_expect_success 'clone does not detect username:password when it is https://username@domain:port/' ' > +test_expect_success LIBCURL 'clone does not detect username:password when it is https://username@domain:port/' ' And this too. > diff --git a/t/test-lib.sh b/t/test-lib.sh > index 736c6447ecf..02bc88c72b4 100644 > --- a/t/test-lib.sh > +++ b/t/test-lib.sh > @@ -1572,6 +1572,7 @@ esac > test_set_prereq REFFILES > > ( COLUMNS=1 && test $COLUMNS = 1 ) && test_set_prereq COLUMNS_CAN_BE_1 > +test -z "$NO_CURL" && test_set_prereq LIBCURL And this, of course. > test -z "$NO_PERL" && test_set_prereq PERL > test -z "$NO_PTHREADS" && test_set_prereq PTHREADS > test -z "$NO_PYTHON" && test_set_prereq PYTHON ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] tests: add LIBCURL prerequisite to tests needing libcurl 2022-06-15 18:29 ` Junio C Hamano @ 2022-06-15 20:28 ` Ævar Arnfjörð Bjarmason 2022-06-15 21:08 ` Junio C Hamano 0 siblings, 1 reply; 5+ messages in thread From: Ævar Arnfjörð Bjarmason @ 2022-06-15 20:28 UTC (permalink / raw) To: Junio C Hamano; +Cc: git, Derrick Stolee On Wed, Jun 15 2022, Junio C Hamano wrote: > Ævar Arnfjörð Bjarmason <avarab@gmail•com> writes: > >> The existing "CURL" prerequisite is only used in one place, and we >> should probably name it "CURL_PROGRAM", > > True. It probably wants to become a lazy prerequisite defined only > in that program. Yes, I have that fix, but left it out for the "for v2.37.0" ... >> then rename "LIBCURL" to >> "CURL" as a follow-up, but for now (pre-v2.37.0) let's aim for the >> most minimal fix possible. > > OK. > >> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail•com> >> --- >> t/lib-httpd.sh | 2 +- >> t/t5516-fetch-push.sh | 4 ++-- >> t/t5601-clone.sh | 4 ++-- >> t/test-lib.sh | 1 + >> 4 files changed, 6 insertions(+), 5 deletions(-) >> >> diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh >> index 782891908d7..1f6b9b08d1d 100644 >> --- a/t/lib-httpd.sh >> +++ b/t/lib-httpd.sh >> @@ -29,7 +29,7 @@ >> # Copyright (c) 2008 Clemens Buchacher <drizzd@aon•at> >> # >> >> -if test -n "$NO_CURL" >> +if ! test_have_prereq LIBCURL >> then >> skip_all='skipping test, git built without http support' >> test_done > > This is not strictly needed in "the most minimal fix possible", is > it? Just checking. I figured if I was adding a $NO_CURL prereq I might as well change the only existing use of $NO_CURL to use it, which also assures the reader that our test suite is getting this from somewhere already. But I'll drop this in a re-roll. ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] tests: add LIBCURL prerequisite to tests needing libcurl 2022-06-15 20:28 ` Ævar Arnfjörð Bjarmason @ 2022-06-15 21:08 ` Junio C Hamano 0 siblings, 0 replies; 5+ messages in thread From: Junio C Hamano @ 2022-06-15 21:08 UTC (permalink / raw) To: Ævar Arnfjörð Bjarmason; +Cc: git, Derrick Stolee Ævar Arnfjörð Bjarmason <avarab@gmail•com> writes: >>> -if test -n "$NO_CURL" >>> +if ! test_have_prereq LIBCURL >>> then >>> skip_all='skipping test, git built without http support' >>> test_done >> >> This is not strictly needed in "the most minimal fix possible", is >> it? Just checking. > > I figured if I was adding a $NO_CURL prereq I might as well change the > only existing use of $NO_CURL to use it, which also assures the reader > that our test suite is getting this from somewhere already. > > But I'll drop this in a re-roll. No need. It already is at the tip of 'master' applied directly. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-06-15 21:08 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-06-15 10:36 [PATCH 0/1] For v2.37.0: fix tests breaking with NO_CURL=Y Ævar Arnfjörð Bjarmason 2022-06-15 10:36 ` [PATCH 1/1] tests: add LIBCURL prerequisite to tests needing libcurl Ævar Arnfjörð Bjarmason 2022-06-15 18:29 ` Junio C Hamano 2022-06-15 20:28 ` Ævar Arnfjörð Bjarmason 2022-06-15 21:08 ` Junio C Hamano
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox