chore!: Drop Node 18 and 20#9168
Conversation
| name: Test (22.x) | ||
| runs-on: ubuntu-latest | ||
| needs: prepare | ||
| strategy: | ||
| matrix: | ||
| package-name: ${{ fromJson(needs.prepare.outputs.child-workspace-package-names) }} | ||
| steps: | ||
| - name: Checkout and setup environment | ||
| uses: MetaMask/action-checkout-and-setup@v2 | ||
| with: | ||
| is-high-risk-environment: false | ||
| node-version: 20.x | ||
| node-version: 22.x | ||
| - run: yarn workspace ${{ matrix.package-name }} run test | ||
| - name: Require clean working directory | ||
| shell: bash | ||
| run: | | ||
| if ! git diff --exit-code; then | ||
| echo "Working tree dirty at end of job" | ||
| exit 1 | ||
| fi | ||
|
|
||
| test-22: | ||
| name: Test (22.x) | ||
| test-24: | ||
| name: Test (24.x) | ||
| runs-on: ubuntu-latest | ||
| needs: prepare | ||
| strategy: | ||
| matrix: | ||
| package-name: ${{ fromJson(needs.prepare.outputs.child-workspace-package-names) }} | ||
| steps: | ||
| - name: Checkout and setup environment |
| }, | ||
| "engines": { | ||
| "node": "^18.18 || >=20" | ||
| "node": ">=22" |
There was a problem hiding this comment.
Staged publishing needs at least 22.14.0 IIRC. We also don't need to support Node.js 23 and 25 (both EOL). We can support 26 (current, soon LTS) though:
| "node": ">=22" | |
| "node": "^22.14.0 || ^24 || >=26" |
There was a problem hiding this comment.
I was under the impression we wouldn't want to support 26 until it is LTS.
There was a problem hiding this comment.
I don't see a reason to not support it? It's the current version. AFAIK we supported 24 before it was LTS too in some other repositories too.
There was a problem hiding this comment.
Do we want to use 26 for build and lint then?
| @@ -182,8 +182,8 @@ jobs: | |||
| exit 1 | |||
| fi | |||
|
|
|||
| test-22: | |||
| name: Test (22.x) | |||
| test-26: | |||
| name: Test (26.x) | |||
| runs-on: ubuntu-latest | |||
| needs: prepare | |||
| strategy: | |||
| @@ -194,7 +194,7 @@ jobs: | |||
| uses: MetaMask/action-checkout-and-setup@v2 | |||
| with: | |||
| is-high-risk-environment: false | |||
| node-version: 22.x | |||
| node-version: 26.x | |||
e690510 to
402744e
Compare
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Caution MetaMask internal reviewing guidelines:
|
Explanation
Node 18 and 20 are EOL, we should not support them anymore. This PR makes a breaking change to every single package in the monorepo. This also reduces the number of jobs we need to run in CI.
References
Checklist