quiche: bump cloudflare/quiche to v0.29.0, update pytest workaround

Also:
- drop no longer necessary quiche build workaround.
- update build for boringssl's new location (since v0.29.0, it's no
  longer vendored) within the quiche tree.
- move boringssl install dir out of quiche tree, and shorten it.

Ref: https://github.com/cloudflare/quiche/issues/2277
Ref: https://github.com/cloudflare/quiche/pull/2278
Ref: #21620

Closes #21730
This commit is contained in:
Viktor Szakats 2026-05-23 11:05:27 +02:00
parent dc8a87fc74
commit 252b82f693
No known key found for this signature in database
2 changed files with 11 additions and 13 deletions

View file

@ -52,7 +52,7 @@ env:
OPENSSL_PREV_VERSION: 3.6.2
OPENSSL_PREV_SHA256: aaf51a1fe064384f811daeaeb4ec4dce7340ec8bd893027eee676af31e83a04f
# renovate: datasource=github-tags depName=cloudflare/quiche versioning=semver registryUrl=https://github.com
QUICHE_VERSION: 0.24.7
QUICHE_VERSION: 0.29.0
# renovate: datasource=github-tags depName=wolfSSL/wolfssl versioning=semver extractVersion=^v?(?<version>.+)-stable$ registryUrl=https://github.com
WOLFSSL_VERSION: 5.9.1
# renovate: datasource=github-tags depName=ngtcp2/nghttp3 versioning=semver registryUrl=https://github.com
@ -520,7 +520,7 @@ jobs:
LDFLAGS: -Wl,-rpath,/home/runner/quiche/target/release
PKG_CONFIG_PATH: /home/runner/nghttp2/build/lib/pkgconfig
configure: >-
--with-openssl=/home/runner/quiche/quiche/deps/boringssl/src
--with-openssl=/home/runner/quiche-boringssl
--with-quiche=/home/runner/quiche/target/release
--with-ca-fallback
--enable-unity
@ -528,7 +528,7 @@ jobs:
- name: 'quiche'
PKG_CONFIG_PATH: /home/runner/nghttp2/build/lib/pkgconfig:/home/runner/quiche/target/release
generate: >-
-DOPENSSL_ROOT_DIR=/home/runner/quiche/quiche/deps/boringssl/src
-DOPENSSL_ROOT_DIR=/home/runner/quiche-boringssl
-DUSE_QUICHE=ON
-DCURL_CA_FALLBACK=ON
@ -726,19 +726,17 @@ jobs:
cd ~
git clone --quiet --depth 1 --branch "${QUICHE_VERSION}" --recursive https://github.com/cloudflare/quiche
cd quiche
#### Work-around https://github.com/curl/curl/issues/7927 #######
#### See https://github.com/alexcrichton/cmake-rs/issues/131 ####
sed -i -e 's/cmake = "0.1"/cmake = "=0.1.45"/' quiche/Cargo.toml
cargo build -v --package quiche --release --features ffi,pkg-config-meta,qlog --verbose
ln -s libquiche.so target/release/libquiche.so.0
mkdir -v quiche/deps/boringssl/src/lib
find target/release \( -name libcrypto.a -o -name libssl.a \) -exec ln -vnf -- '{}' quiche/deps/boringssl/src/lib \;
cd ..
mkdir -p quiche-boringssl/lib
find quiche/target/release \( -name libcrypto.a -o -name libssl.a \) -exec ln -vnf -- '{}' quiche-boringssl/lib \;
find quiche/target/release/build/boring-sys-*/out/boringssl/src -maxdepth 1 \( -name include \) -exec ln -vsf -- '../{}' quiche-boringssl \;
# include dir
# /home/runner/quiche/quiche/deps/boringssl/src/include
# /home/runner/quiche-boringssl/include
# lib dir
# /home/runner/quiche/quiche/deps/boringssl/src/lib
# /home/runner/quiche-boringssl/lib
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:

View file

@ -43,7 +43,7 @@ class TestErrors:
@pytest.mark.parametrize("proto", Env.http_protos())
def test_05_01_partial_1(self, env: Env, httpd, nghttpx, proto):
if proto == 'h3' and env.curl_uses_lib('quiche') and \
not env.curl_lib_version_at_least('quiche', '0.24.8'):
not env.curl_lib_version_at_least('quiche', '0.29.1'):
pytest.skip("quiche issue #2277 not fixed")
count = 1
curl = CurlClient(env=env)
@ -64,7 +64,7 @@ class TestErrors:
@pytest.mark.parametrize("proto", Env.http_mplx_protos())
def test_05_02_partial_20(self, env: Env, httpd, nghttpx, proto):
if proto == 'h3' and env.curl_uses_lib('quiche') and \
not env.curl_lib_version_at_least('quiche', '0.24.8'):
not env.curl_lib_version_at_least('quiche', '0.29.1'):
pytest.skip("quiche issue #2277 not fixed")
count = 20
curl = CurlClient(env=env)