Update GitHub Actions to versions running on Node.js 24

未關閉 適合新手
#784 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 1 天內回覆

還沒有人認領這個 Issue。

評估

難度
2/5
預估耗時
1-3 小時
新手友好度
78/100
Issue 類型
重構
描述清晰度
描述清楚
活躍度
活躍
技術堆疊
github-actions, yaml
領域
ci-cd

研究方向

所有需要修改的內容都在 .github/workflows/ 中。先在這些檔案裡搜尋 uses:,再把每一處命中與 issue 中的版本表逐一對應。直接在原處更新 pin。對於 release-drafter,依照 issue 中的說明,把環境變數 GITHUB_TOKEN 換成輸入項 token。當沒有任何 uses: 行仍指向 Node 24 之前的major版本,並且下一次推送到 master 後,release 與文件部署任務中不再出現棄用警告時,即視為完成。這一點 PR 檢查無法涵蓋。

由索引模型根據 Issue 內容生成。

描述

maintenance

Problem

Workflow runs report that Node.js 20 is deprecated, for example in
this Release Management run:

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, actions/setup-node@v4,
EndBug/version-check@v2.

This concerns the runtime of the actions, not the Node.js version of the project,
which already uses 24 and 22. GitHub has
removed Node.js 20 from its runners,
so these actions already run on Node.js 24, a version they don't target. Jobs still pass.

Proposal

Update each action to the first major version that targets Node.js 24. Newer majors
add unrelated changes, so they are left out.

Action From To
actions/checkout v4 v6
actions/setup-node v4 v6
actions/setup-python v5 v6
actions/cache v4 v5
actions/upload-artifact v4 v6
actions/download-artifact v4 v7
github/codeql-action v3 v4
EndBug/version-check v2 v3
release-drafter/release-drafter v6 v7
kentaro-m/auto-assign-action v2.0.0 v2.0.2

release-drafter v7 also replaces the GITHUB_TOKEN environment variable with
the token input. Our configuration uses none of the options removed in v7.

Risks

The release jobs only run on master, so PR checks don't cover them:

  • The docs deployment uses git worktree and pushes to gh-pages. checkout v6
    stores credentials differently and supports worktrees since v6.0.1.
  • The release-drafter update first runs on a push to master without a version bump.
  • The docs deployment and the npm publish first run on the next version bump.

Out of scope

These have no version targeting Node.js 24, so their warnings will remain:

  • TimonVS/pr-labeler-action: the latest version targets Node.js 20 and the
    repository has had no pushes since February 2024. Should we replace it?
  • rossjrw/pr-preview-action: it pins JamesIves/github-pages-deploy-action and
    marocchino/sticky-pull-request-comment at versions targeting Node.js 20.

Moving the project to Node.js 26, which became LTS on 2026-10-28, is a separate
topic. It would raise engines and drop Node.js 22, which is a breaking change, and
it depends on the Playwright image shipping Node.js 26.

主要語言
TypeScript
星號
23
分支
10
平均合併
5 天 12 小時
30 天內合併 PR
9

環境準備

在 Codespaces 中開啟

在瀏覽器裡用你自己的 GitHub 帳號啟動這個專案的開發容器。

  • 沒有 Dockerfile 或 Docker Compose 檔案
  • 沒有 Pull Request 範本
  • 沒有貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

react-ui-org/react-ui 的其他 Issue

查看 react-ui-org/react-ui 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。