ci: migrate off the deprecated Node.js 20 runtime - #27
Merged
Merged
Conversation
Every run warned that these actions target Node.js 20 and were being forced onto Node 24. That fallback is temporary, so move to the majors that declare node24 natively. Mechanical: no workflow logic changes, and nothing here affects what the app is built with — the `node-version` bump is a separate commit so a build regression is easy to bisect. Refs #24 Claude-Session: https://claude.ai/code/session_01NcJuB2iR4WEfuQVLpYqWi4
Node 20 is end-of-life, so the version the app is actually built with follows the runtime bump. This is the part that carries real risk — it affects `npm ci`, the Vite build and the test run — hence its own commit. Tests, type check and the Vite build already run on Node 24 locally; CI covers the rest, in particular the Windows build and the macOS sign/notarize path. Closes #24 Claude-Session: https://claude.ai/code/session_01NcJuB2iR4WEfuQVLpYqWi4
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Closes #24. Every workflow run warned that the actions target Node.js 20 and were being forced onto Node 24. That fallback is temporary, so this moves both the action runtimes and the Node we build with.
Two commits on purpose, so a build regression is easy to bisect:
1.
ci: bump actions off the deprecated Node.js 20 runtime— mechanical, no workflow logic changes, no effect on what the app is built with.actions/checkoutactions/setup-nodeactions/upload-artifactactions/download-artifactactions/upload-pages-artifactactions/deploy-pagessoftprops/action-gh-releaseVersions were read from each action's latest release rather than assumed.
dtolnay/rust-toolchain@stableandSwatinem/rust-cache@v2were not flagged and are already current.2.
ci: build on Node.js 24— the 7setup-nodesteps pinnednode-version: 20, which is end-of-life. This is the part with real risk, since it affectsnpm ci, the Vite build and the test run.Verification
Tests (317), type check and the Vite build already pass on Node v24.16.0 locally. CI covers what local cannot: the Windows build and the macOS sign/notarize path, both of which exercise
softprops/action-gh-releaseand the artifact up/download pair only on a tag — see the note below.Note on coverage
ci.ymldoes not exercisedownload-artifactoraction-gh-release; those run only inrelease.yml, on a tag push. So a green CI here does not fully prove the release path. The next tagged release is the real test — worth watching rather than assuming.Type of Change
Checklist
https://claude.ai/code/session_01NcJuB2iR4WEfuQVLpYqWi4