From 8c812e6874a0ba8ff203523e3c261c958a8241fd Mon Sep 17 00:00:00 2001 From: Ultradesu Date: Fri, 2 Oct 2026 14:01:33 +0100 Subject: [PATCH] Bump the GitHub workflow actions off deprecated Node 20 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit GitHub now forces actions/checkout@v4, actions/upload-artifact@v4 and actions/download-artifact@v4 (all Node 20) onto Node 24 with a deprecation warning. Move them to the current Node 24 majors — checkout@v5, upload-artifact@v7, download-artifact@v8 — which keep the same inputs and the per-artifact subdirectory layout (merge-multiple defaults to false), so the publish step is unchanged. Only the .github workflow is touched. The .gitea workflow stays on checkout@v4 and the @v3 artifact actions, because Gitea does not support the v4+ artifact backend and may not have Node 24 on its runner image; it also does not emit these deprecation warnings. mlugg/setup-zig has no Node 24 release yet (latest v2.2.1 is still Node 20), so that one warning remains until upstream updates — nothing to change on our side. Co-Authored-By: Claude Opus 4.8 --- .github/workflows/release.yml | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4bcb676..5d829de 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -2,13 +2,14 @@ name: Release # GitHub version of the release pipeline. The build half mirrors the Gitea one # in .gitea/workflows/release.yml (static musl Linux via cargo-zigbuild, native -# macOS and Windows); only the publish half differs: GitHub needs the v4 -# artifact backend and fills the release with `gh`. +# macOS and Windows); only the publish half differs: it uses the current +# artifact actions (Node 24) and fills the release with `gh`. # # Every job is gated on `github.server_url == 'https://github.com'`, so this file -# runs only on GitHub. Gitea runs its own copy in .gitea/workflows; should a -# Gitea instance also read .github/workflows, the guard skips these jobs there -# so they never fail on the @v4 artifact backend or `gh`. +# runs only on GitHub. Gitea runs its own copy in .gitea/workflows (which pins +# the older @v3 artifact actions it supports); should a Gitea instance also read +# .github/workflows, the guard skips these jobs there so they never fail on the +# artifact backend or `gh`. on: push: tags: ["v*"] @@ -57,7 +58,7 @@ jobs: zig: false steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - uses: dtolnay/rust-toolchain@stable with: @@ -173,7 +174,7 @@ jobs: "tsunagi-${pkgver}-1-${{ matrix.pkg_arch }}.pkg.tar.zst" - name: Upload the build outputs as run artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: ${{ matrix.asset }} path: | @@ -191,7 +192,7 @@ jobs: contents: write steps: - name: Download every build artifact - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v8 with: path: artifacts @@ -206,7 +207,7 @@ jobs: run: | set -euo pipefail - # download-artifact@v4 nests each artifact under its own directory, so + # download-artifact nests each artifact under its own directory, so # the archives are artifacts//. mapfile -t files < <(find artifacts -type f \( -name '*.tar.gz' -o -name '*.zip' -o -name '*.deb' -o -name '*.pkg.tar.zst' \)) printf 'asset: %s\n' "${files[@]}"