diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 20cb72df95..e648326020 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -145,7 +145,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node_version_to_setup: [16, 18, 19] + node_version_to_setup: [20, 22, 24] permissions: contents: read # for actions/checkout steps: diff --git a/.node-version b/.node-version index 9a2a0e219c..54c65116f1 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -v20 +v24 diff --git a/package-lock.json b/package-lock.json index 53feb3a2cd..4346f4b0e7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30,7 +30,7 @@ "typescript-eslint": "^8.17.0" }, "engines": { - "node": "^16.19.0 || ^18.14.0 || >=19.7.0" + "node": "^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/@bcoe/v8-coverage": { diff --git a/package.json b/package.json index a49bbe09ca..4f66c719d0 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "graphql-js" ], "engines": { - "node": "^16.19.0 || ^18.14.0 || >=19.7.0" + "node": "^20.0.0 || ^22.0.0 || >=24.0.0" }, "scripts": { "preversion": "bash -c '. ./resources/checkgit.sh && npm ci --ignore-scripts'", diff --git a/website/pages/upgrade-guides/v16-v17.mdx b/website/pages/upgrade-guides/v16-v17.mdx index df97e69606..48cc549a2a 100644 --- a/website/pages/upgrade-guides/v16-v17.mdx +++ b/website/pages/upgrade-guides/v16-v17.mdx @@ -12,6 +12,10 @@ import { Callout } from 'nextra/components' # Breaking changes +## Required Node.js versions + +The v17 release drops support for end-of-life versions of Node.JS, retaining support for versions 20, 22, and 24 or above. + ## Default values GraphQL schemas allow default values for input fields and arguments. Historically, GraphQL.js did not rigorously validate or coerce these