Workflow runs log:
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4.
The runner force-runs them on Node 24 today, so this is a warning — but the fallback is temporary (changelog). Once it is removed the affected steps fail outright.
The warning lists per job and names only actions/checkout, but six pinned actions resolve to a node20 runtime. Verified by reading each action's action.yml at the pinned ref:
| action |
pinned |
runtime |
latest |
occurrences |
actions/checkout |
v4 |
node20 |
v7 |
bump.yml ×1, ci.yml ×3, release.yml ×1 |
actions/upload-artifact |
v4 |
node20 |
v7 |
ci.yml ×1, release.yml ×1 |
actions/download-artifact |
v4 |
node20 |
v8 |
release.yml ×1 |
softprops/action-gh-release |
v2 |
node20 |
v3 |
release.yml ×1 |
astral-sh/setup-uv |
v5 |
node20 |
v8 |
bump.yml ×1, ci.yml ×3, release.yml ×1 |
dorny/test-reporter |
v1 |
node20 |
v3 |
ci.yml ×1 |
This one needs more care than the other repos. The first four are the same routine bump the sibling Flutter projects already run green. The last two are not:
astral-sh/setup-uv v5 → v8 crosses three majors. Check the input names still match (caching and version-resolution inputs changed across those releases) before assuming a drop-in swap.
dorny/test-reporter v1 → v3 crosses two majors and this is the action that publishes check runs, so a silent behaviour change shows up as missing or misattributed test reports rather than a hard failure.
Suggested split: one PR for the four actions/* + action-gh-release bumps (low risk, verifiable by CI), a second for setup-uv and test-reporter after checking their changelogs — so a regression in the risky two does not force a revert of the safe four.
Workflow runs log:
The runner force-runs them on Node 24 today, so this is a warning — but the fallback is temporary (changelog). Once it is removed the affected steps fail outright.
The warning lists per job and names only
actions/checkout, but six pinned actions resolve to anode20runtime. Verified by reading each action'saction.ymlat the pinned ref:actions/checkoutbump.yml×1,ci.yml×3,release.yml×1actions/upload-artifactci.yml×1,release.yml×1actions/download-artifactrelease.yml×1softprops/action-gh-releaserelease.yml×1astral-sh/setup-uvbump.yml×1,ci.yml×3,release.yml×1dorny/test-reporterci.yml×1This one needs more care than the other repos. The first four are the same routine bump the sibling Flutter projects already run green. The last two are not:
astral-sh/setup-uvv5 → v8 crosses three majors. Check the input names still match (caching and version-resolution inputs changed across those releases) before assuming a drop-in swap.dorny/test-reporterv1 → v3 crosses two majors and this is the action that publishes check runs, so a silent behaviour change shows up as missing or misattributed test reports rather than a hard failure.Suggested split: one PR for the four
actions/*+action-gh-releasebumps (low risk, verifiable by CI), a second forsetup-uvandtest-reporterafter checking their changelogs — so a regression in the risky two does not force a revert of the safe four.