Skip to content

Move the CI actions off Node 20 - #10

Merged
7agustibm merged 1 commit into
mainfrom
ci/update-action-versions
Aug 15, 2026
Merged

7agustibm merged 1 commit into
mainfrom
ci/update-action-versions

Conversation

@7agustibm

Copy link
Copy Markdown
Collaborator

Every action in both workflows targeted Node 20, which the runners now force onto Node 24 with a deprecation warning, and actions/setup-java@v4 is deprecated outright.

Action Before After
actions/checkout v4 v7
actions/setup-java v4 v5
actions/upload-artifact v4 v7
gradle/actions/setup-gradle v4 v5 — see below

upload-artifact v5 would not have been enough: it still defaulted to Node 20, and v6 is the first that actually runs on 24.

Why gradle/actions stops at v5

gradle/actions@v6 extracted the caching into gradle-actions-caching, a proprietary component governed by Gradle's Terms of Use rather than the MIT licence. Accepting those terms on behalf of an Apache-2.0 project is a maintainer's decision, not something to slip in with a version bump — and v5 already runs on Node 24, which is the entire point of this change. The reason is written next to the pin so it does not get "helpfully" bumped later.

If the project does want v6, that is a deliberate call worth making on its own.

No behaviour change here

  • checkout@v7's fork-PR block applies to pull_request_target and workflow_run; neither workflow uses either trigger.
  • upload-artifact@v7's direct-upload mode is opt-in via the new archive parameter; the default is unchanged.

Verified

All 7 jobs green on this branch (JDK 17 and 21 across Linux, macOS and Windows, plus static analysis), and the run produces zero annotations — the Node 20 deprecation notice is gone rather than merely quieter.

🤖 Generated with Claude Code

Every action in both workflows targeted Node 20, which the runners now force onto
Node 24 with a deprecation warning, and actions/setup-java@v4 is deprecated
outright. Bumped to the latest major of each: checkout v7, setup-java v5,
upload-artifact v7. Note that upload-artifact v5 would not have been enough — it
still defaulted to Node 20; v6 is the first that actually runs on 24.

gradle/actions/setup-gradle is the exception, held at v5 rather than v6. v6
extracted the caching into `gradle-actions-caching`, a proprietary component
governed by Gradle's Terms of Use instead of the MIT licence. Accepting those
terms on behalf of an Apache-2.0 project is a maintainer's decision, not something
to slip in with a version bump, and v5 already runs on Node 24 — which is the
whole point of this change. The reason is written next to the pin so it does not
get "helpfully" bumped later.

Nothing here changes behaviour for this repository: checkout v7's fork-PR block
applies to pull_request_target and workflow_run, neither of which is used, and
upload-artifact v7's direct-upload mode is opt-in.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@7agustibm
7agustibm merged commit df92e35 into main Aug 15, 2026
14 checks passed
@7agustibm
7agustibm deleted the ci/update-action-versions branch August 15, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant