Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
# below explicitly opt manual runs back into running everything.
changes:
name: Detect Changes
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
outputs:
builds: ${{ steps.filter.outputs.builds }}
tests: ${{ steps.filter.outputs.tests }}
Expand Down Expand Up @@ -145,7 +145,7 @@ jobs:
# This job is an aggregate job
ci:
name: CI
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
# List all the jobs that need to succeed for the CI to pass
needs:
- changes
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/cpp-tools.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ permissions:
jobs:
clang-format:
name: clang-format
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
continue-on-error: false
timeout-minutes: 15

Expand Down Expand Up @@ -52,7 +52,7 @@ jobs:

clang-tidy:
name: clang-tidy
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

πŸ”΄ C++ static analysis fails on Ubuntu 26.04

On Ubuntu 26.04, clang-tidy adds an LLVM 19 repository for resolute, which apt.llvm.org does not provide. apt-get update fails, blocking the C++ Tools check.

Learn more

The C++ Tools workflow builds an APT source URL from the runner codename in its Install clang-tidy 19 and clang 21 step. On Ubuntu 26.04, that codename is resolute. apt.llvm.org publishes llvm-toolchain-resolute-21 but has no llvm-toolchain-resolute-19, so the source added for LLVM 19 causes sudo apt-get update to fail before any tool installs. The Ubuntu 26.04 package repository itself provides clang-tidy-19 and clang-tools-19.

Example: A PR changing the CI workflow triggers the C++ Tools job on ubuntu-26.04. Its APT update requests llvm-toolchain-resolute-19/Release, receives HTTP 404, and stops before compilation database generation.

Recommended fix: On Ubuntu 26.04, install LLVM 19 tools from Ubuntu's repositories instead of adding the unavailable upstream LLVM 19 source. Keep the existing LLVM 21 source for clang-21 and libclang-21-dev, and verify the package installation and clang-tidy check on that runner.

Devin Review


Was this helpful? React with πŸ‘ or πŸ‘Ž to provide feedback.

continue-on-error: false
timeout-minutes: 45

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ jobs:
build:
name: Generate and verify docs
if: github.event_name == 'release' || inputs.build_docs
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
outputs:
project_number: ${{ steps.build_docs.outputs.project_number }}
artifact_name: ${{ steps.artifact_meta.outputs.name }}
Expand Down Expand Up @@ -168,7 +168,7 @@ jobs:
# CI enables this only for trusted main pushes. Release events always
# check credentials before publishing. PR jobs never receive deploy keys.
if: github.event_name == 'release' || inputs.check_credentials
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
steps:
- name: Verify docs deploy credentials
env:
Expand All @@ -187,7 +187,7 @@ jobs:
name: Publish (S3 + CloudFront)
needs: [build, credentials]
if: github.event_name == 'release' && github.event.release.prerelease == false
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
steps:
- name: Download docs artifact
uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/license_check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
jobs:
license-check:
name: License Check
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
permissions:
contents: read
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/link_check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:
jobs:
check-links:
name: Link Check
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
permissions:
contents: read
steps:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/make-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -348,7 +348,7 @@ jobs:
# ---------- Release Job ----------
release:
name: Create GitHub Release
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
needs:
- build
permissions:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rust-release-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ permissions:
jobs:
rust-release-check:
name: Rust Release Check
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
steps:
- name: Checkout (with submodules)
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -472,7 +472,7 @@ jobs:
coverage:
name: Code Coverage
if: inputs.run_coverage
runs-on: ubuntu-24.04
runs-on: ubuntu-26.04
# A debug build instrumented with --coverage is far heavier (RAM + disk)
# than the release builds. Cap the wall-clock so a stuck/OOM build fails
# fast and visibly instead of hanging toward the 6h default.
Expand Down
Loading