diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4c81b28..f656e5c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -74,7 +74,7 @@ jobs: - { os: macos-14, compiler: apple-clang, preset: ubsan } steps: - name: Check out the source tree - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install a recent CMake and Ninja uses: lukka/get-cmake@latest @@ -125,7 +125,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Ensure clang-format is available shell: bash @@ -151,7 +151,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check out (full history needed for diff) - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -216,7 +216,7 @@ jobs: std: [c89, c99] steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Compile the minimal C consumer under -std=${{ matrix.std }} -pedantic -Werror shell: bash @@ -239,7 +239,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install CMake and Ninja uses: lukka/get-cmake@latest @@ -336,7 +336,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install Valgrind shell: bash @@ -420,7 +420,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install CMake and Ninja uses: lukka/get-cmake@latest @@ -468,7 +468,7 @@ jobs: mode: [MUTEX, LOCKFREE] steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install CMake and Ninja uses: lukka/get-cmake@latest @@ -516,7 +516,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install CMake and Ninja uses: lukka/get-cmake@latest @@ -560,7 +560,7 @@ jobs: mode: [MUTEX, LOCKFREE] steps: - name: Check out - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Install CMake and Ninja uses: lukka/get-cmake@latest diff --git a/.github/workflows/docs-site.yml b/.github/workflows/docs-site.yml index 3a409b0..bc0640d 100644 --- a/.github/workflows/docs-site.yml +++ b/.github/workflows/docs-site.yml @@ -29,7 +29,7 @@ jobs: name: Build API docs (warn-as-error gate) runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Install Doxygen run: | @@ -57,7 +57,7 @@ jobs: - name: Upload Pages artifact if: github.event_name != 'pull_request' - uses: actions/upload-pages-artifact@v3 + uses: actions/upload-pages-artifact@v5 with: path: build/doxygen/html @@ -80,4 +80,4 @@ jobs: steps: - name: Deploy id: deployment - uses: actions/deploy-pages@v4 + uses: actions/deploy-pages@v5 diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 33bfc31..e4e2061 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -26,8 +26,8 @@ jobs: name: Lint Markdown runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: DavidAnson/markdownlint-cli2-action@v16 + - uses: actions/checkout@v6 + - uses: DavidAnson/markdownlint-cli2-action@v23 with: globs: | **/*.md @@ -37,7 +37,7 @@ jobs: name: Check internal links runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Lychee — offline (internal links only) uses: lycheeverse/lychee-action@v2 with: @@ -48,7 +48,7 @@ jobs: name: ADR numbering & index sanity runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Verify sequential numbering and index coverage shell: bash run: | @@ -97,7 +97,7 @@ jobs: name: Project consistency lint runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 with: # The i18n-freshness check compares each translation's recorded source # commit against the source file's history, so it needs full history, diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 5ba6bd3..98fd585 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -110,7 +110,7 @@ jobs: echo "Building artifact for tag=$tag (version=$version) on ${{ matrix.platform }}" - name: Check out the tagged commit - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: ref: ${{ steps.tag.outputs.tag }} @@ -174,7 +174,7 @@ jobs: ls -la "pbr-memory-pool-${version}-${platform}.tar.gz" - name: Upload the platform artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: artifact-${{ matrix.platform }} path: pbr-memory-pool-${{ steps.tag.outputs.version }}-${{ matrix.platform }}.tar.gz @@ -217,7 +217,7 @@ jobs: echo "Drafting release for tag=$tag (version=$version, prerelease=$prerelease)" - name: Check out the tagged commit (for release notes file) - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: ref: ${{ steps.tag.outputs.tag }} @@ -234,7 +234,7 @@ jobs: echo "Release notes file present at: $notes" - name: Download all platform artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: path: artifacts/ pattern: artifact-* diff --git a/.markdownlint.json b/.markdownlint.json index da10ca0..52134d8 100644 --- a/.markdownlint.json +++ b/.markdownlint.json @@ -5,5 +5,6 @@ "MD024": { "siblings_only": true }, "MD033": false, "MD036": false, - "MD040": false + "MD040": false, + "MD060": false } diff --git a/CHANGELOG.md b/CHANGELOG.md index 6ea53a5..29cad7f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -42,6 +42,19 @@ dated version block (`## [X.Y.Z] — YYYY-MM-DD`) when a release PR closes a mil two README rows are re-pinned to the current source commit and flipped from `stale` back to `translated`, clearing the `i18n-freshness` consistency-lint flag the `v1.1.0` release raised. Documentation-only; no API change. +- **CI GitHub Actions bumped off the deprecated Node 20 runtime onto Node 24.** + `actions/checkout` v4 → v6, `actions/upload-artifact` v4 → v7, + `actions/download-artifact` v4 → v8, `actions/deploy-pages` v4 → v5, + `actions/upload-pages-artifact` v3 → v5, and + `DavidAnson/markdownlint-cli2-action` v16 → v23 — all of which previously ran on + `node20`, which GitHub is retiring. The markdownlint bump pulls in a newer + markdownlint that adds the `MD060` (table-column-style) rule; it is disabled in + [`.markdownlint.json`](.markdownlint.json) because byte-aligned table pipes are + not achievable for the CJK-width tables in the `docs/i18n/` translations — + preserving the prior (rule-absent) behaviour. `ilammy/msvc-dev-cmd` stays on `v1` + (no Node 24 release exists upstream yet); `lukka/get-cmake@latest` and + `lycheeverse/lychee-action@v2` already run on Node 24 / as composite actions. + CI / build only; no API/ABI/behaviour change. ## [1.1.0] — 2026-06-14