From 86f7f21439ec47b7b4a37759f2e20ebba3e722ed Mon Sep 17 00:00:00 2001 From: Eduard Kerkhoven Date: Thu, 16 Jul 2026 21:42:23 +0200 Subject: [PATCH] CI: run the release artifact actions on Node 24 actions/upload-artifact@v4 and actions/download-artifact@v4 target Node.js 20, so every release run is annotated with the Node 20 deprecation warning. The rest of the workflows moved to Node 24 action majors in #35 (checkout@v5, setup-python@v6); this brings the release workflow in line. The two actions' majors are offset by one, so they cannot both take the same number. v5 (upload) and v6 (download) only added preliminary Node 24 support and still default to Node 20, which would leave the warning in place; upload v6 and download v7 are the first to set 'runs.using: node24'. This takes the latest matched pair -- upload v7 with download v8 -- since upload v7's direct uploads are what download v8's direct downloads consume. Behaviour notes: * download-artifact v8 defaults 'digest-mismatch' to error rather than warn, so a corrupted download now fails the run instead of publishing silently. * Both require Actions Runner >= 2.327.1; the workflow runs on GitHub-hosted ubuntu-latest. * The multi-path upload (dist/ plus notes.md) is unaffected: the paths still resolve through their least common ancestor to the workspace root, so both downstream jobs see 'dist/*' beside 'notes.md'. v7's single-file restriction applies only with 'archive: false'. --- .github/workflows/release.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f339ff3..b4070e1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -66,7 +66,10 @@ jobs: } cat notes.md - - uses: actions/upload-artifact@v4 + # dist/ and notes.md share the workspace root as their least common + # ancestor, so the artifact holds ``dist/*`` beside ``notes.md`` — the + # layout both downstream jobs expect. + - uses: actions/upload-artifact@v7 with: name: dist path: | @@ -80,7 +83,7 @@ jobs: permissions: contents: write # create the release and upload its assets steps: - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: dist - name: Create the release @@ -109,7 +112,7 @@ jobs: permissions: id-token: write steps: - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: dist - uses: pypa/gh-action-pypi-publish@release/v1