Skip to content

Commit

Permalink
ci: work around a problem with HTTP/2 vs libcurl v8.10.0
Browse files Browse the repository at this point in the history
As reported in https://lore.kernel.org/git/[email protected]/,
libcurl v8.10.0 had a regression that was picked up by Git's t5559.30
"large fetch-pack requests can be sent using chunked encoding".

This bug was fixed in libcurl v8.10.1.

Sadly, the macos-13 runner image was updated in the brief window between
these two libcurl versions, breaking each and every CI build, as
reported at #5159.

This would usually not matter, we would just ignore the failing CI
builds until the macos-13 runner image is rebuilt in a couple of days,
and then the CI builds would succeed again.

However.

As has become the custom, a surprise Git version was released, and now
that Git for Windows wants to follow suit, since Git for Windows has
this custom of trying to never release a version with a failing CI
build, we _must_ work around it.

This patch implements this work-around, basically for the sake of Git
for Windows v2.46.2's CI build.

Signed-off-by: Johannes Schindelin <[email protected]>
  • Loading branch information
dscho authored and Git for Windows Build Agent committed Oct 25, 2024
1 parent 003336d commit d78e9ee
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion t/t5551-http-fetch-smart.sh
Original file line number Diff line number Diff line change
Expand Up @@ -404,7 +404,15 @@ test_expect_success CMDLINE_LIMIT \
)
'

test_expect_success 'large fetch-pack requests can be sent using chunked encoding' '
# This is a temporary work-around for libcurl v8.10.0 on the macos-* runners;
# see https://github.com/git-for-windows/git/issues/5159 for full details
test_lazy_prereq UNBROKEN_HTTP2 '
test "$HTTP_PROTO" = HTTP/2 &&
test -z "$(brew info -q curl 2>/dev/null |
sed -n "/^Installed/{N;s/.*8\\.10\\.0.*/BROKEN HTTP2/p;}")"
'

test_expect_success UNBROKEN_HTTP2 'large fetch-pack requests can be sent using chunked encoding' '
GIT_TRACE_CURL=true git -c http.postbuffer=65536 \
clone --bare "$HTTPD_URL/smart/repo.git" split.git 2>err &&
{
Expand Down

0 comments on commit d78e9ee

Please sign in to comment.