From b1eb5a6f4cd7aa8dfb6d80ea67e9c10d25fbdd91 Mon Sep 17 00:00:00 2001 From: Andrei Borza Date: Tue, 31 Mar 2026 10:08:31 +0900 Subject: [PATCH] chore: Bump to Node 24 LTS and setup-node v6 - Bump Node.js runtime from 20.19.2 to 24.14.1 - Bump `actions/setup-node` from v4.4.0 to v6.3.0 - Bump `@types/node` from ^20 to ^24 - Update Volta config to Node 24.14.1 - Add Node 24.x to CI test matrix > [!IMPORTANT] > `actions/setup-node@v6` runs on the `node24` Actions runtime, which > requires **runner version v2.327.1 or later**. Self-hosted runners on macOS > or Windows using an older runner version will need to upgrade. > > Linux runners are unaffected. GitHub-hosted runners are already compatible. Closes: #312 --- .github/workflows/build.yml | 2 +- action.yml | 10 ++++++---- dist/index.js | 2 +- package.json | 4 ++-- yarn.lock | 14 +++++++++++++- 5 files changed, 23 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 61877e81..f40ebe39 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -236,7 +236,7 @@ jobs: strategy: matrix: os: [ubuntu-latest, windows-latest, macos-latest] - node-version: ['20.x', '22.x'] + node-version: ['20.x', '22.x', '24.x'] runs-on: ${{ matrix.os }} name: Test Node version preserved on ${{ matrix.os }} with Node ${{ matrix.node-version }} permissions: diff --git a/action.yml b/action.yml index e52dfe6f..de3f2c54 100644 --- a/action.yml +++ b/action.yml @@ -167,7 +167,7 @@ runs: INPUT_WORKING_DIRECTORY: ${{ inputs.working_directory }} INPUT_DISABLE_TELEMETRY: ${{ inputs.disable_telemetry }} INPUT_DISABLE_SAFE_DIRECTORY: ${{ inputs.disable_safe_directory }} - uses: docker://ghcr.io/getsentry/action-release-image:master + uses: docker://ghcr.io/getsentry/action-release-image:ab-bump-node # For actions running on macos or windows runners, we use a composite # action approach which allows us to install the arch specific sentry-cli @@ -191,12 +191,13 @@ runs: - name: Setup node if: runner.os == 'macOS' || runner.os == 'Windows' - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 + uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 with: # setup-node doesn't allow absolute paths, so we can't # just use `github.action_path` to read this out from the `package.json` # any changes to the runtime need to be reflected here - node-version: 20.19.2 + node-version: 24.14.1 + package-manager-cache: false - name: Install Sentry CLI v2 if: runner.os == 'macOS' || runner.os == 'Windows' @@ -239,9 +240,10 @@ runs: # Restore the original Node version - name: Restore original Node version if: (runner.os == 'macOS' || runner.os == 'Windows') && steps.node_version.outputs.NODE_VERSION != '' - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 + uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0 with: node-version: ${{ steps.node_version.outputs.NODE_VERSION }} + package-manager-cache: false branding: icon: 'triangle' diff --git a/dist/index.js b/dist/index.js index ef7347a0..7caa2728 100644 --- a/dist/index.js +++ b/dist/index.js @@ -124585,7 +124585,7 @@ module.exports = JSON.parse('{"eN":{"H":"https://github.com/elastic/require-in-t /***/ ((module) => { "use strict"; -module.exports = JSON.parse('{"name":"action-release","version":"3.5.0","private":true,"description":"GitHub Action for creating a release on Sentry","main":"dist/index.js","scripts":{"all":"yarn run format && yarn run lint && yarn run build && yarn test","build":"ncc build src/main.ts -e @sentry/cli","format":"prettier --write **/*.ts **/*.md","format-check":"prettier --check **/*.ts **/*.md","lint":"eslint src/**/*.ts","set-docker-tag":"./scripts/set-docker-tag.sh","set-docker-tag-from-branch":"./scripts/set-docker-tag-from-branch.sh","start":"node dist/index.js","test":"jest"},"repository":{"type":"git","url":"git+https://github.com/getsentry/action-release.git"},"keywords":["actions","sentry","release"],"author":"Sentry","license":"MIT","dependencies":{"@actions/core":"^2.0.1","@sentry/node":"^8.54.0","@sentry/cli":"^2.58.4"},"devDependencies":{"@types/jest":"^29.5.6","@types/node":"^20.8.9","@typescript-eslint/parser":"^6.9.0","@vercel/ncc":"^0.38.1","eslint":"^8.52.0","eslint-plugin-github":"^4.10.1","eslint-plugin-jest":"^27.4.3","jest":"^29.7.0","jest-circus":"^29.7.0","js-yaml":"^4.1.1","prettier":"^3.0.3","ts-jest":"^29.1.1","typescript":"^5.2.2"},"volta":{"node":"20.19.2","yarn":"1.22.4"}}'); +module.exports = JSON.parse('{"name":"action-release","version":"3.5.0","private":true,"description":"GitHub Action for creating a release on Sentry","main":"dist/index.js","scripts":{"all":"yarn run format && yarn run lint && yarn run build && yarn test","build":"ncc build src/main.ts -e @sentry/cli","format":"prettier --write **/*.ts **/*.md","format-check":"prettier --check **/*.ts **/*.md","lint":"eslint src/**/*.ts","set-docker-tag":"./scripts/set-docker-tag.sh","set-docker-tag-from-branch":"./scripts/set-docker-tag-from-branch.sh","start":"node dist/index.js","test":"jest"},"repository":{"type":"git","url":"git+https://github.com/getsentry/action-release.git"},"keywords":["actions","sentry","release"],"author":"Sentry","license":"MIT","dependencies":{"@actions/core":"^2.0.1","@sentry/node":"^8.54.0","@sentry/cli":"^2.58.4"},"devDependencies":{"@types/jest":"^29.5.6","@types/node":"^24.0.0","@typescript-eslint/parser":"^6.9.0","@vercel/ncc":"^0.38.1","eslint":"^8.52.0","eslint-plugin-github":"^4.10.1","eslint-plugin-jest":"^27.4.3","jest":"^29.7.0","jest-circus":"^29.7.0","js-yaml":"^4.1.1","prettier":"^3.0.3","ts-jest":"^29.1.1","typescript":"^5.2.2"},"volta":{"node":"24.14.1","yarn":"1.22.4"}}'); /***/ }) diff --git a/package.json b/package.json index 5fe6f21c..002b6553 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ }, "devDependencies": { "@types/jest": "^29.5.6", - "@types/node": "^20.8.9", + "@types/node": "^24.0.0", "@typescript-eslint/parser": "^6.9.0", "@vercel/ncc": "^0.38.1", "eslint": "^8.52.0", @@ -47,7 +47,7 @@ "typescript": "^5.2.2" }, "volta": { - "node": "20.19.2", + "node": "24.14.1", "yarn": "1.22.4" } } diff --git a/yarn.lock b/yarn.lock index e94e0f78..540d6626 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1229,13 +1229,20 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@^20.8.9": +"@types/node@*": version "20.8.9" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.9.tgz#646390b4fab269abce59c308fc286dcd818a2b08" integrity sha512-UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg== dependencies: undici-types "~5.26.4" +"@types/node@^24.0.0": + version "24.12.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-24.12.0.tgz#6222e028210e5322e4f4f6767f8d88e5ea3b33d2" + integrity sha512-GYDxsZi3ChgmckRT9HPU0WEhKLP08ev/Yfcq2AstjrDASOYCSXeyjDsHg4v5t4jOj7cyDX3vmprafKlWIG9MXQ== + dependencies: + undici-types "~7.16.0" + "@types/pg-pool@2.0.6": version "2.0.6" resolved "https://registry.yarnpkg.com/@types/pg-pool/-/pg-pool-2.0.6.tgz#1376d9dc5aec4bb2ec67ce28d7e9858227403c77" @@ -4555,6 +4562,11 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== +undici-types@~7.16.0: + version "7.16.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.16.0.tgz#ffccdff36aea4884cbfce9a750a0580224f58a46" + integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== + undici@^5.28.5: version "5.29.0" resolved "https://registry.yarnpkg.com/undici/-/undici-5.29.0.tgz#419595449ae3f2cdcba3580a2e8903399bd1f5a3"