From a1b07239082653d0c1dbf8b4404f9d0e1c809d3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C5=ABdolfs=20O=C5=A1i=C5=86=C5=A1?= Date: Wed, 22 Apr 2026 10:19:32 +0200 Subject: [PATCH] Bump nodejs 22.12.0 -> 24.15.0 This also drops .tool-versions to keep a single source of truth for the node version in .nvmrc. We also point the github actions to .nvmrc now. I'm the only dev who's using asdf to manage my tooling and I decided to just configure it to fall back to .nvmrc via `legacy_version_file = yes`. --- .github/workflows/check-build.yml | 2 +- .github/workflows/check-e2e.yml | 3 ++ .../workflows/check-http-client-unit-test.yml | 6 +-- .github/workflows/check-unit-test.yml | 6 +-- .github/workflows/check-visual.yml | 2 +- .github/workflows/check.yml | 4 +- .nvmrc | 2 +- .tool-versions | 2 - README.md | 2 +- flake.nix | 2 +- package-lock.json | 50 +++++-------------- package.json | 4 +- 12 files changed, 30 insertions(+), 55 deletions(-) delete mode 100644 .tool-versions diff --git a/.github/workflows/check-build.yml b/.github/workflows/check-build.yml index f533f7b30..485d65ff6 100644 --- a/.github/workflows/check-build.yml +++ b/.github/workflows/check-build.yml @@ -11,7 +11,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: - node-version: "22.12.0" + node-version-file: ".nvmrc" - name: Install dependencies run: npm ci - name: Install Playwright Browsers diff --git a/.github/workflows/check-e2e.yml b/.github/workflows/check-e2e.yml index d90eae937..82a4f0a8e 100644 --- a/.github/workflows/check-e2e.yml +++ b/.github/workflows/check-e2e.yml @@ -9,6 +9,9 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version-file: ".nvmrc" - name: Install dependencies run: npm ci diff --git a/.github/workflows/check-http-client-unit-test.yml b/.github/workflows/check-http-client-unit-test.yml index 66ed447ff..018149376 100644 --- a/.github/workflows/check-http-client-unit-test.yml +++ b/.github/workflows/check-http-client-unit-test.yml @@ -7,12 +7,12 @@ jobs: check-http-client-unit-test: runs-on: ubuntu-latest steps: + - name: Checkout + uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 with: - node-version: "22.12.0" - - name: Checkout - uses: actions/checkout@v4 + node-version-file: ".nvmrc" - run: npm ci - name: Install Radicle binaries run: | diff --git a/.github/workflows/check-unit-test.yml b/.github/workflows/check-unit-test.yml index 5a2237672..e8b422c91 100644 --- a/.github/workflows/check-unit-test.yml +++ b/.github/workflows/check-unit-test.yml @@ -7,11 +7,11 @@ jobs: check-unit-test: runs-on: ubuntu-latest steps: + - name: Checkout + uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 with: - node-version: "22.12.0" - - name: Checkout - uses: actions/checkout@v4 + node-version-file: ".nvmrc" - run: npm ci - run: npm run test:unit diff --git a/.github/workflows/check-visual.yml b/.github/workflows/check-visual.yml index 8465bc3f7..fc0e09e54 100644 --- a/.github/workflows/check-visual.yml +++ b/.github/workflows/check-visual.yml @@ -27,7 +27,7 @@ jobs: - uses: actions/setup-node@v4 with: - node-version: "22.12.0" + node-version-file: ".nvmrc" - name: Install dependencies run: npm ci diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 8c1e29937..3a6811677 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -7,10 +7,10 @@ jobs: check: runs-on: ubuntu-latest steps: + - uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 with: - node-version: "22.12.0" - - uses: actions/checkout@v4 + node-version-file: ".nvmrc" - run: npm ci - run: npm run check diff --git a/.nvmrc b/.nvmrc index 1d9b7831b..5bf4400f2 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -22.12.0 +24.15.0 diff --git a/.tool-versions b/.tool-versions deleted file mode 100644 index 270173e2b..000000000 --- a/.tool-versions +++ /dev/null @@ -1,2 +0,0 @@ -nodejs 22.12.0 -rust 1.89 diff --git a/README.md b/README.md index 5d2bcbbaa..7427645dd 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ collaboration and publishing stack, directly from your web browser. **Prerequisites:** -* Recent versions of [Node.js][nod] (20.9.0 or higher) and [npm][npm] installed +* Recent versions of [Node.js][nod] (24 or higher) and [npm][npm] installed Run the following commands to access the web UI locally: diff --git a/flake.nix b/flake.nix index 48ce74ef5..6cf280745 100644 --- a/flake.nix +++ b/flake.nix @@ -172,7 +172,7 @@ devShells.default = pkgs.mkShell { packages = with pkgs; [ cargo-watch - nodejs_22 + nodejs_24 radicle-node rust-analyzer rustToolchain diff --git a/package-lock.json b/package-lock.json index 39a9ae2e0..2c7f67129 100644 --- a/package-lock.json +++ b/package-lock.json @@ -41,7 +41,7 @@ "@types/katex": "^0.16.7", "@types/lodash": "^4.17.17", "@types/md5": "^2.3.5", - "@types/node": "^22.15.21", + "@types/node": "^24", "@types/wait-on": "^5.3.4", "@typescript-eslint/parser": "^8.32.1", "chalk": "^5.4.1", @@ -66,7 +66,7 @@ "wait-on": "^8.0.3" }, "engines": { - "node": ">=18.17.1" + "node": ">=24" } }, "node_modules/@ampproject/remapping": { @@ -1282,12 +1282,13 @@ } }, "node_modules/@types/node": { - "version": "22.15.21", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.15.21.tgz", - "integrity": "sha512-EV/37Td6c+MgKAbkcLG6vqZ2zEYHD7bvSrzqqs2RIhbA6w3x+Dqz8MZM3sP6kGTeLrdoOgKZe+Xja7tUB2DNkQ==", + "version": "24.12.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.2.tgz", + "integrity": "sha512-A1sre26ke7HDIuY/M23nd9gfB+nrmhtYyMINbjI1zHJxYteKR6qSMX56FsmjMcDb3SMcjJg5BiRRgOCC/yBD0g==", "dev": true, + "license": "MIT", "dependencies": { - "undici-types": "~6.21.0" + "undici-types": "~7.16.0" } }, "node_modules/@types/trusted-types": { @@ -4435,20 +4436,6 @@ } } }, - "node_modules/svelte-check/node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "node_modules/svelte-eslint-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/svelte-eslint-parser/-/svelte-eslint-parser-1.2.0.tgz", @@ -4665,10 +4652,11 @@ "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==" }, "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "dev": true + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "dev": true, + "license": "MIT" }, "node_modules/unicorn-magic": { "version": "0.3.0", @@ -5119,20 +5107,6 @@ "node": ">=0.10.0" } }, - "node_modules/yaml": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", - "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", - "dev": true, - "optional": true, - "peer": true, - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - } - }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 4df74a130..9b255ab53 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ }, "type": "module", "engines": { - "node": ">=18.17.1" + "node": ">=24" }, "devDependencies": { "@eslint/js": "^9.27.0", @@ -33,7 +33,7 @@ "@types/katex": "^0.16.7", "@types/lodash": "^4.17.17", "@types/md5": "^2.3.5", - "@types/node": "^22.15.21", + "@types/node": "^24", "@types/wait-on": "^5.3.4", "@typescript-eslint/parser": "^8.32.1", "chalk": "^5.4.1",