From 18c98dcb2102541cd51b940b1f0cbe1af5ed04c8 Mon Sep 17 00:00:00 2001 From: rtm516 Date: Thu, 26 Mar 2026 14:08:06 +0000 Subject: [PATCH 1/5] Add clang-format workflow for pull request checks --- .github/workflows/clang-format.yml | 49 ++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 .github/workflows/clang-format.yml diff --git a/.github/workflows/clang-format.yml b/.github/workflows/clang-format.yml new file mode 100644 index 0000000000..25d12a976f --- /dev/null +++ b/.github/workflows/clang-format.yml @@ -0,0 +1,49 @@ +name: Check formatting + +on: + pull_request: + paths: + - '**' + - '!.gitignore' + - '!*.md' + - '!.github/**' + - '.github/workflows/clang-format.yml' + +permissions: + contents: read + pull-requests: write + +jobs: + format-check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + with: + ref: ${{ github.event.pull_request.head.sha }} + fetch-depth: 0 + + - name: Fetch base commit + run: git fetch origin ${{ github.event.pull_request.base.sha }} + + - name: Install clang-format-20 + run: | + wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo tee /etc/apt/trusted.gpg.d/llvm.asc + echo "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-20 main" | sudo tee /etc/apt/sources.list.d/llvm-20.list + sudo apt-get update -qq + sudo apt-get install -y -qq clang-format-20 + + - uses: reviewdog/action-setup@v1 + + - name: Check formatting on changed lines + env: + REVIEWDOG_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + git clang-format-20 --binary clang-format-20 \ + --diff ${{ github.event.pull_request.base.sha }} -- \ + '*.c' '*.cpp' '*.cc' '*.h' '*.hpp' \ + | reviewdog \ + -name="clang-format" \ + -f=diff \ + -reporter=github-pr-check \ + -fail-level=error \ + -filter-mode=added From 7104b933336aa6cee9024217d65ee2f201a4aef8 Mon Sep 17 00:00:00 2001 From: rtm516 Date: Thu, 26 Mar 2026 14:08:43 +0000 Subject: [PATCH 2/5] Modify push paths in nightly workflow Updated paths for push event to include all files except specified ones. --- .github/workflows/nightly.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 789db3e84f..a5b53be087 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -5,11 +5,12 @@ on: push: branches: - 'main' - paths-ignore: - - '.gitignore' - - '*.md' - - '.github/**' - - '!.github/workflows/nightly.yml' + paths: + - '**' + - '!.gitignore' + - '!*.md' + - '!.github/**' + - '.github/workflows/nightly.yml' permissions: contents: write From da147739cefa756c70d408d1edf0413c9184e800 Mon Sep 17 00:00:00 2001 From: rtm516 Date: Thu, 26 Mar 2026 14:09:05 +0000 Subject: [PATCH 3/5] Update paths for nightly-server workflow triggers --- .github/workflows/nightly-server.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/nightly-server.yml b/.github/workflows/nightly-server.yml index 5450de9ac1..0fc20eb13f 100644 --- a/.github/workflows/nightly-server.yml +++ b/.github/workflows/nightly-server.yml @@ -5,11 +5,12 @@ on: push: branches: - 'main' - paths-ignore: - - '.gitignore' - - '*.md' - - '.github/**' - - '!.github/workflows/nightly-server.yml' + paths: + - '**' + - '!.gitignore' + - '!*.md' + - '!.github/**' + - '.github/workflows/nightly-server.yml' permissions: contents: write From f6b679cecfbf43aa4ef96d0b7c0a1412246c6e20 Mon Sep 17 00:00:00 2001 From: rtm516 Date: Thu, 26 Mar 2026 14:09:51 +0000 Subject: [PATCH 4/5] Modify paths for pull request triggers Update pull request workflow to include specific paths. --- .github/workflows/pull-request.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 9d57f4b4b5..3b5398a007 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -4,10 +4,12 @@ on: workflow_dispatch: pull_request: types: [opened, reopened, synchronize] - paths-ignore: - - '.gitignore' - - '*.md' - - '.github/*.md' + paths: + - '**' + - '!.gitignore' + - '!*.md' + - '!.github/**' + - '.github/workflows/pull-request.yml' jobs: build: From eb234b149ce52559671bc6d0ff16cf7aa50ae910 Mon Sep 17 00:00:00 2001 From: rtm516 Date: Thu, 26 Mar 2026 14:19:29 +0000 Subject: [PATCH 5/5] Tidy up clang-format installation in workflow --- .github/workflows/clang-format.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/clang-format.yml b/.github/workflows/clang-format.yml index 25d12a976f..a01bada4ef 100644 --- a/.github/workflows/clang-format.yml +++ b/.github/workflows/clang-format.yml @@ -27,9 +27,8 @@ jobs: - name: Install clang-format-20 run: | - wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo tee /etc/apt/trusted.gpg.d/llvm.asc - echo "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-20 main" | sudo tee /etc/apt/sources.list.d/llvm-20.list - sudo apt-get update -qq + wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc + sudo add-apt-repository -y "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-20 main" sudo apt-get install -y -qq clang-format-20 - uses: reviewdog/action-setup@v1