diff --git a/packages/account-tree-controller/CHANGELOG.md b/packages/account-tree-controller/CHANGELOG.md index 8ae4f22d31c..a0256297215 100644 --- a/packages/account-tree-controller/CHANGELOG.md +++ b/packages/account-tree-controller/CHANGELOG.md @@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/multichain-account-service` (^4.0.0) + - `@metamask/profile-sync-controller` (^27.0.0) + - `@metamask/snaps-controllers` (^14.0.1) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [4.0.0] ### Changed diff --git a/packages/account-tree-controller/package.json b/packages/account-tree-controller/package.json index 4b994659bf0..f478f3bed42 100644 --- a/packages/account-tree-controller/package.json +++ b/packages/account-tree-controller/package.json @@ -48,8 +48,13 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/accounts-controller": "^35.0.0", "@metamask/base-controller": "^9.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/multichain-account-service": "^4.0.0", + "@metamask/profile-sync-controller": "^27.0.0", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", "@metamask/superstruct": "^3.1.0", @@ -59,14 +64,9 @@ }, "devDependencies": { "@metamask/account-api": "^0.12.0", - "@metamask/accounts-controller": "^35.0.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-api": "^21.0.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/multichain-account-service": "^4.0.0", - "@metamask/profile-sync-controller": "^27.0.0", "@metamask/providers": "^22.1.0", - "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -78,13 +78,7 @@ "webextension-polyfill": "^0.12.0" }, "peerDependencies": { - "@metamask/account-api": "^0.12.0", - "@metamask/accounts-controller": "^35.0.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/multichain-account-service": "^4.0.0", - "@metamask/profile-sync-controller": "^27.0.0", "@metamask/providers": "^22.0.0", - "@metamask/snaps-controllers": "^14.0.0", "webextension-polyfill": "^0.10.0 || ^0.11.0 || ^0.12.0" }, "engines": { diff --git a/packages/accounts-controller/CHANGELOG.md b/packages/accounts-controller/CHANGELOG.md index fa1e3132060..ec8fddae2af 100644 --- a/packages/accounts-controller/CHANGELOG.md +++ b/packages/accounts-controller/CHANGELOG.md @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/snaps-controllers` (^14.0.1) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [35.0.0] ### Changed diff --git a/packages/accounts-controller/package.json b/packages/accounts-controller/package.json index dde00cdb34b..2d48fc773d8 100644 --- a/packages/accounts-controller/package.json +++ b/packages/accounts-controller/package.json @@ -52,9 +52,12 @@ "@metamask/base-controller": "^9.0.0", "@metamask/eth-snap-keyring": "^18.0.0", "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/keyring-internal-api": "^9.0.0", "@metamask/keyring-utils": "^3.1.0", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", "@metamask/superstruct": "^3.1.0", @@ -68,10 +71,7 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@metamask/controller-utils": "^11.16.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/network-controller": "^26.0.0", "@metamask/providers": "^22.1.0", - "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "@types/readable-stream": "^2.3.0", @@ -83,10 +83,7 @@ "webextension-polyfill": "^0.12.0" }, "peerDependencies": { - "@metamask/keyring-controller": "^25.0.0", - "@metamask/network-controller": "^26.0.0", "@metamask/providers": "^22.0.0", - "@metamask/snaps-controllers": "^14.0.0", "webextension-polyfill": "^0.10.0 || ^0.11.0 || ^0.12.0" }, "engines": { diff --git a/packages/assets-controllers/CHANGELOG.md b/packages/assets-controllers/CHANGELOG.md index 2648a7e0d6b..f6b2681307f 100644 --- a/packages/assets-controllers/CHANGELOG.md +++ b/packages/assets-controllers/CHANGELOG.md @@ -16,6 +16,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - JWT token is included in `Authorization: Bearer ` header when provided - Backward compatible: token parameter is optional and APIs work without authentication +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/account-tree-controller` (^4.0.0) + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/approval-controller` (^8.0.0) + - `@metamask/core-backend` (^5.0.0) + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/multichain-account-service` (^4.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/permission-controller` (^12.1.1) + - `@metamask/phishing-controller` (^16.1.0) + - `@metamask/preferences-controller` (^22.0.0) + - `@metamask/profile-sync-controller` (^27.0.0) + - `@metamask/snaps-controllers` (^14.0.1) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ### Fixed - `TokenBalancesController`: state inconsistency by ensuring all account addresses are stored in lowercase format ([#7216](https://github.com/MetaMask/core/pull/7216)) diff --git a/packages/assets-controllers/package.json b/packages/assets-controllers/package.json index 3d682115d5c..6dc332d6375 100644 --- a/packages/assets-controllers/package.json +++ b/packages/assets-controllers/package.json @@ -55,17 +55,30 @@ "@ethersproject/contracts": "^5.7.0", "@ethersproject/providers": "^5.7.0", "@metamask/abi-utils": "^2.0.3", + "@metamask/account-tree-controller": "^4.0.0", + "@metamask/accounts-controller": "^35.0.0", + "@metamask/approval-controller": "^8.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/contract-metadata": "^2.4.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/core-backend": "^5.0.0", "@metamask/eth-query": "^4.0.0", "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", "@metamask/metamask-eth-abis": "^3.1.1", + "@metamask/multichain-account-service": "^4.0.0", + "@metamask/network-controller": "^26.0.0", + "@metamask/permission-controller": "^12.1.1", + "@metamask/phishing-controller": "^16.1.0", "@metamask/polling-controller": "^16.0.0", + "@metamask/preferences-controller": "^22.0.0", + "@metamask/profile-sync-controller": "^27.0.0", "@metamask/rpc-errors": "^7.0.2", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "@types/bn.js": "^5.1.5", "@types/uuid": "^8.3.0", @@ -82,24 +95,11 @@ "devDependencies": { "@babel/runtime": "^7.23.9", "@metamask/account-api": "^0.12.0", - "@metamask/account-tree-controller": "^4.0.0", - "@metamask/accounts-controller": "^35.0.0", - "@metamask/approval-controller": "^8.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/core-backend": "^5.0.0", "@metamask/ethjs-provider-http": "^0.3.0", - "@metamask/keyring-controller": "^25.0.0", "@metamask/keyring-internal-api": "^9.0.0", "@metamask/keyring-snap-client": "^8.0.0", - "@metamask/multichain-account-service": "^4.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/permission-controller": "^12.1.1", - "@metamask/phishing-controller": "^16.1.0", - "@metamask/preferences-controller": "^22.0.0", - "@metamask/profile-sync-controller": "^27.0.0", "@metamask/providers": "^22.1.0", - "@metamask/snaps-controllers": "^14.0.1", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "@types/lodash": "^4.14.191", @@ -116,19 +116,7 @@ "webextension-polyfill": "^0.12.0" }, "peerDependencies": { - "@metamask/account-tree-controller": "^4.0.0", - "@metamask/accounts-controller": "^35.0.0", - "@metamask/approval-controller": "^8.0.0", - "@metamask/core-backend": "^5.0.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/permission-controller": "^12.0.0", - "@metamask/phishing-controller": "^16.0.0", - "@metamask/preferences-controller": "^22.0.0", - "@metamask/profile-sync-controller": "^27.0.0", "@metamask/providers": "^22.0.0", - "@metamask/snaps-controllers": "^14.0.0", - "@metamask/transaction-controller": "^62.0.0", "webextension-polyfill": "^0.10.0 || ^0.11.0 || ^0.12.0" }, "engines": { diff --git a/packages/bridge-controller/CHANGELOG.md b/packages/bridge-controller/CHANGELOG.md index 44213c0345a..d1e56471fde 100644 --- a/packages/bridge-controller/CHANGELOG.md +++ b/packages/bridge-controller/CHANGELOG.md @@ -7,6 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/assets-controllers` (^91.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/remote-feature-flag-controller` (^2.0.1) + - `@metamask/snaps-controllers` (^14.0.0) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [63.0.0] ### Changed diff --git a/packages/bridge-controller/package.json b/packages/bridge-controller/package.json index d9cc2fe8fce..6d867d50923 100644 --- a/packages/bridge-controller/package.json +++ b/packages/bridge-controller/package.json @@ -53,6 +53,8 @@ "@ethersproject/constants": "^5.7.0", "@ethersproject/contracts": "^5.7.0", "@ethersproject/providers": "^5.7.0", + "@metamask/accounts-controller": "^35.0.0", + "@metamask/assets-controllers": "^91.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/gas-fee-controller": "^26.0.0", @@ -60,22 +62,20 @@ "@metamask/messenger": "^0.3.0", "@metamask/metamask-eth-abis": "^3.1.1", "@metamask/multichain-network-controller": "^3.0.0", + "@metamask/network-controller": "^26.0.0", "@metamask/polling-controller": "^16.0.0", + "@metamask/remote-feature-flag-controller": "^2.0.1", + "@metamask/snaps-controllers": "^14.0.1", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "bignumber.js": "^9.1.2", "reselect": "^5.1.1", "uuid": "^8.3.2" }, "devDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/assets-controllers": "^91.0.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/eth-json-rpc-provider": "^6.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/remote-feature-flag-controller": "^2.0.1", - "@metamask/snaps-controllers": "^14.0.1", "@metamask/superstruct": "^3.1.0", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -88,14 +88,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/assets-controllers": "^91.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/remote-feature-flag-controller": "^2.0.0", - "@metamask/snaps-controllers": "^14.0.0", - "@metamask/transaction-controller": "^62.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/bridge-status-controller/CHANGELOG.md b/packages/bridge-status-controller/CHANGELOG.md index 23e726f67ef..338346f1718 100644 --- a/packages/bridge-status-controller/CHANGELOG.md +++ b/packages/bridge-status-controller/CHANGELOG.md @@ -7,6 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/bridge-controller` (^63.0.0) + - `@metamask/gas-fee-controller` (^26.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/snaps-controllers` (^14.0.1) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [63.0.0] ### Changed diff --git a/packages/bridge-status-controller/package.json b/packages/bridge-status-controller/package.json index c3bb33bbcab..6b27ebb3bc0 100644 --- a/packages/bridge-status-controller/package.json +++ b/packages/bridge-status-controller/package.json @@ -48,22 +48,22 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/accounts-controller": "^35.0.0", "@metamask/base-controller": "^9.0.0", + "@metamask/bridge-controller": "^63.0.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/gas-fee-controller": "^26.0.0", + "@metamask/network-controller": "^26.0.0", "@metamask/polling-controller": "^16.0.0", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/superstruct": "^3.1.0", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "bignumber.js": "^9.1.2", "uuid": "^8.3.2" }, "devDependencies": { - "@metamask/accounts-controller": "^35.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/bridge-controller": "^63.0.0", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/snaps-controllers": "^14.0.1", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -76,14 +76,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/bridge-controller": "^63.0.0", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/snaps-controllers": "^14.0.0", - "@metamask/transaction-controller": "^62.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/core-backend/CHANGELOG.md b/packages/core-backend/CHANGELOG.md index 8cb019cf086..bb24b8e6207 100644 --- a/packages/core-backend/CHANGELOG.md +++ b/packages/core-backend/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/keyring-controller` (^25.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [5.0.0] ### Changed diff --git a/packages/core-backend/package.json b/packages/core-backend/package.json index dfcc7b6ccda..40c9d67c4ca 100644 --- a/packages/core-backend/package.json +++ b/packages/core-backend/package.json @@ -48,16 +48,16 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/accounts-controller": "^35.0.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", "@metamask/profile-sync-controller": "^27.0.0", "@metamask/utils": "^11.8.1", "uuid": "^8.3.2" }, "devDependencies": { - "@metamask/accounts-controller": "^35.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -68,10 +68,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/keyring-controller": "^25.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/delegation-controller/CHANGELOG.md b/packages/delegation-controller/CHANGELOG.md index cc90a09474d..8a76879164a 100644 --- a/packages/delegation-controller/CHANGELOG.md +++ b/packages/delegation-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/keyring-controller` (^25.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [2.0.0] ### Changed diff --git a/packages/delegation-controller/package.json b/packages/delegation-controller/package.json index 6665b3bc5b3..f0d85b6dfd2 100644 --- a/packages/delegation-controller/package.json +++ b/packages/delegation-controller/package.json @@ -48,14 +48,14 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/accounts-controller": "^35.0.0", "@metamask/base-controller": "^9.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", "@metamask/utils": "^11.8.1" }, "devDependencies": { - "@metamask/accounts-controller": "^35.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -65,10 +65,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/keyring-controller": "^25.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/earn-controller/CHANGELOG.md b/packages/earn-controller/CHANGELOG.md index e2652af9067..e6a2cdd3744 100644 --- a/packages/earn-controller/CHANGELOG.md +++ b/packages/earn-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/account-tree-controller` (^4.0.0) + - `@metamask/network-controller` (^26.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [11.0.0] ### Changed diff --git a/packages/earn-controller/package.json b/packages/earn-controller/package.json index a1e40cba909..5e21f0c6d2c 100644 --- a/packages/earn-controller/package.json +++ b/packages/earn-controller/package.json @@ -50,17 +50,17 @@ "dependencies": { "@ethersproject/bignumber": "^5.7.0", "@ethersproject/providers": "^5.7.0", + "@metamask/account-tree-controller": "^4.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/keyring-api": "^21.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", "@metamask/stake-sdk": "^3.2.1", "reselect": "^5.1.1" }, "devDependencies": { - "@metamask/account-tree-controller": "^4.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/network-controller": "^26.0.0", "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", @@ -71,10 +71,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/account-tree-controller": "^4.0.0", - "@metamask/network-controller": "^26.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/ens-controller/CHANGELOG.md b/packages/ens-controller/CHANGELOG.md index 3ac0ff7eed6..02bb834dd64 100644 --- a/packages/ens-controller/CHANGELOG.md +++ b/packages/ens-controller/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/network-controller` (^26.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [19.0.0] ### Changed diff --git a/packages/ens-controller/package.json b/packages/ens-controller/package.json index e716f41f3ab..65fb212fcfe 100644 --- a/packages/ens-controller/package.json +++ b/packages/ens-controller/package.json @@ -52,12 +52,12 @@ "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", "@metamask/utils": "^11.8.1", "punycode": "^2.1.1" }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/network-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -67,9 +67,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/network-controller": "^26.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/gas-fee-controller/CHANGELOG.md b/packages/gas-fee-controller/CHANGELOG.md index 06e66f10a13..f800eb2a077 100644 --- a/packages/gas-fee-controller/CHANGELOG.md +++ b/packages/gas-fee-controller/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/network-controller` (^26.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [26.0.0] ### Changed diff --git a/packages/gas-fee-controller/package.json b/packages/gas-fee-controller/package.json index 2df9a6e8d5c..1c7c7c0367f 100644 --- a/packages/gas-fee-controller/package.json +++ b/packages/gas-fee-controller/package.json @@ -52,6 +52,7 @@ "@metamask/controller-utils": "^11.16.0", "@metamask/eth-query": "^4.0.0", "@metamask/ethjs-unit": "^0.3.0", + "@metamask/network-controller": "^26.0.0", "@metamask/polling-controller": "^16.0.0", "@metamask/utils": "^11.8.1", "@types/bn.js": "^5.1.5", @@ -62,7 +63,6 @@ "devDependencies": { "@babel/runtime": "^7.23.9", "@metamask/auto-changelog": "^3.4.4", - "@metamask/network-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "@types/jest-when": "^2.7.3", @@ -77,8 +77,7 @@ "typescript": "~5.3.3" }, "peerDependencies": { - "@babel/runtime": "^7.0.0", - "@metamask/network-controller": "^26.0.0" + "@babel/runtime": "^7.0.0" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/gator-permissions-controller/CHANGELOG.md b/packages/gator-permissions-controller/CHANGELOG.md index 31d1994b875..38cf0aaad74 100644 --- a/packages/gator-permissions-controller/CHANGELOG.md +++ b/packages/gator-permissions-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/snaps-controllers` (^14.0.1) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [0.6.0] ### Changed diff --git a/packages/gator-permissions-controller/package.json b/packages/gator-permissions-controller/package.json index 76cfb7d50f9..04e139dfbae 100644 --- a/packages/gator-permissions-controller/package.json +++ b/packages/gator-permissions-controller/package.json @@ -53,16 +53,16 @@ "@metamask/delegation-core": "^0.2.0", "@metamask/delegation-deployments": "^0.12.0", "@metamask/messenger": "^0.3.0", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1" }, "devDependencies": { "@lavamoat/allow-scripts": "^3.0.4", "@lavamoat/preinstall-always-fail": "^2.1.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/snaps-controllers": "^14.0.1", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -72,10 +72,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/snaps-controllers": "^14.0.1", - "@metamask/transaction-controller": "^62.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/multichain-account-service/CHANGELOG.md b/packages/multichain-account-service/CHANGELOG.md index 50e1829670e..c11bf2d68bf 100644 --- a/packages/multichain-account-service/CHANGELOG.md +++ b/packages/multichain-account-service/CHANGELOG.md @@ -7,6 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/error-reporting-service` (^3.0.0) + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/snaps-controllers` (^14.0.1) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [4.0.0] ### Changed diff --git a/packages/multichain-account-service/package.json b/packages/multichain-account-service/package.json index e902a1fd1e8..e4f73a19700 100644 --- a/packages/multichain-account-service/package.json +++ b/packages/multichain-account-service/package.json @@ -49,14 +49,18 @@ }, "dependencies": { "@ethereumjs/util": "^9.1.0", + "@metamask/accounts-controller": "^35.0.0", "@metamask/base-controller": "^9.0.0", + "@metamask/error-reporting-service": "^3.0.0", "@metamask/eth-snap-keyring": "^18.0.0", "@metamask/key-tree": "^10.1.1", "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/keyring-internal-api": "^9.0.0", "@metamask/keyring-snap-client": "^8.0.0", "@metamask/keyring-utils": "^3.1.0", "@metamask/messenger": "^0.3.0", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", "@metamask/superstruct": "^3.1.0", @@ -65,13 +69,9 @@ }, "devDependencies": { "@metamask/account-api": "^0.12.0", - "@metamask/accounts-controller": "^35.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/error-reporting-service": "^3.0.0", "@metamask/eth-hd-keyring": "^13.0.0", - "@metamask/keyring-controller": "^25.0.0", "@metamask/providers": "^22.1.0", - "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "@types/uuid": "^8.3.0", @@ -86,11 +86,7 @@ }, "peerDependencies": { "@metamask/account-api": "^0.12.0", - "@metamask/accounts-controller": "^35.0.0", - "@metamask/error-reporting-service": "^3.0.0", - "@metamask/keyring-controller": "^25.0.0", "@metamask/providers": "^22.0.0", - "@metamask/snaps-controllers": "^14.0.0", "webextension-polyfill": "^0.10.0 || ^0.11.0 || ^0.12.0" }, "engines": { diff --git a/packages/multichain-network-controller/CHANGELOG.md b/packages/multichain-network-controller/CHANGELOG.md index bdf75a247d2..fc34c77c02b 100644 --- a/packages/multichain-network-controller/CHANGELOG.md +++ b/packages/multichain-network-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/network-controller` (^26.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [3.0.0] ### Changed diff --git a/packages/multichain-network-controller/package.json b/packages/multichain-network-controller/package.json index b1525f87a4e..81e13fad268 100644 --- a/packages/multichain-network-controller/package.json +++ b/packages/multichain-network-controller/package.json @@ -48,21 +48,21 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/accounts-controller": "^35.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/keyring-api": "^21.0.0", "@metamask/keyring-internal-api": "^9.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^11.8.1", "@solana/addresses": "^2.0.0", "lodash": "^4.17.21" }, "devDependencies": { - "@metamask/accounts-controller": "^35.0.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-controller": "^25.0.0", - "@metamask/network-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "@types/lodash": "^4.14.191", @@ -76,10 +76,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/network-controller": "^26.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/multichain-transactions-controller/CHANGELOG.md b/packages/multichain-transactions-controller/CHANGELOG.md index bab6a40b70b..0b1531f4693 100644 --- a/packages/multichain-transactions-controller/CHANGELOG.md +++ b/packages/multichain-transactions-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/snaps-controllers` (^14.0.1) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [7.0.0] ### Changed diff --git a/packages/multichain-transactions-controller/package.json b/packages/multichain-transactions-controller/package.json index 27ee50fe9fb..b3410286456 100644 --- a/packages/multichain-transactions-controller/package.json +++ b/packages/multichain-transactions-controller/package.json @@ -48,12 +48,14 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/accounts-controller": "^35.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/keyring-api": "^21.0.0", "@metamask/keyring-internal-api": "^9.0.0", "@metamask/keyring-snap-client": "^8.0.0", "@metamask/messenger": "^0.3.0", "@metamask/polling-controller": "^16.0.0", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", "@metamask/utils": "^11.8.1", @@ -62,10 +64,8 @@ "uuid": "^8.3.2" }, "devDependencies": { - "@metamask/accounts-controller": "^35.0.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-controller": "^25.0.0", - "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -75,10 +75,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/snaps-controllers": "^14.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/network-controller/CHANGELOG.md b/packages/network-controller/CHANGELOG.md index dd35d64d295..2946597ef25 100644 --- a/packages/network-controller/CHANGELOG.md +++ b/packages/network-controller/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/error-reporting-service` (^3.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [26.0.0] ### Added diff --git a/packages/network-controller/package.json b/packages/network-controller/package.json index 89ecd3be9a6..4c1e0e86d6c 100644 --- a/packages/network-controller/package.json +++ b/packages/network-controller/package.json @@ -50,6 +50,7 @@ "dependencies": { "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/error-reporting-service": "^3.0.0", "@metamask/eth-block-tracker": "^15.0.0", "@metamask/eth-json-rpc-infura": "^10.3.0", "@metamask/eth-json-rpc-middleware": "^22.0.0", @@ -71,7 +72,6 @@ "devDependencies": { "@json-rpc-specification/meta-schema": "^1.0.6", "@metamask/auto-changelog": "^3.4.4", - "@metamask/error-reporting-service": "^3.0.0", "@ts-bridge/cli": "^0.6.4", "@types/deep-freeze-strict": "^1.1.0", "@types/jest": "^27.4.1", @@ -91,9 +91,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/error-reporting-service": "^3.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/network-enablement-controller/CHANGELOG.md b/packages/network-enablement-controller/CHANGELOG.md index 4f822cd7362..6ed8496a3ec 100644 --- a/packages/network-enablement-controller/CHANGELOG.md +++ b/packages/network-enablement-controller/CHANGELOG.md @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/multichain-network-controller` (^3.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [4.0.0] ### Changed diff --git a/packages/network-enablement-controller/package.json b/packages/network-enablement-controller/package.json index 45bc441d176..fa23e120590 100644 --- a/packages/network-enablement-controller/package.json +++ b/packages/network-enablement-controller/package.json @@ -52,14 +52,14 @@ "@metamask/controller-utils": "^11.16.0", "@metamask/keyring-api": "^21.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/multichain-network-controller": "^3.0.0", + "@metamask/network-controller": "^26.0.0", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "reselect": "^5.1.1" }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/multichain-network-controller": "^3.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -70,11 +70,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/multichain-network-controller": "^3.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/transaction-controller": "^62.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/notification-services-controller/CHANGELOG.md b/packages/notification-services-controller/CHANGELOG.md index 4ac09635241..73428f309f2 100644 --- a/packages/notification-services-controller/CHANGELOG.md +++ b/packages/notification-services-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/profile-sync-controller` (^27.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [21.0.0] ### Changed diff --git a/packages/notification-services-controller/package.json b/packages/notification-services-controller/package.json index 806db799620..88bb8514c25 100644 --- a/packages/notification-services-controller/package.json +++ b/packages/notification-services-controller/package.json @@ -113,7 +113,9 @@ "@contentful/rich-text-html-renderer": "^16.5.2", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/profile-sync-controller": "^27.0.0", "@metamask/utils": "^11.8.1", "bignumber.js": "^9.1.2", "firebase": "^11.2.0", @@ -125,8 +127,6 @@ "@lavamoat/allow-scripts": "^3.0.4", "@lavamoat/preinstall-always-fail": "^2.1.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/profile-sync-controller": "^27.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "@types/readable-stream": "^2.3.0", @@ -141,10 +141,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/keyring-controller": "^25.0.0", - "@metamask/profile-sync-controller": "^27.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/permission-controller/CHANGELOG.md b/packages/permission-controller/CHANGELOG.md index 26e9feef43f..823f9701165 100644 --- a/packages/permission-controller/CHANGELOG.md +++ b/packages/permission-controller/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/approval-controller` (^8.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [12.1.1] ### Changed diff --git a/packages/permission-controller/package.json b/packages/permission-controller/package.json index a425555ab77..05f3fe91381 100644 --- a/packages/permission-controller/package.json +++ b/packages/permission-controller/package.json @@ -48,6 +48,7 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/approval-controller": "^8.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/json-rpc-engine": "^10.2.0", @@ -60,7 +61,6 @@ "nanoid": "^3.3.8" }, "devDependencies": { - "@metamask/approval-controller": "^8.0.0", "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", @@ -71,9 +71,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/approval-controller": "^8.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/phishing-controller/CHANGELOG.md b/packages/phishing-controller/CHANGELOG.md index b4f67995fa2..874e6b329c1 100644 --- a/packages/phishing-controller/CHANGELOG.md +++ b/packages/phishing-controller/CHANGELOG.md @@ -13,6 +13,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Export `TokenScanCacheData` and `TokenScanResultType` to allow consumers to have a type to reference if grabbing values directly from the controller's state ([#7208](https://github.com/MetaMask/core/pull/7208)) +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [16.0.0] ### Added diff --git a/packages/phishing-controller/package.json b/packages/phishing-controller/package.json index 3591994864d..a90c3bad0da 100644 --- a/packages/phishing-controller/package.json +++ b/packages/phishing-controller/package.json @@ -51,6 +51,7 @@ "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/messenger": "^0.3.0", + "@metamask/transaction-controller": "^62.1.0", "@noble/hashes": "^1.8.0", "@types/punycode": "^2.1.0", "ethereum-cryptography": "^2.1.2", @@ -59,7 +60,6 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -71,9 +71,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/transaction-controller": "^62.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/polling-controller/CHANGELOG.md b/packages/polling-controller/CHANGELOG.md index 1406025da02..adebccacdbd 100644 --- a/packages/polling-controller/CHANGELOG.md +++ b/packages/polling-controller/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/network-controller` (^26.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [16.0.0] ### Changed diff --git a/packages/polling-controller/package.json b/packages/polling-controller/package.json index 4045b94dbfb..34a9dda822c 100644 --- a/packages/polling-controller/package.json +++ b/packages/polling-controller/package.json @@ -50,6 +50,7 @@ "dependencies": { "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/network-controller": "^26.0.0", "@metamask/utils": "^11.8.1", "@types/uuid": "^8.3.0", "fast-json-stable-stringify": "^2.1.0", @@ -57,7 +58,6 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/network-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -68,9 +68,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/network-controller": "^26.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/preferences-controller/CHANGELOG.md b/packages/preferences-controller/CHANGELOG.md index 5d45652907a..7c4a397d990 100644 --- a/packages/preferences-controller/CHANGELOG.md +++ b/packages/preferences-controller/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/keyring-controller` (^25.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [22.0.0] ### Changed diff --git a/packages/preferences-controller/package.json b/packages/preferences-controller/package.json index 6f843071cd9..d98b64a3a32 100644 --- a/packages/preferences-controller/package.json +++ b/packages/preferences-controller/package.json @@ -50,11 +50,11 @@ "dependencies": { "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0" }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-controller": "^25.0.0", "@metamask/utils": "^11.8.1", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", @@ -66,9 +66,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/keyring-controller": "^25.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/profile-sync-controller/CHANGELOG.md b/packages/profile-sync-controller/CHANGELOG.md index aa11423e831..1cb4437d43c 100644 --- a/packages/profile-sync-controller/CHANGELOG.md +++ b/packages/profile-sync-controller/CHANGELOG.md @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/address-book-controller` (^7.0.1) + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/snaps-controllers` (^14.0.1) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [27.0.0] ### Changed diff --git a/packages/profile-sync-controller/package.json b/packages/profile-sync-controller/package.json index bc8de6a7704..49dbf907c04 100644 --- a/packages/profile-sync-controller/package.json +++ b/packages/profile-sync-controller/package.json @@ -101,8 +101,11 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/address-book-controller": "^7.0.1", "@metamask/base-controller": "^9.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/snaps-controllers": "^14.0.1", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", "@metamask/utils": "^11.8.1", @@ -115,13 +118,10 @@ "devDependencies": { "@lavamoat/allow-scripts": "^3.0.4", "@lavamoat/preinstall-always-fail": "^2.1.0", - "@metamask/address-book-controller": "^7.0.1", "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-api": "^21.0.0", - "@metamask/keyring-controller": "^25.0.0", "@metamask/keyring-internal-api": "^9.0.0", "@metamask/providers": "^22.1.0", - "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -136,10 +136,7 @@ "webextension-polyfill": "^0.12.0" }, "peerDependencies": { - "@metamask/address-book-controller": "^7.0.1", - "@metamask/keyring-controller": "^25.0.0", "@metamask/providers": "^22.0.0", - "@metamask/snaps-controllers": "^14.0.0", "webextension-polyfill": "^0.10.0 || ^0.11.0 || ^0.12.0" }, "engines": { diff --git a/packages/sample-controllers/CHANGELOG.md b/packages/sample-controllers/CHANGELOG.md index 13c0760512c..0b3e4d92f26 100644 --- a/packages/sample-controllers/CHANGELOG.md +++ b/packages/sample-controllers/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/network-controller` (^26.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [4.0.0] ### Changed diff --git a/packages/sample-controllers/package.json b/packages/sample-controllers/package.json index 9ed6cbb527c..19dc549b52c 100644 --- a/packages/sample-controllers/package.json +++ b/packages/sample-controllers/package.json @@ -50,12 +50,12 @@ "dependencies": { "@metamask/base-controller": "^9.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", "@metamask/utils": "^11.8.1" }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@metamask/controller-utils": "^11.16.0", - "@metamask/network-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -67,9 +67,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/network-controller": "^26.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/seedless-onboarding-controller/CHANGELOG.md b/packages/seedless-onboarding-controller/CHANGELOG.md index 171a0c9999f..ffe06496fa0 100644 --- a/packages/seedless-onboarding-controller/CHANGELOG.md +++ b/packages/seedless-onboarding-controller/CHANGELOG.md @@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/keyring-controller` (^25.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [7.0.0] ### Changed diff --git a/packages/seedless-onboarding-controller/package.json b/packages/seedless-onboarding-controller/package.json index be83fcfebba..2fffa11a4f1 100644 --- a/packages/seedless-onboarding-controller/package.json +++ b/packages/seedless-onboarding-controller/package.json @@ -51,6 +51,7 @@ "@metamask/auth-network-utils": "^0.3.0", "@metamask/base-controller": "^9.0.0", "@metamask/browser-passworder": "^6.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", "@metamask/toprf-secure-backup": "^0.10.0", "@metamask/utils": "^11.8.1", @@ -63,7 +64,6 @@ "@lavamoat/allow-scripts": "^3.0.4", "@lavamoat/preinstall-always-fail": "^2.1.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", "@types/elliptic": "^6", "@types/jest": "^27.4.1", @@ -77,9 +77,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/keyring-controller": "^25.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/selected-network-controller/CHANGELOG.md b/packages/selected-network-controller/CHANGELOG.md index b9f7b1f6a98..bda8127910d 100644 --- a/packages/selected-network-controller/CHANGELOG.md +++ b/packages/selected-network-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/network-controller` (^26.0.0) + - `@metamask/permission-controller` (^12.1.1) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [26.0.0] ### Changed diff --git a/packages/selected-network-controller/package.json b/packages/selected-network-controller/package.json index 7f227c5de4c..d47bd42102c 100644 --- a/packages/selected-network-controller/package.json +++ b/packages/selected-network-controller/package.json @@ -51,13 +51,13 @@ "@metamask/base-controller": "^9.0.0", "@metamask/json-rpc-engine": "^10.2.0", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", + "@metamask/permission-controller": "^12.1.1", "@metamask/swappable-obj-proxy": "^2.3.0", "@metamask/utils": "^11.8.1" }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/network-controller": "^26.0.0", - "@metamask/permission-controller": "^12.1.1", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -71,10 +71,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/network-controller": "^26.0.0", - "@metamask/permission-controller": "^12.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/shield-controller/CHANGELOG.md b/packages/shield-controller/CHANGELOG.md index af8a58d7a21..b56a6bf8d08 100644 --- a/packages/shield-controller/CHANGELOG.md +++ b/packages/shield-controller/CHANGELOG.md @@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/signature-controller` (^37.0.0) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [3.0.0] ### Changed diff --git a/packages/shield-controller/package.json b/packages/shield-controller/package.json index 0e95b4575ab..a085e1e1426 100644 --- a/packages/shield-controller/package.json +++ b/packages/shield-controller/package.json @@ -51,6 +51,8 @@ "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/messenger": "^0.3.0", + "@metamask/signature-controller": "^37.0.0", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "cockatiel": "^3.1.2" }, @@ -59,8 +61,6 @@ "@lavamoat/allow-scripts": "^3.0.4", "@lavamoat/preinstall-always-fail": "^2.1.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/signature-controller": "^37.0.0", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -72,10 +72,6 @@ "typescript": "~5.3.3", "uuid": "^8.3.2" }, - "peerDependencies": { - "@metamask/signature-controller": "^37.0.0", - "@metamask/transaction-controller": "^62.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/signature-controller/CHANGELOG.md b/packages/signature-controller/CHANGELOG.md index 021616f48bc..447f6e31e53 100644 --- a/packages/signature-controller/CHANGELOG.md +++ b/packages/signature-controller/CHANGELOG.md @@ -7,6 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/approval-controller` (^8.0.0) + - `@metamask/gator-permissions-controller` (^0.6.0) + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/logging-controller` (^7.0.1) + - `@metamask/network-controller` (^26.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [37.0.0] ### Changed diff --git a/packages/signature-controller/package.json b/packages/signature-controller/package.json index e88787e5335..4f36284de2a 100644 --- a/packages/signature-controller/package.json +++ b/packages/signature-controller/package.json @@ -48,23 +48,23 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/accounts-controller": "^35.0.0", + "@metamask/approval-controller": "^8.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/eth-sig-util": "^8.2.0", + "@metamask/gator-permissions-controller": "^0.6.0", + "@metamask/keyring-controller": "^25.0.0", + "@metamask/logging-controller": "^7.0.1", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", "@metamask/utils": "^11.8.1", "jsonschema": "^1.4.1", "lodash": "^4.17.21", "uuid": "^8.3.2" }, "devDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/approval-controller": "^8.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/gator-permissions-controller": "^0.6.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/logging-controller": "^7.0.1", - "@metamask/network-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -74,14 +74,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/accounts-controller": "^35.0.0", - "@metamask/approval-controller": "^8.0.0", - "@metamask/gator-permissions-controller": "^0.6.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/logging-controller": "^7.0.0", - "@metamask/network-controller": "^26.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/subscription-controller/CHANGELOG.md b/packages/subscription-controller/CHANGELOG.md index a8ff0c841d5..e36ac6fd79b 100644 --- a/packages/subscription-controller/CHANGELOG.md +++ b/packages/subscription-controller/CHANGELOG.md @@ -9,7 +9,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- Bump `@metamask/transaction-controller` from `^62.0.0` to `^62.1.0` ([#7215](https://github.com/MetaMask/core/pull/7153)) +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/profile-sync-controller` (^27.0.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. +- Bump `@metamask/transaction-controller` from `^62.0.0` to `^62.1.0` ([#7215](https://github.com/MetaMask/core/pull/7215)) ## [5.0.0] diff --git a/packages/subscription-controller/package.json b/packages/subscription-controller/package.json index bb199d28362..d3b036cb10e 100644 --- a/packages/subscription-controller/package.json +++ b/packages/subscription-controller/package.json @@ -52,13 +52,13 @@ "@metamask/controller-utils": "^11.16.0", "@metamask/messenger": "^0.3.0", "@metamask/polling-controller": "^16.0.0", + "@metamask/profile-sync-controller": "^27.0.0", "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "bignumber.js": "^9.1.2" }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/profile-sync-controller": "^27.0.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -69,9 +69,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/profile-sync-controller": "^27.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/transaction-controller/CHANGELOG.md b/packages/transaction-controller/CHANGELOG.md index 11f61d39963..248edbc2a51 100644 --- a/packages/transaction-controller/CHANGELOG.md +++ b/packages/transaction-controller/CHANGELOG.md @@ -11,6 +11,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add `musdConversion` transaction type ([#7218](https://github.com/MetaMask/core/pull/7218)) +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/accounts-controller` (^35.0.0) + - `@metamask/approval-controller` (^8.0.0) + - `@metamask/gas-fee-controller` (^26.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/remote-feature-flag-controller` (^2.0.1) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [62.1.0] ### Changed diff --git a/packages/transaction-controller/package.json b/packages/transaction-controller/package.json index 61a685ed817..5d0fdda755c 100644 --- a/packages/transaction-controller/package.json +++ b/packages/transaction-controller/package.json @@ -55,12 +55,17 @@ "@ethersproject/contracts": "^5.7.0", "@ethersproject/providers": "^5.7.0", "@ethersproject/wallet": "^5.7.0", + "@metamask/accounts-controller": "^35.0.0", + "@metamask/approval-controller": "^8.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/eth-query": "^4.0.0", + "@metamask/gas-fee-controller": "^26.0.0", "@metamask/messenger": "^0.3.0", "@metamask/metamask-eth-abis": "^3.1.1", + "@metamask/network-controller": "^26.0.0", "@metamask/nonce-tracker": "^6.0.0", + "@metamask/remote-feature-flag-controller": "^2.0.1", "@metamask/rpc-errors": "^7.0.2", "@metamask/utils": "^11.8.1", "async-mutex": "^0.5.0", @@ -73,15 +78,10 @@ }, "devDependencies": { "@babel/runtime": "^7.23.9", - "@metamask/accounts-controller": "^35.0.0", - "@metamask/approval-controller": "^8.0.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/eth-block-tracker": "^15.0.0", "@metamask/eth-json-rpc-provider": "^6.0.0", "@metamask/ethjs-provider-http": "^0.3.0", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/remote-feature-flag-controller": "^2.0.1", "@ts-bridge/cli": "^0.6.4", "@types/bn.js": "^5.1.5", "@types/jest": "^27.4.1", @@ -98,12 +98,7 @@ }, "peerDependencies": { "@babel/runtime": "^7.0.0", - "@metamask/accounts-controller": "^35.0.0", - "@metamask/approval-controller": "^8.0.0", - "@metamask/eth-block-tracker": ">=9", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/remote-feature-flag-controller": "^2.0.0" + "@metamask/eth-block-tracker": ">=9" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/transaction-pay-controller/CHANGELOG.md b/packages/transaction-pay-controller/CHANGELOG.md index b49088190e6..182cac9a5d3 100644 --- a/packages/transaction-pay-controller/CHANGELOG.md +++ b/packages/transaction-pay-controller/CHANGELOG.md @@ -7,6 +7,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/assets-controllers` (^91.0.0) + - `@metamask/bridge-controller` (^63.0.0) + - `@metamask/bridge-status-controller` (^63.0.0) + - `@metamask/gas-fee-controller` (^26.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/remote-feature-flag-controller` (^2.0.1) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [10.0.0] ### Added diff --git a/packages/transaction-pay-controller/package.json b/packages/transaction-pay-controller/package.json index 3f484fb7d84..1b6ae7291e6 100644 --- a/packages/transaction-pay-controller/package.json +++ b/packages/transaction-pay-controller/package.json @@ -51,10 +51,17 @@ "dependencies": { "@ethersproject/abi": "^5.7.0", "@ethersproject/contracts": "^5.7.0", + "@metamask/assets-controllers": "^91.0.0", "@metamask/base-controller": "^9.0.0", + "@metamask/bridge-controller": "^63.0.0", + "@metamask/bridge-status-controller": "^63.0.0", "@metamask/controller-utils": "^11.16.0", + "@metamask/gas-fee-controller": "^26.0.0", "@metamask/messenger": "^0.3.0", "@metamask/metamask-eth-abis": "^3.1.1", + "@metamask/network-controller": "^26.0.0", + "@metamask/remote-feature-flag-controller": "^2.0.1", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "bignumber.js": "^9.1.2", "bn.js": "^5.2.1", @@ -62,14 +69,7 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@metamask/assets-controllers": "^91.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/bridge-controller": "^63.0.0", - "@metamask/bridge-status-controller": "^63.0.0", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/remote-feature-flag-controller": "^2.0.1", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -79,15 +79,6 @@ "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" }, - "peerDependencies": { - "@metamask/assets-controllers": "^91.0.0", - "@metamask/bridge-controller": "^63.0.0", - "@metamask/bridge-status-controller": "^63.0.0", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/remote-feature-flag-controller": "^2.0.0", - "@metamask/transaction-controller": "^62.0.0" - }, "engines": { "node": "^18.18 || >=20" }, diff --git a/packages/user-operation-controller/CHANGELOG.md b/packages/user-operation-controller/CHANGELOG.md index 5c103a0cddc..2a10d3492a7 100644 --- a/packages/user-operation-controller/CHANGELOG.md +++ b/packages/user-operation-controller/CHANGELOG.md @@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Move peer dependencies for controller and service packages to direct dependencies ([#7209](https://github.com/MetaMask/core/pull/7209)) + - The dependencies moved are: + - `@metamask/approval-controller` (^8.0.0) + - `@metamask/gas-fee-controller` (^26.0.0) + - `@metamask/keyring-controller` (^25.0.0) + - `@metamask/network-controller` (^26.0.0) + - `@metamask/transaction-controller` (^62.1.0) + - In clients, it is now possible for multiple versions of these packages to exist in the dependency tree. + - For example, this scenario would be valid: a client relies on `@metamask/controller-a` 1.0.0 and `@metamask/controller-b` 1.0.0, and `@metamask/controller-b` depends on `@metamask/controller-a` 1.1.0. + - Note, however, that the versions specified in the client's `package.json` always "win", and you are expected to keep them up to date so as not to break controller and service intercommunication. + ## [41.0.0] ### Changed diff --git a/packages/user-operation-controller/package.json b/packages/user-operation-controller/package.json index e68ac1a07b7..3535cc15ef6 100644 --- a/packages/user-operation-controller/package.json +++ b/packages/user-operation-controller/package.json @@ -49,13 +49,18 @@ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch" }, "dependencies": { + "@metamask/approval-controller": "^8.0.0", "@metamask/base-controller": "^9.0.0", "@metamask/controller-utils": "^11.16.0", "@metamask/eth-query": "^4.0.0", + "@metamask/gas-fee-controller": "^26.0.0", + "@metamask/keyring-controller": "^25.0.0", "@metamask/messenger": "^0.3.0", + "@metamask/network-controller": "^26.0.0", "@metamask/polling-controller": "^16.0.0", "@metamask/rpc-errors": "^7.0.2", "@metamask/superstruct": "^3.1.0", + "@metamask/transaction-controller": "^62.1.0", "@metamask/utils": "^11.8.1", "bn.js": "^5.2.1", "immer": "^9.0.6", @@ -63,13 +68,8 @@ "uuid": "^8.3.2" }, "devDependencies": { - "@metamask/approval-controller": "^8.0.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/eth-block-tracker": "^15.0.0", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/transaction-controller": "^62.1.0", "@ts-bridge/cli": "^0.6.4", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", @@ -80,12 +80,7 @@ "typescript": "~5.3.3" }, "peerDependencies": { - "@metamask/approval-controller": "^8.0.0", - "@metamask/eth-block-tracker": ">=9", - "@metamask/gas-fee-controller": "^26.0.0", - "@metamask/keyring-controller": "^25.0.0", - "@metamask/network-controller": "^26.0.0", - "@metamask/transaction-controller": "^62.0.0" + "@metamask/eth-block-tracker": ">=9" }, "engines": { "node": "^18.18 || >=20" diff --git a/yarn.config.cjs b/yarn.config.cjs index 374fa6e7306..df1f9b4dbdb 100644 --- a/yarn.config.cjs +++ b/yarn.config.cjs @@ -228,6 +228,14 @@ module.exports = defineConfig({ dependenciesByIdentAndType, ); + // Disallow workspace packages from listing other workspace packages via + // peer dependencies. + expectDependenciesForControllersAndServices( + Yarn, + workspace, + dependenciesByIdentAndType, + ); + // The root workspace (and only the root workspace) must specify the Yarn // version required for development. if (isChildWorkspace) { @@ -633,7 +641,7 @@ function expectUpToDateWorkspaceDependenciesAndDevDependencies( const prodDependency = dependencyInstancesByType.get('dependencies'); const peerDependency = dependencyInstancesByType.get('peerDependencies'); - if (devDependency || (prodDependency && !peerDependency)) { + if ((devDependency || prodDependency) && !peerDependency) { const dependency = devDependency ?? prodDependency; const ignoredRanges = ALLOWED_INCONSISTENT_DEPENDENCIES[dependencyIdent]; @@ -728,10 +736,8 @@ function expectDependenciesNotInBothProdAndDevOrPeer( } /** - * Expect that if the workspace package lists another package in its - * `peerDependencies`, the package is also listed in the workspace's - * `devDependencies`. If the other package is a workspace package, also expect - * that the dev dependency matches the current version of the package. + * Expect that if a non-workspace package lists another package in its + * `peerDependencies`, the package is also listed in `devDependencies`. * * @param {Yarn} Yarn - The Yarn "global". * @param {Workspace} workspace - The workspace to check. @@ -747,20 +753,80 @@ function expectPeerDependenciesAlsoListedAsDevDependencies( dependencyIdent, dependencyInstancesByType, ] of dependenciesByIdentAndType.entries()) { - if (!dependencyInstancesByType.has('peerDependencies')) { + const peerDependency = dependencyInstancesByType.get('peerDependencies'); + + if (!peerDependency) { continue; } const dependencyWorkspace = Yarn.workspace({ ident: dependencyIdent }); + if (!dependencyWorkspace) { + expectWorkspaceField(workspace, `devDependencies["${dependencyIdent}"]`); + } + } +} + +/** + * Expect that if packages which contain controllers or services are listed as + * peer+dev dependencies they are instead listed as direct dependencies. + * + * @param {Yarn} Yarn - The Yarn "global". + * @param {Workspace} workspace - The workspace to check. + * @param {Map>} dependenciesByIdentAndType - Map of + * dependency ident to dependency type and dependency. + */ +function expectDependenciesForControllersAndServices( + Yarn, + workspace, + dependenciesByIdentAndType, +) { + for (const [ + dependencyIdent, + dependencyInstancesByType, + ] of dependenciesByIdentAndType.entries()) { + if (dependencyIdent === '@metamask/eth-block-tracker') { + // Some packages have a peer dependency on this package, and we are still + // working through removing this peer dependency across packages. + continue; + } + + const peerDependency = dependencyInstancesByType.get('peerDependencies'); + const devDependency = dependencyInstancesByType.get('devDependencies'); + + if (!peerDependency) { + continue; + } + + const dependencyWorkspace = Yarn.workspace({ ident: peerDependency.ident }); + /** @type {string | undefined} */ + let targetVersion; if (dependencyWorkspace) { + targetVersion = `^${dependencyWorkspace.manifest.version}`; + } else if (/-(?:controller|service)s?$/u.test(dependencyIdent)) { + targetVersion = peerDependency.range; + } + + if (targetVersion === undefined) { + continue; + } + + expectWorkspaceField( + workspace, + `dependencies["${dependencyIdent}"]`, + targetVersion, + ); + + peerDependency.delete(); + + if (devDependency) { + devDependency.delete(); + } else { expectWorkspaceField( workspace, `devDependencies["${dependencyIdent}"]`, - `^${dependencyWorkspace.manifest.version}`, + null, ); - } else { - expectWorkspaceField(workspace, `devDependencies["${dependencyIdent}"]`); } } } diff --git a/yarn.lock b/yarn.lock index 875f9d0be4d..ae19c08550f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2447,13 +2447,7 @@ __metadata: typescript: "npm:~5.3.3" webextension-polyfill: "npm:^0.12.0" peerDependencies: - "@metamask/account-api": ^0.12.0 - "@metamask/accounts-controller": ^35.0.0 - "@metamask/keyring-controller": ^25.0.0 - "@metamask/multichain-account-service": ^4.0.0 - "@metamask/profile-sync-controller": ^27.0.0 "@metamask/providers": ^22.0.0 - "@metamask/snaps-controllers": ^14.0.0 webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 languageName: unknown linkType: soft @@ -2494,10 +2488,7 @@ __metadata: uuid: "npm:^8.3.2" webextension-polyfill: "npm:^0.12.0" peerDependencies: - "@metamask/keyring-controller": ^25.0.0 - "@metamask/network-controller": ^26.0.0 "@metamask/providers": ^22.0.0 - "@metamask/snaps-controllers": ^14.0.0 webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 languageName: unknown linkType: soft @@ -2700,19 +2691,7 @@ __metadata: uuid: "npm:^8.3.2" webextension-polyfill: "npm:^0.12.0" peerDependencies: - "@metamask/account-tree-controller": ^4.0.0 - "@metamask/accounts-controller": ^35.0.0 - "@metamask/approval-controller": ^8.0.0 - "@metamask/core-backend": ^5.0.0 - "@metamask/keyring-controller": ^25.0.0 - "@metamask/network-controller": ^26.0.0 - "@metamask/permission-controller": ^12.0.0 - "@metamask/phishing-controller": ^16.0.0 - "@metamask/preferences-controller": ^22.0.0 - "@metamask/profile-sync-controller": ^27.0.0 "@metamask/providers": ^22.0.0 - "@metamask/snaps-controllers": ^14.0.0 - "@metamask/transaction-controller": ^62.0.0 webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 languageName: unknown linkType: soft @@ -2856,13 +2835,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/accounts-controller": ^35.0.0 - "@metamask/assets-controllers": ^91.0.0 - "@metamask/network-controller": ^26.0.0 - "@metamask/remote-feature-flag-controller": ^2.0.0 - "@metamask/snaps-controllers": ^14.0.0 - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft @@ -2895,13 +2867,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/accounts-controller": ^35.0.0 - "@metamask/bridge-controller": ^63.0.0 - "@metamask/gas-fee-controller": ^26.0.0 - "@metamask/network-controller": ^26.0.0 - "@metamask/snaps-controllers": ^14.0.0 - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft @@ -3061,9 +3026,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/accounts-controller": ^35.0.0 - "@metamask/keyring-controller": ^25.0.0 languageName: unknown linkType: soft @@ -3167,9 +3129,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/accounts-controller": ^35.0.0 - "@metamask/keyring-controller": ^25.0.0 languageName: unknown linkType: soft @@ -3215,9 +3174,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/account-tree-controller": ^4.0.0 - "@metamask/network-controller": ^26.0.0 languageName: unknown linkType: soft @@ -3309,8 +3265,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/network-controller": ^26.0.0 languageName: unknown linkType: soft @@ -3789,7 +3743,6 @@ __metadata: uuid: "npm:^8.3.2" peerDependencies: "@babel/runtime": ^7.0.0 - "@metamask/network-controller": ^26.0.0 languageName: unknown linkType: soft @@ -3818,9 +3771,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/snaps-controllers": ^14.0.1 - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft @@ -4113,11 +4063,7 @@ __metadata: webextension-polyfill: "npm:^0.12.0" peerDependencies: "@metamask/account-api": ^0.12.0 - "@metamask/accounts-controller": ^35.0.0 - "@metamask/error-reporting-service": ^3.0.0 - "@metamask/keyring-controller": ^25.0.0 "@metamask/providers": ^22.0.0 - "@metamask/snaps-controllers": ^14.0.0 webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 languageName: unknown linkType: soft @@ -4181,9 +4127,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/accounts-controller": ^35.0.0 - "@metamask/network-controller": ^26.0.0 languageName: unknown linkType: soft @@ -4215,9 +4158,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/accounts-controller": ^35.0.0 - "@metamask/snaps-controllers": ^14.0.0 languageName: unknown linkType: soft @@ -4286,8 +4226,6 @@ __metadata: typescript: "npm:~5.3.3" uri-js: "npm:^4.4.1" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/error-reporting-service": ^3.0.0 languageName: unknown linkType: soft @@ -4314,10 +4252,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/multichain-network-controller": ^3.0.0 - "@metamask/network-controller": ^26.0.0 - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft @@ -4365,9 +4299,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/keyring-controller": ^25.0.0 - "@metamask/profile-sync-controller": ^27.0.0 languageName: unknown linkType: soft @@ -4434,8 +4365,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/approval-controller": ^8.0.0 languageName: unknown linkType: soft @@ -4501,8 +4430,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft @@ -4527,8 +4454,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/network-controller": ^26.0.0 languageName: unknown linkType: soft @@ -4561,8 +4486,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/keyring-controller": ^25.0.0 languageName: unknown linkType: soft @@ -4602,10 +4525,7 @@ __metadata: typescript: "npm:~5.3.3" webextension-polyfill: "npm:^0.12.0" peerDependencies: - "@metamask/address-book-controller": ^7.0.1 - "@metamask/keyring-controller": ^25.0.0 "@metamask/providers": ^22.0.0 - "@metamask/snaps-controllers": ^14.0.0 webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 languageName: unknown linkType: soft @@ -4711,8 +4631,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/network-controller": ^26.0.0 languageName: unknown linkType: soft @@ -4756,8 +4674,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/keyring-controller": ^25.0.0 languageName: unknown linkType: soft @@ -4785,9 +4701,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/network-controller": ^26.0.0 - "@metamask/permission-controller": ^12.0.0 languageName: unknown linkType: soft @@ -4816,9 +4729,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/signature-controller": ^37.0.0 - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft @@ -4849,13 +4759,6 @@ __metadata: typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" - peerDependencies: - "@metamask/accounts-controller": ^35.0.0 - "@metamask/approval-controller": ^8.0.0 - "@metamask/gator-permissions-controller": ^0.6.0 - "@metamask/keyring-controller": ^25.0.0 - "@metamask/logging-controller": ^7.0.0 - "@metamask/network-controller": ^26.0.0 languageName: unknown linkType: soft @@ -5009,8 +4912,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/profile-sync-controller": ^27.0.0 languageName: unknown linkType: soft @@ -5117,12 +5018,7 @@ __metadata: uuid: "npm:^8.3.2" peerDependencies: "@babel/runtime": ^7.0.0 - "@metamask/accounts-controller": ^35.0.0 - "@metamask/approval-controller": ^8.0.0 "@metamask/eth-block-tracker": ">=9" - "@metamask/gas-fee-controller": ^26.0.0 - "@metamask/network-controller": ^26.0.0 - "@metamask/remote-feature-flag-controller": ^2.0.0 languageName: unknown linkType: soft @@ -5157,14 +5053,6 @@ __metadata: typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" - peerDependencies: - "@metamask/assets-controllers": ^91.0.0 - "@metamask/bridge-controller": ^63.0.0 - "@metamask/bridge-status-controller": ^63.0.0 - "@metamask/gas-fee-controller": ^26.0.0 - "@metamask/network-controller": ^26.0.0 - "@metamask/remote-feature-flag-controller": ^2.0.0 - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft @@ -5200,12 +5088,7 @@ __metadata: typescript: "npm:~5.3.3" uuid: "npm:^8.3.2" peerDependencies: - "@metamask/approval-controller": ^8.0.0 "@metamask/eth-block-tracker": ">=9" - "@metamask/gas-fee-controller": ^26.0.0 - "@metamask/keyring-controller": ^25.0.0 - "@metamask/network-controller": ^26.0.0 - "@metamask/transaction-controller": ^62.0.0 languageName: unknown linkType: soft