Skip to content

Conversation

@salmanmkc
Copy link
Contributor

Summary

Upgrade GitHub Actions to their latest versions to ensure compatibility with Node 24, as Node 20 will reach end-of-life in April 2026.

Changes

Action Old Version(s) New Version Release Files
actions/checkout v1 v6 Release build.yml
actions/setup-java v2 v5 Release build.yml

Context

Per GitHub's announcement, Node 20 is being deprecated and runners will begin using Node 24 by default starting March 4th, 2026.

Why this matters

  • Node 20 EOL: April 2026
  • Node 24 default: March 4th, 2026
  • Action: Update to latest action versions that support Node 24

Security Note

Actions that were previously pinned to commit SHAs remain pinned to SHAs (updated to the latest release SHA) to maintain the security benefits of immutable references.

Testing

These changes only affect CI/CD workflow configurations and should not impact application functionality. The workflows should be tested by running them on a branch before merging.

Signed-off-by: Salman Muin Kayser Chishti <[email protected]>
@Craigacp
Copy link
Collaborator

Looks like something changed in the default checkout logic (probably in v2, which I realise was more than 5 years ago) and now master isn't available on the worker which we use to determine which files were changed so we only run the linter on them. Looking at the docs I think if we set fetch_depth to 0 it should do a full clone and things should be as they were.

@salmanmkc
Copy link
Contributor Author

Looks like something changed in the default checkout logic (probably in v2, which I realise was more than 5 years ago) and now master isn't available on the worker which we use to determine which files were changed so we only run the linter on them. Looking at the docs I think if we set fetch_depth to 0 it should do a full clone and things should be as they were.

Yeah that seems about right, this should hopefully work now, if not we might need to do a git checkout of master.

The spotless maven plugin uses git ratchet mode to compare against
origin/master. With checkout@v6's default shallow clone, origin/master
is not available, causing the format check to fail.

Adding fetch-depth: 0 to the check-format job ensures the full git
history is cloned including origin/master reference.
@salmanmkc salmanmkc force-pushed the upgrade-github-actions-node24 branch from 3c977ca to 80ea92e Compare December 19, 2025 19:27
Copy link
Collaborator

@Craigacp Craigacp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@Craigacp Craigacp merged commit ab1a8cf into tensorflow:master Dec 19, 2025
9 checks passed
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.

2 participants