diff --git a/.github/workflows/build-lint-test.yml b/.github/workflows/build-lint-test.yml index 186471aae..54bb0fbdb 100644 --- a/.github/workflows/build-lint-test.yml +++ b/.github/workflows/build-lint-test.yml @@ -4,41 +4,21 @@ on: workflow_call: jobs: - prepare: - name: Prepare - runs-on: ubuntu-latest - strategy: - matrix: - node-version: [18.x, 20.x, 22.x] - outputs: - child-workspace-package-names: ${{ steps.workspace-package-names.outputs.child-workspace-package-names }} - steps: - - name: Checkout and setup environment - uses: MetaMask/action-checkout-and-setup@v1 - with: - is-high-risk-environment: true - cache-node-modules: ${{ matrix.node-version == '22.x' }} - - name: Fetch workspace package names - id: workspace-package-names - run: | - echo "child-workspace-package-names=$(yarn workspaces list --no-private --json | jq --slurp --raw-output 'map(.name) | @json')" >> "$GITHUB_OUTPUT" - shell: bash - lint: name: Lint (${{ matrix.script }}) runs-on: ubuntu-latest - needs: prepare strategy: matrix: - node-version: [22.x] + node-version: [24.x] script: - - lint + - lint:ci - constraints steps: - name: Checkout and setup environment uses: MetaMask/action-checkout-and-setup@v1 with: is-high-risk-environment: true + node-version: ${{ matrix.node-version }} - name: Run yarn ${{ matrix.script }} run: yarn "$SCRIPT" env: @@ -54,17 +34,13 @@ jobs: validate-changelog: name: Validate changelog runs-on: ubuntu-latest - needs: prepare - strategy: - matrix: - node-version: [22.x] - package-name: ${{ fromJson(needs.prepare.outputs.child-workspace-package-names) }} steps: - name: Checkout and setup environment uses: MetaMask/action-checkout-and-setup@v1 with: is-high-risk-environment: true - - run: yarn workspace ${{ matrix.package-name }} changelog:validate + node-version: 24.x + - run: yarn workspaces foreach --all --no-private --parallel run changelog:validate - name: Require clean working directory shell: bash run: | @@ -76,15 +52,15 @@ jobs: build: name: Build runs-on: ubuntu-latest - needs: prepare strategy: matrix: - node-version: [22.x] + node-version: [24.x] steps: - name: Checkout and setup environment uses: MetaMask/action-checkout-and-setup@v1 with: is-high-risk-environment: true + node-version: ${{ matrix.node-version }} - run: yarn build - name: Require clean working directory shell: bash @@ -97,16 +73,15 @@ jobs: test: name: Test runs-on: ubuntu-latest - needs: - - prepare strategy: matrix: - node-version: [18.x, 20.x, 22.x] + node-version: [22.x] steps: - name: Checkout and setup environment uses: MetaMask/action-checkout-and-setup@v1 with: is-high-risk-environment: true + node-version: ${{ matrix.node-version }} - run: yarn build - run: yarn test - name: Require clean working directory diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 297ff7020..b9b621d28 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -11,7 +11,7 @@ jobs: name: Check workflows runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Download actionlint id: download-actionlint run: bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/7fdc9630cc360ea1a469eed64ac6d78caeda1234/scripts/download-actionlint.bash) 1.6.23 diff --git a/eslint-suppressions.json b/eslint-suppressions.json index 0f9942eba..19ea8a64c 100644 --- a/eslint-suppressions.json +++ b/eslint-suppressions.json @@ -19,11 +19,6 @@ "count": 1 } }, - "packages/keyring-eth-hd/src/hd-keyring.test.ts": { - "n/no-unsupported-features/node-builtins": { - "count": 1 - } - }, "packages/keyring-eth-hd/src/hd-keyring.ts": { "no-restricted-globals": { "count": 18 diff --git a/package.json b/package.json index 2c3206fdf..2ad6eb4dc 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "create-release-branch": "create-release-branch --formatter oxfmt", "foreach": "yarn workspaces foreach --all --parallel --verbose --exclude '@metamask/accounts-monorepo' run", "lint": "yarn lint:eslint && yarn lint:misc --check && yarn constraints && yarn lint:dependencies && yarn lint:readme", + "lint:ci": "yarn lint:eslint && yarn lint:misc --check && yarn lint:dependencies && yarn lint:readme", "lint:dependencies": "yarn foreach depcheck && yarn dedupe --check", "lint:dependencies:fix": "yarn foreach depcheck && yarn dedupe", "lint:eslint": "yarn build:only-clean && yarn eslint", @@ -91,7 +92,7 @@ "ws@7.4.6": "^7.5.10" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "packageManager": "yarn@4.16.0", "lavamoat": { diff --git a/packages/account-api/CHANGELOG.md b/packages/account-api/CHANGELOG.md index e81b4b3d0..0d3bae8dc 100644 --- a/packages/account-api/CHANGELOG.md +++ b/packages/account-api/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + ## [1.1.0] ### Added diff --git a/packages/account-api/package.json b/packages/account-api/package.json index 8fae33c3f..f4d67b7e7 100644 --- a/packages/account-api/package.json +++ b/packages/account-api/package.json @@ -96,7 +96,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/hw-wallet-sdk/CHANGELOG.md b/packages/hw-wallet-sdk/CHANGELOG.md index 3b7c14580..cfcac59fb 100644 --- a/packages/hw-wallet-sdk/CHANGELOG.md +++ b/packages/hw-wallet-sdk/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + ## [0.11.0] ### Added diff --git a/packages/hw-wallet-sdk/package.json b/packages/hw-wallet-sdk/package.json index ea5760e55..b8c30e386 100644 --- a/packages/hw-wallet-sdk/package.json +++ b/packages/hw-wallet-sdk/package.json @@ -79,7 +79,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-api/CHANGELOG.md b/packages/keyring-api/CHANGELOG.md index fbb94573c..d2b998cc5 100644 --- a/packages/keyring-api/CHANGELOG.md +++ b/packages/keyring-api/CHANGELOG.md @@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) - Use `sensitive` struct for `privateKey` in `PrivateKeyExportedAccountStruct` ([#577](https://github.com/MetaMask/accounts/pull/577)) - This ensures the private key value is always redacted in case of validation errors. - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) diff --git a/packages/keyring-api/package.json b/packages/keyring-api/package.json index 74f738b61..00f08cf40 100644 --- a/packages/keyring-api/package.json +++ b/packages/keyring-api/package.json @@ -97,7 +97,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-eth-hd/CHANGELOG.md b/packages/keyring-eth-hd/CHANGELOG.md index 5c65edb0c..72e33b617 100644 --- a/packages/keyring-eth-hd/CHANGELOG.md +++ b/packages/keyring-eth-hd/CHANGELOG.md @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + - Bump `@metamask/keyring-sdk` from `^2.0.2` to `^2.2.0` ([#544](https://github.com/MetaMask/accounts/pull/544), [#546](https://github.com/MetaMask/accounts/pull/546), [#562](https://github.com/MetaMask/accounts/pull/562)) - Bump `@metamask/keyring-utils` from `^3.2.0` to `^3.3.1` ([#544](https://github.com/MetaMask/accounts/pull/544), [#546](https://github.com/MetaMask/accounts/pull/546)) - Bump `@metamask/keyring-api` from `^23.1.0` to `^23.5.0` ([#562](https://github.com/MetaMask/accounts/pull/562), [#569](https://github.com/MetaMask/accounts/pull/569), [#583](https://github.com/MetaMask/accounts/pull/583), [#587](https://github.com/MetaMask/accounts/pull/587)) diff --git a/packages/keyring-eth-hd/package.json b/packages/keyring-eth-hd/package.json index 5508dbd7e..3c5d766e9 100644 --- a/packages/keyring-eth-hd/package.json +++ b/packages/keyring-eth-hd/package.json @@ -92,7 +92,7 @@ "typescript": "~5.3.3" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-eth-ledger-bridge/CHANGELOG.md b/packages/keyring-eth-ledger-bridge/CHANGELOG.md index 07bf8a911..a5fc22372 100644 --- a/packages/keyring-eth-ledger-bridge/CHANGELOG.md +++ b/packages/keyring-eth-ledger-bridge/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + ## [12.4.0] ### Added diff --git a/packages/keyring-eth-ledger-bridge/package.json b/packages/keyring-eth-ledger-bridge/package.json index 06f24ea01..8147df24d 100644 --- a/packages/keyring-eth-ledger-bridge/package.json +++ b/packages/keyring-eth-ledger-bridge/package.json @@ -112,7 +112,7 @@ "typescript": "~5.3.3" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-eth-money/CHANGELOG.md b/packages/keyring-eth-money/CHANGELOG.md index c9a96bdfe..5aff29870 100644 --- a/packages/keyring-eth-money/CHANGELOG.md +++ b/packages/keyring-eth-money/CHANGELOG.md @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + - Bump `@metamask/keyring-api` from `^23.1.0` to `^23.5.0` ([#562](https://github.com/MetaMask/accounts/pull/562), [#569](https://github.com/MetaMask/accounts/pull/569), [#583](https://github.com/MetaMask/accounts/pull/583), [#587](https://github.com/MetaMask/accounts/pull/587)) - Bump `@metamask/keyring-sdk` from `^2.1.1` to `^2.2.0` ([#562](https://github.com/MetaMask/accounts/pull/562)) - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) diff --git a/packages/keyring-eth-money/package.json b/packages/keyring-eth-money/package.json index 42a5b56b8..79ada7202 100644 --- a/packages/keyring-eth-money/package.json +++ b/packages/keyring-eth-money/package.json @@ -87,7 +87,7 @@ "typescript": "~5.3.3" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-eth-qr/CHANGELOG.md b/packages/keyring-eth-qr/CHANGELOG.md index edbc296bd..a6a99f5c4 100644 --- a/packages/keyring-eth-qr/CHANGELOG.md +++ b/packages/keyring-eth-qr/CHANGELOG.md @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + - Bump `@metamask/keyring-api` from `^23.1.0` to `^23.5.0` ([#562](https://github.com/MetaMask/accounts/pull/562), [#569](https://github.com/MetaMask/accounts/pull/569), [#583](https://github.com/MetaMask/accounts/pull/583), [#587](https://github.com/MetaMask/accounts/pull/587)) - Bump `@metamask/keyring-sdk` from `^2.1.1` to `^2.2.0` ([#562](https://github.com/MetaMask/accounts/pull/562)) diff --git a/packages/keyring-eth-qr/package.json b/packages/keyring-eth-qr/package.json index c69290d27..ed9bb7be3 100644 --- a/packages/keyring-eth-qr/package.json +++ b/packages/keyring-eth-qr/package.json @@ -102,7 +102,7 @@ "typescript": "~5.3.3" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-eth-simple/CHANGELOG.md b/packages/keyring-eth-simple/CHANGELOG.md index b6e0ea303..72360a364 100644 --- a/packages/keyring-eth-simple/CHANGELOG.md +++ b/packages/keyring-eth-simple/CHANGELOG.md @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + - Bump `@metamask/keyring-sdk` from `^2.0.2` to `^2.2.0` ([#544](https://github.com/MetaMask/accounts/pull/544), [#546](https://github.com/MetaMask/accounts/pull/546), [#562](https://github.com/MetaMask/accounts/pull/562)) - Bump `@metamask/keyring-api` from `^23.1.0` to `^23.5.0` ([#562](https://github.com/MetaMask/accounts/pull/562), [#569](https://github.com/MetaMask/accounts/pull/569), [#583](https://github.com/MetaMask/accounts/pull/583), [#587](https://github.com/MetaMask/accounts/pull/587)) diff --git a/packages/keyring-eth-simple/package.json b/packages/keyring-eth-simple/package.json index c6eb7a9ea..2591b6242 100644 --- a/packages/keyring-eth-simple/package.json +++ b/packages/keyring-eth-simple/package.json @@ -96,7 +96,7 @@ "typescript": "~5.3.3" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-eth-trezor/CHANGELOG.md b/packages/keyring-eth-trezor/CHANGELOG.md index 080654525..d7e485a6b 100644 --- a/packages/keyring-eth-trezor/CHANGELOG.md +++ b/packages/keyring-eth-trezor/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) - Bump `@metamask/hw-wallet-sdk` from `^0.10.0` to `^0.11.0` ([#599](https://github.com/MetaMask/accounts/pull/599)) ## [10.1.1] diff --git a/packages/keyring-eth-trezor/package.json b/packages/keyring-eth-trezor/package.json index d0cf424e8..b3e5f76ed 100644 --- a/packages/keyring-eth-trezor/package.json +++ b/packages/keyring-eth-trezor/package.json @@ -107,7 +107,7 @@ "typescript": "~5.3.3" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "installConfig": { "hoistingLimits": "workspaces" diff --git a/packages/keyring-internal-api/CHANGELOG.md b/packages/keyring-internal-api/CHANGELOG.md index 8ec8c9f00..a511ac167 100644 --- a/packages/keyring-internal-api/CHANGELOG.md +++ b/packages/keyring-internal-api/CHANGELOG.md @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + - Bump `@metamask/keyring-utils` from `^3.2.0` to `^3.3.1` ([#544](https://github.com/MetaMask/accounts/pull/544), [#546](https://github.com/MetaMask/accounts/pull/546)) - Bump `@metamask/keyring-api` from `^23.1.0` to `^23.5.0` ([#562](https://github.com/MetaMask/accounts/pull/562), [#569](https://github.com/MetaMask/accounts/pull/569), [#583](https://github.com/MetaMask/accounts/pull/583), [#587](https://github.com/MetaMask/accounts/pull/587)) - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) diff --git a/packages/keyring-internal-api/package.json b/packages/keyring-internal-api/package.json index 9dd17f9ce..4b6889033 100644 --- a/packages/keyring-internal-api/package.json +++ b/packages/keyring-internal-api/package.json @@ -84,7 +84,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-internal-snap-client/CHANGELOG.md b/packages/keyring-internal-snap-client/CHANGELOG.md index 35dec22f6..6aee23c89 100644 --- a/packages/keyring-internal-snap-client/CHANGELOG.md +++ b/packages/keyring-internal-snap-client/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + ## [10.0.5] ### Changed diff --git a/packages/keyring-internal-snap-client/package.json b/packages/keyring-internal-snap-client/package.json index 42aebeada..ad24cc50f 100644 --- a/packages/keyring-internal-snap-client/package.json +++ b/packages/keyring-internal-snap-client/package.json @@ -101,7 +101,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-sdk/CHANGELOG.md b/packages/keyring-sdk/CHANGELOG.md index c1c02ef98..2f6cb8de0 100644 --- a/packages/keyring-sdk/CHANGELOG.md +++ b/packages/keyring-sdk/CHANGELOG.md @@ -14,6 +14,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) + - Bump `@metamask/keyring-api` from `^23.2.0` to `^23.5.0` ([#569](https://github.com/MetaMask/accounts/pull/569), [#583](https://github.com/MetaMask/accounts/pull/583), [#587](https://github.com/MetaMask/accounts/pull/587)) - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) diff --git a/packages/keyring-sdk/package.json b/packages/keyring-sdk/package.json index 97a88cd2e..2cf7fbb89 100644 --- a/packages/keyring-sdk/package.json +++ b/packages/keyring-sdk/package.json @@ -103,7 +103,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-snap-bridge/CHANGELOG.md b/packages/keyring-snap-bridge/CHANGELOG.md index a58fd1fce..e262e64d8 100644 --- a/packages/keyring-snap-bridge/CHANGELOG.md +++ b/packages/keyring-snap-bridge/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) ## [23.0.1] diff --git a/packages/keyring-snap-bridge/package.json b/packages/keyring-snap-bridge/package.json index 145ff3531..fc16c7c53 100644 --- a/packages/keyring-snap-bridge/package.json +++ b/packages/keyring-snap-bridge/package.json @@ -112,7 +112,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-snap-client/CHANGELOG.md b/packages/keyring-snap-client/CHANGELOG.md index 1639df06e..675ed8ea4 100644 --- a/packages/keyring-snap-client/CHANGELOG.md +++ b/packages/keyring-snap-client/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) ## [9.2.0] diff --git a/packages/keyring-snap-client/package.json b/packages/keyring-snap-client/package.json index 5d3ce78e7..33f7add14 100644 --- a/packages/keyring-snap-client/package.json +++ b/packages/keyring-snap-client/package.json @@ -103,7 +103,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-snap-sdk/CHANGELOG.md b/packages/keyring-snap-sdk/CHANGELOG.md index 0c03c9a73..d3e8e502d 100644 --- a/packages/keyring-snap-sdk/CHANGELOG.md +++ b/packages/keyring-snap-sdk/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) ## [9.2.0] diff --git a/packages/keyring-snap-sdk/package.json b/packages/keyring-snap-sdk/package.json index 9694e65f4..6d2324a5b 100644 --- a/packages/keyring-snap-sdk/package.json +++ b/packages/keyring-snap-sdk/package.json @@ -103,7 +103,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/packages/keyring-utils/CHANGELOG.md b/packages/keyring-utils/CHANGELOG.md index 967f3be8d..cd3e6fbf3 100644 --- a/packages/keyring-utils/CHANGELOG.md +++ b/packages/keyring-utils/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Drop support for Node.js v18 and v20; minimum version is now v22 ([#593](https://github.com/MetaMask/accounts/pull/593)) - Bump `@metamask/superstruct` from `^3.3.0` to `^3.4.0` ([#577](https://github.com/MetaMask/accounts/pull/577)) ### Removed diff --git a/packages/keyring-utils/package.json b/packages/keyring-utils/package.json index 98f3efc73..3c5938d33 100644 --- a/packages/keyring-utils/package.json +++ b/packages/keyring-utils/package.json @@ -85,7 +85,7 @@ "directory": "src" }, "engines": { - "node": "^18.18 || >=20" + "node": ">=22" }, "lavamoat": { "allowScripts": { diff --git a/yarn.config.cjs b/yarn.config.cjs index 6c0dbd2ba..9ff9bdd97 100644 --- a/yarn.config.cjs +++ b/yarn.config.cjs @@ -239,8 +239,8 @@ module.exports = defineConfig({ expectWorkspaceField(workspace, 'packageManager', 'yarn@4.16.0'); } - // All packages must specify a minimum Node.js version of 18.18. - expectWorkspaceField(workspace, 'engines.node', '^18.18 || >=20'); + // All packages must specify a minimum Node.js version of 22. + expectWorkspaceField(workspace, 'engines.node', '>=22'); // All non-root public packages should be published to the NPM registry; // all non-root private packages should not.