chore: drop support for Node 18, that reached End-of-Life (#11408)

This commit is contained in:
Sébastien Lorber 2025-09-12 18:48:12 +02:00 committed by GitHub
parent e8f72697a5
commit 1c484e1d59
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
45 changed files with 60 additions and 43 deletions

View File

@ -38,7 +38,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node: ['18.0', '20', '22', '24']
node: ['20.0', '20', '22', '24']
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0

View File

@ -27,7 +27,7 @@ jobs:
runs-on: windows-latest
strategy:
matrix:
node: ['18.0', '20', '22', '24']
node: ['20.0', '20', '22', '24']
steps:
- name: Support longpaths
run: git config --system core.longpaths true

View File

@ -27,7 +27,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
node: ['18.0', '20', '22', '24']
node: ['20.0', '20', '22', '24']
steps:
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0

View File

@ -37,6 +37,6 @@
"@types/supports-color": "^8.1.1"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -42,6 +42,6 @@
]
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -39,6 +39,6 @@
]
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -14,7 +14,7 @@ Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new
### What you'll need
- [Node.js](https://nodejs.org/en/download/) version 18.0 or above:
- [Node.js](https://nodejs.org/en/download/) version 20.0 or above:
- When installing Node.js, you are recommended to check all checkboxes related to dependencies.
## Generate a new site

View File

@ -45,6 +45,6 @@
"tslib": "^2.6.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -55,6 +55,6 @@
"@total-typescript/shoehorn": "^0.1.2"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -26,6 +26,6 @@
"to-vfile": "^6.1.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -29,7 +29,7 @@
"webpack": "^5.95.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
},
"peerDependencies": {
"@docusaurus/types": "*"

View File

@ -24,7 +24,7 @@
"tslib": "^2.6.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
},
"devDependencies": {
"@types/supports-color": "^8.1.1"

View File

@ -62,6 +62,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -36,6 +36,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -56,7 +56,7 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
},
"devDependencies": {
"@total-typescript/shoehorn": "^0.1.2",

View File

@ -65,6 +65,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -32,6 +32,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -25,6 +25,6 @@
"tslib": "^2.6.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -32,6 +32,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -28,6 +28,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -29,6 +29,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -28,6 +28,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -45,6 +45,6 @@
}
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -49,6 +49,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -30,6 +30,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -36,6 +36,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -32,6 +32,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -31,6 +31,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -39,6 +39,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -30,6 +30,6 @@
"to-vfile": "^6.1.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -60,6 +60,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -56,6 +56,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -42,6 +42,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -55,6 +55,6 @@
}
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -58,6 +58,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -30,6 +30,6 @@
"lodash": "^4.17.21"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -23,6 +23,6 @@
"tslib": "^2.6.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -31,6 +31,6 @@
"tmp-promise": "^3.0.3"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -41,7 +41,7 @@
"webpack": "^5.88.1"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
},
"devDependencies": {
"@types/dedent": "^0.7.0",

View File

@ -96,6 +96,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -76,6 +76,7 @@ function getDefaultDirection(localeStr: string) {
// see https://github.com/tc39/proposal-intl-locale-info
// see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/getTextInfo
// Node 18.0 implements a former version of the getTextInfo() proposal
// TODO Docusaurus v4: remove the fallback to locale.textInfo
// @ts-expect-error: The TC39 proposal was updated
const textInto = locale.getTextInfo?.() ?? locale.textInfo;
return textInto.direction;

View File

@ -31,6 +31,6 @@
"eslint": ">=6"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
}
}

View File

@ -24,7 +24,7 @@
"tslib": "^2.6.0"
},
"engines": {
"node": ">=18.0"
"node": ">=20.0"
},
"devDependencies": {
"@types/file-loader": "^5.0.1"

View File

@ -49,6 +49,12 @@ If you only use our [public API surface](#public-api-surface), you should be abl
:::
:::caution About End-of-Life Node.js versions
We may drop support for End-of-Life Node.js versions in minor Docusaurus versions. Check the [Node.js support policy](#nodejs-support) section for more details.
:::
### Patch versions {#patch-versions}
The `patch` version number is incremented on bugfixes releases.
@ -57,6 +63,16 @@ Whenever a new patch version is released, we publish:
- an exhaustive changelog entry
## Node.js support policy {#nodejs-support}
Each major version of Docusaurus supports a minimum Node.js version. This retro-compatibility will be preserved all along that release line. This runtime backward compatibility will be preserved throughout all the minor versions of the release line, except for End-of-Life Node.js versions.
:::caution Support for End-of-Life versions
On minor releases, we reserve the right to drop support for Node.js versions that reached End-of-Life ([Node.js release process and schedule](https://nodejs.org/en/about/previous-releases). **We do not consider it a Docusaurus breaking change**. We highly recommend using a maintained Node.js version. Beware that [End-of-Life Node.js versions do not receive security updates anymore](https://nodejs.org/en/blog/announcements/node-18-eol-support).
:::
## Versions {#versions}
```mdx-code-block

View File

@ -21,7 +21,7 @@ Use **[docusaurus.new](https://docusaurus.new)** to test Docusaurus immediately
## Requirements {#requirements}
- [Node.js](https://nodejs.org/en/download/) version 18.0 or above (which can be checked by running `node -v`). You can use [nvm](https://github.com/nvm-sh/nvm) to manage multiple Node.js versions on a single machine.
- [Node.js](https://nodejs.org/en/download/) version 20.0 or above (which can be checked by running `node -v`). You can use [nvm](https://github.com/nvm-sh/nvm) to manage multiple Node.js versions on a single machine.
- When installing Node.js, it is recommended to check all checkboxes related to dependencies.
## Scaffold project website {#scaffold-project-website}