Skip to content
Latchkey

GitHub Actions "This action is deprecated" - Old actions/<x>@v1/@v2

A workflow warns or fails because it pins an old major of an action that GitHub has deprecated - typically one built on a Node runtime (Node 12/16) that current runners no longer support.

What this error means

A run shows a deprecation warning naming a specific action and version, or a step fails outright because the action's Node runtime is no longer available on the runner.

Actions log
Warning: The `actions/checkout@v1` action is deprecated.
# or, once removed:
Error: This action runs on Node16 which is deprecated and no longer supported.

Common causes

Pinned to a deprecated action major

Old majors (checkout@v1, setup-node@v2, upload-artifact@v3) are deprecated as newer versions ship. They warn first and eventually stop working.

Action built on a removed Node runtime

JavaScript actions declare a Node runtime in their action.yml. When GitHub drops Node 12/16 from runners, actions pinned to those runtimes fail to execute.

How to fix it

Upgrade to a current major

Bump each action to its latest supported major, reading its changelog for breaking changes.

.github/workflows/ci.yml
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/upload-artifact@v4

Automate version currency

  1. Enable Dependabot for github-actions so PRs bump deprecated majors automatically.
  2. Read each action's migration notes - major bumps can change inputs or outputs.
  3. Pin to a tag or full SHA of the new major after verifying it.

How to prevent it

  • Keep actions on supported majors via Dependabot.
  • Watch for deprecation warnings in run logs and act before removal.
  • Avoid pinning to long-unmaintained action versions.

Frequently asked questions

What causes "Deprecated action version"?
Old majors (checkout@v1, setup-node@v2, upload-artifact@v3) are deprecated as newer versions ship. They warn first and eventually stop working.
How do I fix Deprecated action version?
Bump each action to its latest supported major, reading its changelog for breaking changes.

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card