From 3802b2396727ba493d44764777197f7668aff9d3 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Fri, 9 Oct 2026 08:00:00 +0000 Subject: [PATCH 1/4] CI: install libcrypt-dev package The libcrypt-dev package is not installed by default in the Ubuntu 26.04 build image, so install it explicitly. --- .ci/install-dependencies.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/install-dependencies.sh b/.ci/install-dependencies.sh index c10ddb6eacc..9b031c98cda 100755 --- a/.ci/install-dependencies.sh +++ b/.ci/install-dependencies.sh @@ -7,7 +7,7 @@ j=-j`nproc` || j= type sudo >/dev/null 2>&1 && sudo=sudo || sudo= -common_packages='make libssl-dev libpcap-dev' +common_packages='make libcrypt-dev libssl-dev libpcap-dev' retry_if_failed() { From 15ce84ff10601e2a278be9a56f83a2909c15a0b7 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Fri, 9 Oct 2026 08:00:00 +0000 Subject: [PATCH 2/4] CI: pin some old compiler jobs to ubuntu-24.04 As gcc-9, gcc-10, clang-14, clang-15, or clang-16 are not available on Ubuntu 26.04, pin the corresponding jobs to ubuntu-24.04 so they survive the upcoming ubuntu-latest switch from ubuntu-24.04 to ubuntu-26.04. --- .github/workflows/ci.yml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index af691050e42..c8215d05cb3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,7 +35,7 @@ jobs: - { cc: gcc, runs_on: ubuntu-latest, target: x86_64, variant: asan-sse2 } - { cc: gcc, runs_on: ubuntu-latest, target: x86_64, variant: asan-avx } - { cc: gcc, runs_on: ubuntu-latest, target: x86_64, variant: asan-avx2 } - # GCC 9–15 (ubuntu-latest) + # GCC 11–15 (ubuntu-latest) - { cc: gcc-15, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: gcc-15, runs_on: ubuntu-latest, target: x86, variant: without-openssl } - { cc: gcc-15, runs_on: ubuntu-latest, target: x86, variant: disable-all } @@ -43,15 +43,17 @@ jobs: - { cc: gcc-13, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: gcc-12, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: gcc-11, runs_on: ubuntu-latest, target: x86_64, variant: base } - - { cc: gcc-10, runs_on: ubuntu-latest, target: x86_64, variant: base } - - { cc: gcc-9, runs_on: ubuntu-latest, target: x86_64, variant: base } - # Clang 14–19 (ubuntu-latest) + # GCC 9–10 (ubuntu-24.04) + - { cc: gcc-10, runs_on: ubuntu-24.04, target: x86_64, variant: base } + - { cc: gcc-9, runs_on: ubuntu-24.04, target: x86_64, variant: base } + # Clang 17–19 (ubuntu-latest) - { cc: clang-19, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: clang-18, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: clang-17, runs_on: ubuntu-latest, target: x86_64, variant: base } - - { cc: clang-16, runs_on: ubuntu-latest, target: x86_64, variant: base } - - { cc: clang-15, runs_on: ubuntu-latest, target: x86_64, variant: base } - - { cc: clang-14, runs_on: ubuntu-latest, target: x86_64, variant: base } + # Clang 14–16 (ubuntu-24.04) + - { cc: clang-16, runs_on: ubuntu-24.04, target: x86_64, variant: base } + - { cc: clang-15, runs_on: ubuntu-24.04, target: x86_64, variant: base } + - { cc: clang-14, runs_on: ubuntu-24.04, target: x86_64, variant: base } # Clang 11–13 (ubuntu-22.04) - { cc: clang-13, runs_on: ubuntu-22.04, target: x86_64, variant: base } - { cc: clang-12, runs_on: ubuntu-22.04, target: x86_64, variant: base } From 17639ae85a245dc67dd7c6b891fa1e23513b73b7 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Fri, 9 Oct 2026 08:00:00 +0000 Subject: [PATCH 3/4] CI: add gcc-16 job to the build matrix As gcc-16 is available both on Ubuntu 24.04 and on Ubuntu 26.04, keep it on ubuntu-latest. --- .github/workflows/ci.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c8215d05cb3..952773d07a3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,10 +35,11 @@ jobs: - { cc: gcc, runs_on: ubuntu-latest, target: x86_64, variant: asan-sse2 } - { cc: gcc, runs_on: ubuntu-latest, target: x86_64, variant: asan-avx } - { cc: gcc, runs_on: ubuntu-latest, target: x86_64, variant: asan-avx2 } - # GCC 11–15 (ubuntu-latest) + # GCC 11–16 (ubuntu-latest) + - { cc: gcc-16, runs_on: ubuntu-latest, target: x86_64, variant: base } + - { cc: gcc-16, runs_on: ubuntu-latest, target: x86, variant: without-openssl } + - { cc: gcc-16, runs_on: ubuntu-latest, target: x86, variant: disable-all } - { cc: gcc-15, runs_on: ubuntu-latest, target: x86_64, variant: base } - - { cc: gcc-15, runs_on: ubuntu-latest, target: x86, variant: without-openssl } - - { cc: gcc-15, runs_on: ubuntu-latest, target: x86, variant: disable-all } - { cc: gcc-14, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: gcc-13, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: gcc-12, runs_on: ubuntu-latest, target: x86_64, variant: base } From 833a1fa59659d3018f1cbbb2ba416d712bc081d4 Mon Sep 17 00:00:00 2001 From: "Dmitry V. Levin" Date: Fri, 9 Oct 2026 08:00:00 +0000 Subject: [PATCH 4/4] CI: add clang-20, clang-21, and clang-22 jobs to the build matrix As Clang 21 and Clang 22 are available only on Ubuntu 26.04, pin ubuntu-26.04 for the corresponding jobs. When ubuntu-latest switches from ubuntu-24.04 to ubuntu-26.04, these jobs can be switched to ubuntu-latest. Clang 20 is available on both Ubuntu 24.04 and Ubuntu 26.04, so keep it on ubuntu-latest. --- .github/workflows/ci.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 952773d07a3..f2b35fee3e8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -47,7 +47,11 @@ jobs: # GCC 9–10 (ubuntu-24.04) - { cc: gcc-10, runs_on: ubuntu-24.04, target: x86_64, variant: base } - { cc: gcc-9, runs_on: ubuntu-24.04, target: x86_64, variant: base } - # Clang 17–19 (ubuntu-latest) + # Clang 21–22 (ubuntu-26.04) + - { cc: clang-22, runs_on: ubuntu-26.04, target: x86_64, variant: base } + - { cc: clang-21, runs_on: ubuntu-26.04, target: x86_64, variant: base } + # Clang 17–20 (ubuntu-latest) + - { cc: clang-20, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: clang-19, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: clang-18, runs_on: ubuntu-latest, target: x86_64, variant: base } - { cc: clang-17, runs_on: ubuntu-latest, target: x86_64, variant: base }