From 2125c9842cebd76fa2132c45c17acebae8b4870b Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Wed, 10 Sep 2025 16:57:39 +0200 Subject: [PATCH 1/8] chore: bump accounts deps --- packages/account-tree-controller/package.json | 6 +- packages/accounts-controller/package.json | 6 +- packages/assets-controllers/package.json | 8 +- packages/bridge-controller/package.json | 2 +- .../bridge-status-controller/package.json | 2 +- .../chain-agnostic-permission/package.json | 2 +- packages/earn-controller/package.json | 2 +- packages/keyring-controller/package.json | 4 +- .../multichain-account-service/package.json | 12 +- .../package.json | 4 +- .../package.json | 6 +- packages/profile-sync-controller/package.json | 4 +- yarn.lock | 141 ++++++++---------- 13 files changed, 94 insertions(+), 105 deletions(-) diff --git a/packages/account-tree-controller/package.json b/packages/account-tree-controller/package.json index 8ab79fdd5a9..72a9faf5b9d 100644 --- a/packages/account-tree-controller/package.json +++ b/packages/account-tree-controller/package.json @@ -56,10 +56,10 @@ "lodash": "^4.17.21" }, "devDependencies": { - "@metamask/account-api": "^0.9.0", + "@metamask/account-api": "^0.12.0", "@metamask/accounts-controller": "^33.0.0", "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-api": "^20.1.0", + "@metamask/keyring-api": "^21.0.0", "@metamask/keyring-controller": "^23.0.0", "@metamask/multichain-account-service": "^0.7.0", "@metamask/profile-sync-controller": "^25.0.0", @@ -75,7 +75,7 @@ "webextension-polyfill": "^0.12.0" }, "peerDependencies": { - "@metamask/account-api": "^0.9.0", + "@metamask/account-api": "^0.12.0", "@metamask/accounts-controller": "^33.0.0", "@metamask/keyring-controller": "^23.0.0", "@metamask/multichain-account-service": "^0.7.0", diff --git a/packages/accounts-controller/package.json b/packages/accounts-controller/package.json index e5d933667aa..260caedc3f8 100644 --- a/packages/accounts-controller/package.json +++ b/packages/accounts-controller/package.json @@ -49,9 +49,9 @@ "dependencies": { "@ethereumjs/util": "^9.1.0", "@metamask/base-controller": "^8.3.0", - "@metamask/eth-snap-keyring": "^16.1.0", - "@metamask/keyring-api": "^20.1.0", - "@metamask/keyring-internal-api": "^8.1.0", + "@metamask/eth-snap-keyring": "^17.0.0", + "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-internal-api": "^9.0.0", "@metamask/keyring-utils": "^3.1.0", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", diff --git a/packages/assets-controllers/package.json b/packages/assets-controllers/package.json index 40572144060..f8ea46dddba 100644 --- a/packages/assets-controllers/package.json +++ b/packages/assets-controllers/package.json @@ -58,7 +58,7 @@ "@metamask/contract-metadata": "^2.4.0", "@metamask/controller-utils": "^11.12.0", "@metamask/eth-query": "^4.0.0", - "@metamask/keyring-api": "^20.1.0", + "@metamask/keyring-api": "^21.0.0", "@metamask/metamask-eth-abis": "^3.1.1", "@metamask/polling-controller": "^14.0.0", "@metamask/rpc-errors": "^7.0.2", @@ -79,15 +79,15 @@ }, "devDependencies": { "@babel/runtime": "^7.23.9", - "@metamask/account-api": "^0.9.0", + "@metamask/account-api": "^0.12.0", "@metamask/account-tree-controller": "^0.14.0", "@metamask/accounts-controller": "^33.0.0", "@metamask/approval-controller": "^7.1.3", "@metamask/auto-changelog": "^3.4.4", "@metamask/ethjs-provider-http": "^0.3.0", "@metamask/keyring-controller": "^23.0.0", - "@metamask/keyring-internal-api": "^8.1.0", - "@metamask/keyring-snap-client": "^7.0.0", + "@metamask/keyring-internal-api": "^9.0.0", + "@metamask/keyring-snap-client": "^8.0.0", "@metamask/multichain-account-service": "^0.7.0", "@metamask/network-controller": "^24.1.0", "@metamask/permission-controller": "^11.0.6", diff --git a/packages/bridge-controller/package.json b/packages/bridge-controller/package.json index 59a1272f347..66ffdd7f6cd 100644 --- a/packages/bridge-controller/package.json +++ b/packages/bridge-controller/package.json @@ -55,7 +55,7 @@ "@metamask/base-controller": "^8.3.0", "@metamask/controller-utils": "^11.12.0", "@metamask/gas-fee-controller": "^24.0.0", - "@metamask/keyring-api": "^20.1.0", + "@metamask/keyring-api": "^21.0.0", "@metamask/metamask-eth-abis": "^3.1.1", "@metamask/multichain-network-controller": "^0.12.0", "@metamask/polling-controller": "^14.0.0", diff --git a/packages/bridge-status-controller/package.json b/packages/bridge-status-controller/package.json index 4943b26235a..2745f8153a4 100644 --- a/packages/bridge-status-controller/package.json +++ b/packages/bridge-status-controller/package.json @@ -49,7 +49,7 @@ "dependencies": { "@metamask/base-controller": "^8.3.0", "@metamask/controller-utils": "^11.12.0", - "@metamask/keyring-api": "^20.1.0", + "@metamask/keyring-api": "^21.0.0", "@metamask/polling-controller": "^14.0.0", "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^11.4.2", diff --git a/packages/chain-agnostic-permission/package.json b/packages/chain-agnostic-permission/package.json index 678f9f845d1..29b9a9023e7 100644 --- a/packages/chain-agnostic-permission/package.json +++ b/packages/chain-agnostic-permission/package.json @@ -57,7 +57,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-internal-api": "^8.1.0", + "@metamask/keyring-internal-api": "^9.0.0", "@types/jest": "^27.4.1", "deepmerge": "^4.2.2", "jest": "^27.5.1", diff --git a/packages/earn-controller/package.json b/packages/earn-controller/package.json index 03d092e8341..89eaff58193 100644 --- a/packages/earn-controller/package.json +++ b/packages/earn-controller/package.json @@ -51,7 +51,7 @@ "@ethersproject/providers": "^5.7.0", "@metamask/base-controller": "^8.3.0", "@metamask/controller-utils": "^11.12.0", - "@metamask/keyring-api": "^20.1.0", + "@metamask/keyring-api": "^21.0.0", "@metamask/stake-sdk": "^3.2.1", "reselect": "^5.1.1" }, diff --git a/packages/keyring-controller/package.json b/packages/keyring-controller/package.json index 5e60da0c219..5a9cf8abeae 100644 --- a/packages/keyring-controller/package.json +++ b/packages/keyring-controller/package.json @@ -53,8 +53,8 @@ "@metamask/eth-hd-keyring": "^12.0.0", "@metamask/eth-sig-util": "^8.2.0", "@metamask/eth-simple-keyring": "^10.0.0", - "@metamask/keyring-api": "^20.1.0", - "@metamask/keyring-internal-api": "^8.1.0", + "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-internal-api": "^9.0.0", "@metamask/utils": "^11.4.2", "async-mutex": "^0.5.0", "ethereumjs-wallet": "^1.0.1", diff --git a/packages/multichain-account-service/package.json b/packages/multichain-account-service/package.json index ed2d142c934..2bb95105fb9 100644 --- a/packages/multichain-account-service/package.json +++ b/packages/multichain-account-service/package.json @@ -48,10 +48,10 @@ }, "dependencies": { "@metamask/base-controller": "^8.3.0", - "@metamask/eth-snap-keyring": "^16.1.0", - "@metamask/keyring-api": "^20.1.0", - "@metamask/keyring-internal-api": "^8.1.0", - "@metamask/keyring-snap-client": "^7.0.0", + "@metamask/eth-snap-keyring": "^17.0.0", + "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-internal-api": "^9.0.0", + "@metamask/keyring-snap-client": "^8.0.0", "@metamask/keyring-utils": "^3.1.0", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", @@ -59,7 +59,7 @@ "@metamask/utils": "^11.4.2" }, "devDependencies": { - "@metamask/account-api": "^0.9.0", + "@metamask/account-api": "^0.12.0", "@metamask/accounts-controller": "^33.0.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-controller": "^23.0.0", @@ -77,7 +77,7 @@ "webextension-polyfill": "^0.12.0" }, "peerDependencies": { - "@metamask/account-api": "^0.9.0", + "@metamask/account-api": "^0.12.0", "@metamask/accounts-controller": "^33.0.0", "@metamask/keyring-controller": "^23.0.0", "@metamask/providers": "^22.0.0", diff --git a/packages/multichain-network-controller/package.json b/packages/multichain-network-controller/package.json index a1482641888..a659a923af7 100644 --- a/packages/multichain-network-controller/package.json +++ b/packages/multichain-network-controller/package.json @@ -49,8 +49,8 @@ "dependencies": { "@metamask/base-controller": "^8.3.0", "@metamask/controller-utils": "^11.12.0", - "@metamask/keyring-api": "^20.1.0", - "@metamask/keyring-internal-api": "^8.1.0", + "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-internal-api": "^9.0.0", "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^11.4.2", "@solana/addresses": "^2.0.0", diff --git a/packages/multichain-transactions-controller/package.json b/packages/multichain-transactions-controller/package.json index 48b2bcd5f92..0a48cd07f21 100644 --- a/packages/multichain-transactions-controller/package.json +++ b/packages/multichain-transactions-controller/package.json @@ -48,9 +48,9 @@ }, "dependencies": { "@metamask/base-controller": "^8.3.0", - "@metamask/keyring-api": "^20.1.0", - "@metamask/keyring-internal-api": "^8.1.0", - "@metamask/keyring-snap-client": "^7.0.0", + "@metamask/keyring-api": "^21.0.0", + "@metamask/keyring-internal-api": "^9.0.0", + "@metamask/keyring-snap-client": "^8.0.0", "@metamask/polling-controller": "^14.0.0", "@metamask/snaps-sdk": "^9.0.0", "@metamask/snaps-utils": "^11.0.0", diff --git a/packages/profile-sync-controller/package.json b/packages/profile-sync-controller/package.json index 51dd133cfc2..7c7c1418c0c 100644 --- a/packages/profile-sync-controller/package.json +++ b/packages/profile-sync-controller/package.json @@ -114,9 +114,9 @@ "@lavamoat/preinstall-always-fail": "^2.1.0", "@metamask/address-book-controller": "^6.1.1", "@metamask/auto-changelog": "^3.4.4", - "@metamask/keyring-api": "^20.1.0", + "@metamask/keyring-api": "^21.0.0", "@metamask/keyring-controller": "^23.0.0", - "@metamask/keyring-internal-api": "^8.1.0", + "@metamask/keyring-internal-api": "^9.0.0", "@metamask/providers": "^22.1.0", "@metamask/snaps-controllers": "^14.0.1", "@types/jest": "^27.4.1", diff --git a/yarn.lock b/yarn.lock index 26af0189884..07e92f2b35e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2392,15 +2392,14 @@ __metadata: languageName: node linkType: hard -"@metamask/account-api@npm:^0.9.0": - version: 0.9.0 - resolution: "@metamask/account-api@npm:0.9.0" +"@metamask/account-api@npm:^0.12.0": + version: 0.12.0 + resolution: "@metamask/account-api@npm:0.12.0" dependencies: - "@metamask/keyring-api": "npm:^20.0.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-utils": "npm:^3.1.0" - "@metamask/superstruct": "npm:^3.1.0" uuid: "npm:^9.0.1" - checksum: 10/17c5c78a0849ec2b1bae717d5227b7f3498903034bc41e93eb28513704f418b1e365a3a2ebd05d4a8a24c3912ab4abf2c6c0a3c55342ed0a9a40432b3aab0b34 + checksum: 10/d5e2bf9792926755429fd4696097376d74e4a6eb2c15b7913c092b3b9c34b6feeddd1f5dc9bcf79be87275d5450ff8fa6114834982fc0415e6ba8479b925e978 languageName: node linkType: hard @@ -2408,11 +2407,11 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/account-tree-controller@workspace:packages/account-tree-controller" dependencies: - "@metamask/account-api": "npm:^0.9.0" + "@metamask/account-api": "npm:^0.12.0" "@metamask/accounts-controller": "npm:^33.0.0" "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.3.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-controller": "npm:^23.0.0" "@metamask/multichain-account-service": "npm:^0.7.0" "@metamask/profile-sync-controller": "npm:^25.0.0" @@ -2433,7 +2432,7 @@ __metadata: typescript: "npm:~5.2.2" webextension-polyfill: "npm:^0.12.0" peerDependencies: - "@metamask/account-api": ^0.9.0 + "@metamask/account-api": ^0.12.0 "@metamask/accounts-controller": ^33.0.0 "@metamask/keyring-controller": ^23.0.0 "@metamask/multichain-account-service": ^0.7.0 @@ -2452,10 +2451,10 @@ __metadata: "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.3.0" "@metamask/controller-utils": "npm:^11.12.0" - "@metamask/eth-snap-keyring": "npm:^16.1.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/eth-snap-keyring": "npm:^17.0.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-controller": "npm:^23.0.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" "@metamask/keyring-utils": "npm:^3.1.0" "@metamask/network-controller": "npm:^24.1.0" "@metamask/providers": "npm:^22.1.0" @@ -2587,7 +2586,7 @@ __metadata: "@ethersproject/contracts": "npm:^5.7.0" "@ethersproject/providers": "npm:^5.7.0" "@metamask/abi-utils": "npm:^2.0.3" - "@metamask/account-api": "npm:^0.9.0" + "@metamask/account-api": "npm:^0.12.0" "@metamask/account-tree-controller": "npm:^0.14.0" "@metamask/accounts-controller": "npm:^33.0.0" "@metamask/approval-controller": "npm:^7.1.3" @@ -2597,10 +2596,10 @@ __metadata: "@metamask/controller-utils": "npm:^11.12.0" "@metamask/eth-query": "npm:^4.0.0" "@metamask/ethjs-provider-http": "npm:^0.3.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-controller": "npm:^23.0.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" - "@metamask/keyring-snap-client": "npm:^7.0.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" + "@metamask/keyring-snap-client": "npm:^8.0.0" "@metamask/metamask-eth-abis": "npm:^3.1.1" "@metamask/multichain-account-service": "npm:^0.7.0" "@metamask/network-controller": "npm:^24.1.0" @@ -2703,16 +2702,6 @@ __metadata: languageName: node linkType: hard -"@metamask/base-controller@npm:^7.1.1": - version: 7.1.1 - resolution: "@metamask/base-controller@npm:7.1.1" - dependencies: - "@metamask/utils": "npm:^11.0.1" - immer: "npm:^9.0.6" - checksum: 10/d45abc9e0f3f42a0ea7f0a52734f3749fafc5fefc73608230ab0815578e83a9fc28fe57dc7000f6f8df2cdcee5b53f68bb971091075bec9de6b7f747de627c60 - languageName: node - linkType: hard - "@metamask/base-controller@npm:^8.0.1, @metamask/base-controller@npm:^8.3.0, @metamask/base-controller@workspace:packages/base-controller": version: 0.0.0-use.local resolution: "@metamask/base-controller@workspace:packages/base-controller" @@ -2750,7 +2739,7 @@ __metadata: "@metamask/controller-utils": "npm:^11.12.0" "@metamask/eth-json-rpc-provider": "npm:^4.1.8" "@metamask/gas-fee-controller": "npm:^24.0.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/metamask-eth-abis": "npm:^3.1.1" "@metamask/multichain-network-controller": "npm:^0.12.0" "@metamask/network-controller": "npm:^24.1.0" @@ -2793,7 +2782,7 @@ __metadata: "@metamask/bridge-controller": "npm:^42.0.0" "@metamask/controller-utils": "npm:^11.12.0" "@metamask/gas-fee-controller": "npm:^24.0.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/network-controller": "npm:^24.1.0" "@metamask/polling-controller": "npm:^14.0.0" "@metamask/snaps-controllers": "npm:^14.0.1" @@ -2855,7 +2844,7 @@ __metadata: "@metamask/api-specs": "npm:^0.14.0" "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/controller-utils": "npm:^11.12.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" "@metamask/network-controller": "npm:^24.1.0" "@metamask/permission-controller": "npm:^11.0.6" "@metamask/rpc-errors": "npm:^7.0.2" @@ -3048,7 +3037,7 @@ __metadata: "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.3.0" "@metamask/controller-utils": "npm:^11.12.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/network-controller": "npm:^24.1.0" "@metamask/stake-sdk": "npm:^3.2.1" "@metamask/transaction-controller": "npm:^60.2.0" @@ -3348,24 +3337,24 @@ __metadata: languageName: node linkType: hard -"@metamask/eth-snap-keyring@npm:^16.1.0": - version: 16.1.0 - resolution: "@metamask/eth-snap-keyring@npm:16.1.0" +"@metamask/eth-snap-keyring@npm:^17.0.0": + version: 17.1.0 + resolution: "@metamask/eth-snap-keyring@npm:17.1.0" dependencies: "@ethereumjs/tx": "npm:^5.4.0" - "@metamask/base-controller": "npm:^7.1.1" + "@metamask/base-controller": "npm:^8.3.0" "@metamask/eth-sig-util": "npm:^8.2.0" - "@metamask/keyring-api": "npm:^20.1.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" - "@metamask/keyring-internal-snap-client": "npm:^6.0.0" + "@metamask/keyring-api": "npm:^21.0.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" + "@metamask/keyring-internal-snap-client": "npm:^7.1.0" "@metamask/keyring-utils": "npm:^3.1.0" "@metamask/superstruct": "npm:^3.1.0" "@metamask/utils": "npm:^11.1.0" "@types/uuid": "npm:^9.0.8" uuid: "npm:^9.0.1" peerDependencies: - "@metamask/keyring-api": ^20.1.0 - checksum: 10/e3d4a1601544242131f13748ab7d206aa7d4d6c6fb54cc75de1b0e94a75495dc9999f61242824dd8a61ef2992bf2942da3e686ad1188cc2372e2eee4f1055d4d + "@metamask/keyring-api": ^21.0.0 + checksum: 10/ec7f33cb5c84155b458e19cccedf9a12642ad85a90fc45fe36acc2fb734099202d6a3bd6a18637a2f7c14a8c18b79b44e83cbd7c74721239e562a74429dc396b languageName: node linkType: hard @@ -3656,15 +3645,15 @@ __metadata: languageName: node linkType: hard -"@metamask/keyring-api@npm:^20.0.0, @metamask/keyring-api@npm:^20.1.0": - version: 20.1.0 - resolution: "@metamask/keyring-api@npm:20.1.0" +"@metamask/keyring-api@npm:^21.0.0": + version: 21.0.0 + resolution: "@metamask/keyring-api@npm:21.0.0" dependencies: "@metamask/keyring-utils": "npm:^3.1.0" "@metamask/superstruct": "npm:^3.1.0" "@metamask/utils": "npm:^11.1.0" bitcoin-address-validation: "npm:^2.2.3" - checksum: 10/9b98fd1a2eb151f5be39fb6f4ae4de838afab9a0316937ed8f0443a203db5022fd0e297e44b48b777428d96e5079fee24af981b0ff46005fae728472fb37bf7a + checksum: 10/896f3f54080f0a450d47df63bfae93d2dd4e7e1bb8aa35c365e46ea6fd32c3fa27753611de095e9f6feae5d526e911e665628c8b304cb2120cb870f2e82ab095 languageName: node linkType: hard @@ -3683,8 +3672,8 @@ __metadata: "@metamask/eth-hd-keyring": "npm:^12.0.0" "@metamask/eth-sig-util": "npm:^8.2.0" "@metamask/eth-simple-keyring": "npm:^10.0.0" - "@metamask/keyring-api": "npm:^20.1.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" + "@metamask/keyring-api": "npm:^21.0.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" "@metamask/keyring-utils": "npm:^3.1.0" "@metamask/scure-bip39": "npm:^2.1.1" "@metamask/utils": "npm:^11.4.2" @@ -3706,35 +3695,35 @@ __metadata: languageName: unknown linkType: soft -"@metamask/keyring-internal-api@npm:^8.0.0, @metamask/keyring-internal-api@npm:^8.1.0": - version: 8.1.0 - resolution: "@metamask/keyring-internal-api@npm:8.1.0" +"@metamask/keyring-internal-api@npm:^9.0.0": + version: 9.0.0 + resolution: "@metamask/keyring-internal-api@npm:9.0.0" dependencies: - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-utils": "npm:^3.1.0" "@metamask/superstruct": "npm:^3.1.0" - checksum: 10/0fb615821a822de914b95a6b9678a1fc72f7f22b4ec694382977b0212e27ee5199887bd5112ea964e9bdd1aab1ba1a9e1ce3d9fd36957dc8ff8cf7c2f7003865 + checksum: 10/2603a3ffa42d53d2c621846288e759e9df2062fb6d46444466062915dbeda5fb3ec5344a48c1d282d37c6a689d7332e953c955be93f10e4bd56879c29ca2bf26 languageName: node linkType: hard -"@metamask/keyring-internal-snap-client@npm:^6.0.0": - version: 6.0.0 - resolution: "@metamask/keyring-internal-snap-client@npm:6.0.0" +"@metamask/keyring-internal-snap-client@npm:^7.1.0": + version: 7.1.0 + resolution: "@metamask/keyring-internal-snap-client@npm:7.1.0" dependencies: - "@metamask/base-controller": "npm:^7.1.1" - "@metamask/keyring-api": "npm:^20.0.0" - "@metamask/keyring-internal-api": "npm:^8.0.0" - "@metamask/keyring-snap-client": "npm:^7.0.0" + "@metamask/base-controller": "npm:^8.3.0" + "@metamask/keyring-api": "npm:^21.0.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" + "@metamask/keyring-snap-client": "npm:^8.0.0" "@metamask/keyring-utils": "npm:^3.1.0" - checksum: 10/8b358eacba55e6853c6e414387ae03b7bf43ab2b0b082e56e30a2d2c3f4999d05a61d388063d41146512af7e502bbd4aeaffa431ca57d2faa7caa04abf54245e + checksum: 10/4ac11ecbcf9394de606e35e4b3b666026c6eecf8885ae2ee2185c3a5fa26065e3905374343f8cc2b89c2f9ef0d2519be2cabaec7315b2c15fcd583e353c211df languageName: node linkType: hard -"@metamask/keyring-snap-client@npm:^7.0.0": - version: 7.0.0 - resolution: "@metamask/keyring-snap-client@npm:7.0.0" +"@metamask/keyring-snap-client@npm:^8.0.0": + version: 8.0.0 + resolution: "@metamask/keyring-snap-client@npm:8.0.0" dependencies: - "@metamask/keyring-api": "npm:^20.0.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-utils": "npm:^3.1.0" "@metamask/superstruct": "npm:^3.1.0" "@types/uuid": "npm:^9.0.8" @@ -3742,7 +3731,7 @@ __metadata: webextension-polyfill: "npm:^0.12.0" peerDependencies: "@metamask/providers": ^19.0.0 - checksum: 10/c82a46f61dc211eae6b7b36dd4e8d01b3508217b9a1004e92b361a08025ae88162458ddbddf443bb2b7dab1b2c5bfd95060ec80d5411be7c148bd5703e14858e + checksum: 10/f8735df636554f6c4c387126e033dcca7952f9278cadcaedb693a9ced5402ed21f6a64b14892b65b41b14facf9c6579b477b7fe42d8c602600d5d189206ce377 languageName: node linkType: hard @@ -3826,15 +3815,15 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/multichain-account-service@workspace:packages/multichain-account-service" dependencies: - "@metamask/account-api": "npm:^0.9.0" + "@metamask/account-api": "npm:^0.12.0" "@metamask/accounts-controller": "npm:^33.0.0" "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.3.0" - "@metamask/eth-snap-keyring": "npm:^16.1.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/eth-snap-keyring": "npm:^17.0.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-controller": "npm:^23.0.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" - "@metamask/keyring-snap-client": "npm:^7.0.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" + "@metamask/keyring-snap-client": "npm:^8.0.0" "@metamask/keyring-utils": "npm:^3.1.0" "@metamask/providers": "npm:^22.1.0" "@metamask/snaps-controllers": "npm:^14.0.1" @@ -3853,7 +3842,7 @@ __metadata: uuid: "npm:^8.3.2" webextension-polyfill: "npm:^0.12.0" peerDependencies: - "@metamask/account-api": ^0.9.0 + "@metamask/account-api": ^0.12.0 "@metamask/accounts-controller": ^33.0.0 "@metamask/keyring-controller": ^23.0.0 "@metamask/providers": ^22.0.0 @@ -3899,9 +3888,9 @@ __metadata: "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.3.0" "@metamask/controller-utils": "npm:^11.12.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-controller": "npm:^23.0.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" "@metamask/network-controller": "npm:^24.1.0" "@metamask/superstruct": "npm:^3.1.0" "@metamask/utils": "npm:^11.4.2" @@ -3931,10 +3920,10 @@ __metadata: "@metamask/accounts-controller": "npm:^33.0.0" "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.3.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-controller": "npm:^23.0.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" - "@metamask/keyring-snap-client": "npm:^7.0.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" + "@metamask/keyring-snap-client": "npm:^8.0.0" "@metamask/polling-controller": "npm:^14.0.0" "@metamask/snaps-controllers": "npm:^14.0.1" "@metamask/snaps-sdk": "npm:^9.0.0" @@ -4266,9 +4255,9 @@ __metadata: "@metamask/address-book-controller": "npm:^6.1.1" "@metamask/auto-changelog": "npm:^3.4.4" "@metamask/base-controller": "npm:^8.3.0" - "@metamask/keyring-api": "npm:^20.1.0" + "@metamask/keyring-api": "npm:^21.0.0" "@metamask/keyring-controller": "npm:^23.0.0" - "@metamask/keyring-internal-api": "npm:^8.1.0" + "@metamask/keyring-internal-api": "npm:^9.0.0" "@metamask/providers": "npm:^22.1.0" "@metamask/snaps-controllers": "npm:^14.0.1" "@metamask/snaps-sdk": "npm:^9.0.0" From 2b0b3fcb2627be27e6d9e664cf36583b9f7efc49 Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Thu, 11 Sep 2025 11:27:23 +0200 Subject: [PATCH 2/8] fix: fix breaking changes --- .../MultichainBalancesController.test.ts | 2 +- .../src/MultichainAccountService.test.ts | 10 ++-- .../src/MultichainAccountService.ts | 4 +- .../src/MultichainAccountWallet.test.ts | 51 ++++++++++--------- .../src/MultichainAccountWallet.ts | 51 +++++++++---------- .../src/providers/AccountProviderWrapper.ts | 4 +- .../src/providers/BaseBip44AccountProvider.ts | 2 +- .../src/providers/EvmAccountProvider.test.ts | 8 +-- .../src/providers/EvmAccountProvider.ts | 2 +- .../src/providers/SnapAccountProvider.ts | 2 +- .../src/providers/SolAccountProvider.test.ts | 6 +-- .../src/providers/SolAccountProvider.ts | 2 +- .../src/tests/accounts.ts | 4 +- .../src/tests/providers.ts | 4 +- .../tests/utils.ts | 2 +- .../MultichainTransactionsController.test.ts | 2 +- 16 files changed, 78 insertions(+), 78 deletions(-) diff --git a/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts b/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts index 8ced5a87218..7d28fc95176 100644 --- a/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts +++ b/packages/assets-controllers/src/MultichainBalancesController/MultichainBalancesController.test.ts @@ -44,7 +44,7 @@ const mockBtcAccount = { }, scopes: [BtcScope.Testnet], options: {}, - methods: [BtcMethod.SendBitcoin], + methods: Object.values(BtcMethod), type: BtcAccountType.P2wpkh, }; diff --git a/packages/multichain-account-service/src/MultichainAccountService.test.ts b/packages/multichain-account-service/src/MultichainAccountService.test.ts index 1b2562dda1f..1cd7397fa7c 100644 --- a/packages/multichain-account-service/src/MultichainAccountService.test.ts +++ b/packages/multichain-account-service/src/MultichainAccountService.test.ts @@ -931,7 +931,7 @@ describe('MultichainAccountService', () => { jest.spyOn(solProvider, 'getAccounts'); jest.spyOn(solProvider, 'getAccount'); jest.spyOn(solProvider, 'createAccounts'); - jest.spyOn(solProvider, 'discoverAndCreateAccounts'); + jest.spyOn(solProvider, 'discoverAccounts'); jest.spyOn(solProvider, 'isAccountCompatible'); wrapper = new AccountProviderWrapper( @@ -985,24 +985,24 @@ describe('MultichainAccountService', () => { expect(result).toStrictEqual([]); }); - it('returns empty array when discoverAndCreateAccounts() is disabled', async () => { + it('returns empty array when discoverAccounts() is disabled', async () => { const options = { entropySource: MOCK_HD_ACCOUNT_1.options.entropy.id, groupIndex: 0, }; // Enable first - should work normally - (solProvider.discoverAndCreateAccounts as jest.Mock).mockResolvedValue([ + (solProvider.discoverAccounts as jest.Mock).mockResolvedValue([ MOCK_HD_ACCOUNT_1, ]); - expect(await wrapper.discoverAndCreateAccounts(options)).toStrictEqual([ + expect(await wrapper.discoverAccounts(options)).toStrictEqual([ MOCK_HD_ACCOUNT_1, ]); // Disable - should return empty array wrapper.setEnabled(false); - const result = await wrapper.discoverAndCreateAccounts(options); + const result = await wrapper.discoverAccounts(options); expect(result).toStrictEqual([]); }); diff --git a/packages/multichain-account-service/src/MultichainAccountService.ts b/packages/multichain-account-service/src/MultichainAccountService.ts index 52b9671fa2b..fe3c13d91b0 100644 --- a/packages/multichain-account-service/src/MultichainAccountService.ts +++ b/packages/multichain-account-service/src/MultichainAccountService.ts @@ -413,7 +413,7 @@ export class MultichainAccountService { */ async alignWallets(): Promise { const wallets = this.getMultichainAccountWallets(); - await Promise.all(wallets.map((w) => w.alignGroups())); + await Promise.all(wallets.map((w) => w.alignAccounts())); } /** @@ -423,6 +423,6 @@ export class MultichainAccountService { */ async alignWallet(entropySource: EntropySourceId): Promise { const wallet = this.getMultichainAccountWallet({ entropySource }); - await wallet.alignGroups(); + await wallet.alignAccounts(); } } diff --git a/packages/multichain-account-service/src/MultichainAccountWallet.test.ts b/packages/multichain-account-service/src/MultichainAccountWallet.test.ts index ae0060ebaba..5ed67a7ac3b 100644 --- a/packages/multichain-account-service/src/MultichainAccountWallet.test.ts +++ b/packages/multichain-account-service/src/MultichainAccountWallet.test.ts @@ -81,6 +81,7 @@ describe('MultichainAccountWallet', () => { const expectedWalletId = toMultichainAccountWalletId(entropySource); expect(wallet.id).toStrictEqual(expectedWalletId); + expect(wallet.status).toBe('ready'); expect(wallet.type).toBe(AccountWalletType.Entropy); expect(wallet.entropySource).toStrictEqual(entropySource); expect(wallet.getMultichainAccountGroups()).toHaveLength(1); // All internal accounts are using index 0, so it means only 1 multichain account. @@ -356,7 +357,7 @@ describe('MultichainAccountWallet', () => { }); }); - describe('alignGroups', () => { + describe('alignAccounts', () => { it('creates missing accounts only for providers with no accounts associated with a particular group index', async () => { const mockEvmAccount1 = MockAccountBuilder.from(MOCK_HD_ACCOUNT_1) .withEntropySource(MOCK_HD_KEYRING_1.metadata.id) @@ -374,7 +375,7 @@ describe('MultichainAccountWallet', () => { accounts: [[mockEvmAccount1, mockEvmAccount2], [mockSolAccount]], }); - await wallet.alignGroups(); + await wallet.alignAccounts(); // EVM provider already has group 0 and 1; should not be called. expect(providers[0].createAccounts).not.toHaveBeenCalled(); @@ -429,7 +430,7 @@ describe('MultichainAccountWallet', () => { const { wallet } = setup(); // Start alignment (don't await yet) - const alignmentPromise = wallet.alignGroups(); + const alignmentPromise = wallet.alignAccounts(); // Check if alignment is in progress expect(wallet.getIsAlignmentInProgress()).toBe(true); @@ -443,7 +444,7 @@ describe('MultichainAccountWallet', () => { }); describe('concurrent alignment prevention', () => { - it('prevents concurrent alignGroups calls', async () => { + it('prevents concurrent alignAccounts calls', async () => { // Setup with EVM account in group 0, Sol account in group 1 (missing group 0) const mockEvmAccount = MockAccountBuilder.from(MOCK_HD_ACCOUNT_1) .withEntropySource(MOCK_HD_KEYRING_1.metadata.id) @@ -463,10 +464,10 @@ describe('MultichainAccountWallet', () => { ); // Start first alignment - const firstAlignment = wallet.alignGroups(); + const firstAlignment = wallet.alignAccounts(); // Start second alignment while first is still running - const secondAlignment = wallet.alignGroups(); + const secondAlignment = wallet.alignAccounts(); // Both should complete without error await Promise.all([firstAlignment, secondAlignment]); @@ -508,7 +509,7 @@ describe('MultichainAccountWallet', () => { }); }); - describe('discoverAndCreateAccounts', () => { + describe('discoverAccounts', () => { it('fast-forwards lagging providers to the highest group index', async () => { const { wallet, providers } = setup({ accounts: [[], []], @@ -518,24 +519,24 @@ describe('MultichainAccountWallet', () => { providers[1].getName.mockImplementation(() => 'Solana'); // Fast provider: succeeds at indices 0,1 then stops at 2 - providers[0].discoverAndCreateAccounts + providers[0].discoverAccounts .mockImplementationOnce(() => Promise.resolve([{}])) .mockImplementationOnce(() => Promise.resolve([{}])) .mockImplementationOnce(() => Promise.resolve([])); // Slow provider: first call (index 0) resolves on a later tick, then it should be // rescheduled directly at index 2 (the max group index) and stop there - providers[1].discoverAndCreateAccounts + providers[1].discoverAccounts .mockImplementationOnce( () => new Promise((resolve) => setTimeout(() => resolve([{}]), 100)), ) .mockImplementationOnce(() => Promise.resolve([])); // Avoid side-effects from alignment for this orchestrator behavior test - jest.spyOn(wallet, 'alignGroups').mockResolvedValue(undefined); + jest.spyOn(wallet, 'alignAccounts').mockResolvedValue(undefined); jest.useFakeTimers(); - const discovery = wallet.discoverAndCreateAccounts(); + const discovery = wallet.discoverAccounts(); // Allow fast provider microtasks to run and advance maxGroupIndex first await Promise.resolve(); await Promise.resolve(); @@ -544,12 +545,12 @@ describe('MultichainAccountWallet', () => { // Assert call order per provider shows skipping ahead const fastIndices = Array.from( - providers[0].discoverAndCreateAccounts.mock.calls, + providers[0].discoverAccounts.mock.calls, ).map((c) => Number(c[0].groupIndex)); expect(fastIndices).toStrictEqual([0, 1, 2]); const slowIndices = Array.from( - providers[1].discoverAndCreateAccounts.mock.calls, + providers[1].discoverAccounts.mock.calls, ).map((c) => Number(c[0].groupIndex)); expect(slowIndices).toStrictEqual([0, 2]); }); @@ -563,21 +564,21 @@ describe('MultichainAccountWallet', () => { providers[1].getName.mockImplementation(() => 'Solana'); // First provider finds one at 0 then stops at 1 - providers[0].discoverAndCreateAccounts + providers[0].discoverAccounts .mockImplementationOnce(() => Promise.resolve([{}])) .mockImplementationOnce(() => Promise.resolve([])); // Second provider stops immediately at 0 - providers[1].discoverAndCreateAccounts.mockImplementationOnce(() => + providers[1].discoverAccounts.mockImplementationOnce(() => Promise.resolve([]), ); - jest.spyOn(wallet, 'alignGroups').mockResolvedValue(undefined); + jest.spyOn(wallet, 'alignAccounts').mockResolvedValue(undefined); - await wallet.discoverAndCreateAccounts(); + await wallet.discoverAccounts(); - expect(providers[0].discoverAndCreateAccounts).toHaveBeenCalledTimes(2); - expect(providers[1].discoverAndCreateAccounts).toHaveBeenCalledTimes(1); + expect(providers[0].discoverAccounts).toHaveBeenCalledTimes(2); + expect(providers[1].discoverAccounts).toHaveBeenCalledTimes(1); }); it('marks a provider stopped on error and does not reschedule it', async () => { @@ -589,28 +590,28 @@ describe('MultichainAccountWallet', () => { providers[1].getName.mockImplementation(() => 'Solana'); const consoleSpy = jest.spyOn(console, 'error').mockImplementation(); - jest.spyOn(wallet, 'alignGroups').mockResolvedValue(undefined); + jest.spyOn(wallet, 'alignAccounts').mockResolvedValue(undefined); // First provider throws on its first step - providers[0].discoverAndCreateAccounts.mockImplementationOnce(() => + providers[0].discoverAccounts.mockImplementationOnce(() => Promise.reject(new Error('Failed to discover accounts')), ); // Second provider stops immediately - providers[1].discoverAndCreateAccounts.mockImplementationOnce(() => + providers[1].discoverAccounts.mockImplementationOnce(() => Promise.resolve([]), ); - await wallet.discoverAndCreateAccounts(); + await wallet.discoverAccounts(); // Thrown provider should have been called once and not rescheduled - expect(providers[0].discoverAndCreateAccounts).toHaveBeenCalledTimes(1); + expect(providers[0].discoverAccounts).toHaveBeenCalledTimes(1); expect(consoleSpy).toHaveBeenCalledWith(expect.any(Error)); expect((consoleSpy.mock.calls[0][0] as Error).message).toBe( 'Failed to discover accounts', ); // Other provider proceeds normally - expect(providers[1].discoverAndCreateAccounts).toHaveBeenCalledTimes(1); + expect(providers[1].discoverAccounts).toHaveBeenCalledTimes(1); }); }); }); diff --git a/packages/multichain-account-service/src/MultichainAccountWallet.ts b/packages/multichain-account-service/src/MultichainAccountWallet.ts index d813e9515ce..77241f39c93 100644 --- a/packages/multichain-account-service/src/MultichainAccountWallet.ts +++ b/packages/multichain-account-service/src/MultichainAccountWallet.ts @@ -9,6 +9,7 @@ import type { Bip44Account, MultichainAccountWalletId, MultichainAccountWallet as MultichainAccountWalletDefinition, + MultichainAccountWalletStatus, } from '@metamask/account-api'; import type { AccountGroupId } from '@metamask/account-api'; import { @@ -24,18 +25,13 @@ import type { MultichainAccountServiceMessenger } from './types'; /** * The context for a provider discovery. */ -type AccountProviderDiscoveryContext = { - provider: NamedAccountProvider; +type AccountProviderDiscoveryContext< + Account extends Bip44Account, +> = { + provider: NamedAccountProvider; stopped: boolean; groupIndex: number; - count: number; -}; - -/** - * The metrics resulting from account discovery. - */ -export type AccountDiscoveryMetrics = { - [providerName: string]: number; + accounts: Account[]; }; const log = createProjectLogger('multichain-account-service'); @@ -165,6 +161,15 @@ export class MultichainAccountWallet< return this.#entropySource; } + /** + * Gets the multichain account wallet status. + * + * @returns The multichain account wallet status. + */ + get status(): MultichainAccountWalletStatus { + return 'ready'; + } + /** * Gets multichain account for a given ID. * The default group ID will default to the multichain account with index 0. @@ -360,7 +365,7 @@ export class MultichainAccountWallet< /** * Align all multichain account groups. */ - async alignGroups(): Promise { + async alignAccounts(): Promise { if (this.#isAlignmentInProgress) { return; // Prevent concurrent alignments } @@ -400,14 +405,14 @@ export class MultichainAccountWallet< * * @returns The discovered accounts for each provider. */ - async discoverAndCreateAccounts(): Promise { + async discoverAccounts(): Promise { // Start with the next available group index (so we can resume the discovery // from there). let maxGroupIndex = this.getNextGroupIndex(); // One serialized loop per provider; all run concurrently const runProviderDiscovery = async ( - context: AccountProviderDiscoveryContext, + context: AccountProviderDiscoveryContext, ) => { const message = (stepName: string, groupIndex: number) => `[${context.provider.getName()}] Discovery ${stepName} (groupIndex=${groupIndex})`; @@ -418,9 +423,9 @@ export class MultichainAccountWallet< log(message('STARTED', targetGroupIndex)); - let accounts: Bip44Account[] = []; + let accounts: Account[] = []; try { - accounts = await context.provider.discoverAndCreateAccounts({ + accounts = await context.provider.discoverAccounts({ entropySource: this.#entropySource, groupIndex: targetGroupIndex, }); @@ -439,7 +444,7 @@ export class MultichainAccountWallet< log(message('SUCCEEDED', targetGroupIndex)); - context.count += accounts.length; + context.accounts = context.accounts.concat(accounts); const nextGroupIndex = targetGroupIndex + 1; context.groupIndex = nextGroupIndex; @@ -450,12 +455,12 @@ export class MultichainAccountWallet< } }; - const providerContexts: AccountProviderDiscoveryContext[] = + const providerContexts: AccountProviderDiscoveryContext[] = this.#providers.map((provider) => ({ provider, stopped: false, groupIndex: maxGroupIndex, - count: 0, + accounts: [], })); // Start discovery for each providers. @@ -467,14 +472,8 @@ export class MultichainAccountWallet< // Align missing accounts from group. This is required to create missing account from non-discovered // indexes for some providers. - await this.alignGroups(); - - const discoveredAccounts: Record = {}; - for (const context of providerContexts) { - const providerName = context.provider.getName(); - discoveredAccounts[providerName] = context.count; - } + await this.alignAccounts(); - return discoveredAccounts; + return providerContexts.flatMap((context) => context.accounts); } } diff --git a/packages/multichain-account-service/src/providers/AccountProviderWrapper.ts b/packages/multichain-account-service/src/providers/AccountProviderWrapper.ts index 04605380660..51ff6cb2c20 100644 --- a/packages/multichain-account-service/src/providers/AccountProviderWrapper.ts +++ b/packages/multichain-account-service/src/providers/AccountProviderWrapper.ts @@ -99,14 +99,14 @@ export class AccountProviderWrapper extends BaseBip44AccountProvider { * @param options.groupIndex - The group index to use. * @returns Promise resolving to discovered accounts, or empty array if disabled. */ - async discoverAndCreateAccounts(options: { + async discoverAccounts(options: { entropySource: EntropySourceId; groupIndex: number; }): Promise[]> { if (!this.isEnabled) { return []; } - return this.provider.discoverAndCreateAccounts(options); + return this.provider.discoverAccounts(options); } } diff --git a/packages/multichain-account-service/src/providers/BaseBip44AccountProvider.ts b/packages/multichain-account-service/src/providers/BaseBip44AccountProvider.ts index 8a46df92f73..fd3e853d0c2 100644 --- a/packages/multichain-account-service/src/providers/BaseBip44AccountProvider.ts +++ b/packages/multichain-account-service/src/providers/BaseBip44AccountProvider.ts @@ -125,7 +125,7 @@ export abstract class BaseBip44AccountProvider implements NamedAccountProvider { groupIndex: number; }): Promise[]>; - abstract discoverAndCreateAccounts({ + abstract discoverAccounts({ entropySource, groupIndex, }: { diff --git a/packages/multichain-account-service/src/providers/EvmAccountProvider.test.ts b/packages/multichain-account-service/src/providers/EvmAccountProvider.test.ts index b75b7e80221..08d74425da4 100644 --- a/packages/multichain-account-service/src/providers/EvmAccountProvider.test.ts +++ b/packages/multichain-account-service/src/providers/EvmAccountProvider.test.ts @@ -281,7 +281,7 @@ describe('EvmAccountProvider', () => { }; expect( - await provider.discoverAndCreateAccounts({ + await provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 0, }), @@ -298,7 +298,7 @@ describe('EvmAccountProvider', () => { mocks.mockProviderRequest.mockReturnValue('0x0'); expect( - await provider.discoverAndCreateAccounts({ + await provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 1, }), @@ -319,7 +319,7 @@ describe('EvmAccountProvider', () => { }); await expect( - provider.discoverAndCreateAccounts({ + provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 1, }), @@ -334,7 +334,7 @@ describe('EvmAccountProvider', () => { }); expect( - await provider.discoverAndCreateAccounts({ + await provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 0, }), diff --git a/packages/multichain-account-service/src/providers/EvmAccountProvider.ts b/packages/multichain-account-service/src/providers/EvmAccountProvider.ts index 173e3765f3b..7ed0041d6e0 100644 --- a/packages/multichain-account-service/src/providers/EvmAccountProvider.ts +++ b/packages/multichain-account-service/src/providers/EvmAccountProvider.ts @@ -125,7 +125,7 @@ export class EvmAccountProvider extends BaseBip44AccountProvider { * @param opts.groupIndex - The index of the group to create the accounts for. * @returns The accounts for the EVM provider. */ - async discoverAndCreateAccounts(opts: { + async discoverAccounts(opts: { entropySource: EntropySourceId; groupIndex: number; }): Promise[]> { diff --git a/packages/multichain-account-service/src/providers/SnapAccountProvider.ts b/packages/multichain-account-service/src/providers/SnapAccountProvider.ts index 47d5875c072..6b1e814f9ca 100644 --- a/packages/multichain-account-service/src/providers/SnapAccountProvider.ts +++ b/packages/multichain-account-service/src/providers/SnapAccountProvider.ts @@ -50,7 +50,7 @@ export abstract class SnapAccountProvider extends BaseBip44AccountProvider { groupIndex: number; }): Promise[]>; - abstract discoverAndCreateAccounts(options: { + abstract discoverAccounts(options: { entropySource: EntropySourceId; groupIndex: number; }): Promise[]>; diff --git a/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts b/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts index 52720d5d62e..d825e117186 100644 --- a/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts +++ b/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts @@ -256,7 +256,7 @@ describe('SolAccountProvider', () => { // Simulate one discovered account at the requested index. mocks.handleRequest.mockReturnValue([MOCK_SOL_DISCOVERED_ACCOUNT_1]); - const created = await provider.discoverAndCreateAccounts({ + const created = await provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 0, }); @@ -276,7 +276,7 @@ describe('SolAccountProvider', () => { // Simulate one discovered account — should resolve to the existing one mocks.handleRequest.mockReturnValue([MOCK_SOL_DISCOVERED_ACCOUNT_1]); - const discovered = await provider.discoverAndCreateAccounts({ + const discovered = await provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 0, }); @@ -291,7 +291,7 @@ describe('SolAccountProvider', () => { mocks.handleRequest.mockReturnValue([]); - const discovered = await provider.discoverAndCreateAccounts({ + const discovered = await provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 0, }); diff --git a/packages/multichain-account-service/src/providers/SolAccountProvider.ts b/packages/multichain-account-service/src/providers/SolAccountProvider.ts index de674e005b2..530f1a67827 100644 --- a/packages/multichain-account-service/src/providers/SolAccountProvider.ts +++ b/packages/multichain-account-service/src/providers/SolAccountProvider.ts @@ -95,7 +95,7 @@ export class SolAccountProvider extends SnapAccountProvider { return [account]; } - async discoverAndCreateAccounts({ + async discoverAccounts({ entropySource, groupIndex, }: { diff --git a/packages/multichain-account-service/src/tests/accounts.ts b/packages/multichain-account-service/src/tests/accounts.ts index d9944832cb4..deee1898f61 100644 --- a/packages/multichain-account-service/src/tests/accounts.ts +++ b/packages/multichain-account-service/src/tests/accounts.ts @@ -145,7 +145,7 @@ export const MOCK_SOL_DISCOVERED_ACCOUNT_1: DiscoveredAccount = { export const MOCK_BTC_P2WPKH_ACCOUNT_1: Bip44Account = { id: 'b0f030d8-e101-4b5a-a3dd-13f8ca8ec1db', type: BtcAccountType.P2wpkh, - methods: [BtcMethod.SendBitcoin], + methods: Object.values(BtcMethod), address: 'bc1qx8ls07cy8j8nrluy2u0xwn7gh8fxg0rg4s8zze', options: { entropy: { @@ -174,7 +174,7 @@ export const MOCK_BTC_P2WPKH_ACCOUNT_1: Bip44Account = { export const MOCK_BTC_P2TR_ACCOUNT_1: Bip44Account = { id: 'a20c2e1a-6ff6-40ba-b8e0-ccdb6f9933bb', type: BtcAccountType.P2tr, - methods: [BtcMethod.SendBitcoin], + methods: Object.values(BtcMethod), address: 'tb1p5cyxnuxmeuwuvkwfem96lxx9wex9kkf4mt9ll6q60jfsnrzqg4sszkqjnh', options: { entropy: { diff --git a/packages/multichain-account-service/src/tests/providers.ts b/packages/multichain-account-service/src/tests/providers.ts index dfc81f3f7f1..41d0cd1cae3 100644 --- a/packages/multichain-account-service/src/tests/providers.ts +++ b/packages/multichain-account-service/src/tests/providers.ts @@ -9,7 +9,7 @@ export type MockAccountProvider = { getAccount: jest.Mock; getAccounts: jest.Mock; createAccounts: jest.Mock; - discoverAndCreateAccounts: jest.Mock; + discoverAccounts: jest.Mock; isAccountCompatible?: jest.Mock; getName: jest.Mock; }; @@ -22,7 +22,7 @@ export function makeMockAccountProvider( getAccount: jest.fn(), getAccounts: jest.fn(), createAccounts: jest.fn(), - discoverAndCreateAccounts: jest.fn(), + discoverAccounts: jest.fn(), isAccountCompatible: jest.fn(), getName: jest.fn(), }; diff --git a/packages/multichain-network-controller/tests/utils.ts b/packages/multichain-network-controller/tests/utils.ts index 6c2f2f22794..aa0ec3adccd 100644 --- a/packages/multichain-network-controller/tests/utils.ts +++ b/packages/multichain-network-controller/tests/utils.ts @@ -81,7 +81,7 @@ export const createMockInternalAccount = ({ newScopes = [EthScope.Mainnet]; break; case BtcAccountType.P2wpkh: - methods = [BtcMethod.SendBitcoin]; + methods = Object.values(BtcMethod); newScopes = [BtcScope.Mainnet]; break; case SolAccountType.DataAccount: diff --git a/packages/multichain-transactions-controller/src/MultichainTransactionsController.test.ts b/packages/multichain-transactions-controller/src/MultichainTransactionsController.test.ts index 708545fba77..d15208b8b34 100644 --- a/packages/multichain-transactions-controller/src/MultichainTransactionsController.test.ts +++ b/packages/multichain-transactions-controller/src/MultichainTransactionsController.test.ts @@ -45,7 +45,7 @@ const mockBtcAccount = { lastSelected: 0, }, options: {}, - methods: [BtcMethod.SendBitcoin], + methods: Object.values(BtcMethod), type: BtcAccountType.P2wpkh, scopes: [], }; From ffbf1d202b3bc1c83647e4c45b24dc4b1138f24c Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Thu, 11 Sep 2025 11:47:29 +0200 Subject: [PATCH 3/8] chore: update changelogs --- packages/account-tree-controller/CHANGELOG.md | 4 ++++ packages/accounts-controller/CHANGELOG.md | 3 +++ packages/assets-controllers/CHANGELOG.md | 1 + packages/bridge-controller/CHANGELOG.md | 4 ++++ packages/bridge-status-controller/CHANGELOG.md | 4 ++++ packages/earn-controller/CHANGELOG.md | 1 + packages/keyring-controller/CHANGELOG.md | 2 ++ packages/multichain-account-service/CHANGELOG.md | 7 +++++++ packages/multichain-network-controller/CHANGELOG.md | 2 ++ packages/multichain-transactions-controller/CHANGELOG.md | 3 +++ packages/profile-sync-controller/CHANGELOG.md | 5 +++++ 11 files changed, 36 insertions(+) diff --git a/packages/account-tree-controller/CHANGELOG.md b/packages/account-tree-controller/CHANGELOG.md index 3e50433a0f3..c2bdeb645f1 100644 --- a/packages/account-tree-controller/CHANGELOG.md +++ b/packages/account-tree-controller/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- **BREAKING:** Bump peer dependency `@metamask/account-api` from `^0.9.0` to `^0.12.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) + ## [0.14.0] ### Added diff --git a/packages/accounts-controller/CHANGELOG.md b/packages/accounts-controller/CHANGELOG.md index 5c8a5f482a7..9a200c10540 100644 --- a/packages/accounts-controller/CHANGELOG.md +++ b/packages/accounts-controller/CHANGELOG.md @@ -14,6 +14,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Bump `@metamask/base-controller` from `^8.1.0` to `^8.3.0` ([#6355](https://github.com/MetaMask/core/pull/6355), [#6465](https://github.com/MetaMask/core/pull/6465)) +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/eth-snap-keyring` from `^16.1.0` to `^17.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [33.0.0] diff --git a/packages/assets-controllers/CHANGELOG.md b/packages/assets-controllers/CHANGELOG.md index 400dc50b327..6e64adaaf66 100644 --- a/packages/assets-controllers/CHANGELOG.md +++ b/packages/assets-controllers/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - **BREAKING:** Replace `useAccountAPI` boolean with `accountsApiChainIds` array in `TokenBalancesController` for granular per-chain Accounts API configuration ([#6487](https://github.com/MetaMask/core/pull/6487)) +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [74.3.3] diff --git a/packages/bridge-controller/CHANGELOG.md b/packages/bridge-controller/CHANGELOG.md index 6946f9123fa..289c175f55d 100644 --- a/packages/bridge-controller/CHANGELOG.md +++ b/packages/bridge-controller/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) + ## [42.0.0] ### Added diff --git a/packages/bridge-status-controller/CHANGELOG.md b/packages/bridge-status-controller/CHANGELOG.md index 9fd8e134d94..275ddf261c5 100644 --- a/packages/bridge-status-controller/CHANGELOG.md +++ b/packages/bridge-status-controller/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) + ## [42.0.0] ### Added diff --git a/packages/earn-controller/CHANGELOG.md b/packages/earn-controller/CHANGELOG.md index 4e0a0549810..168dc6cd89c 100644 --- a/packages/earn-controller/CHANGELOG.md +++ b/packages/earn-controller/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Bump `@metamask/base-controller` from `^8.2.0` to `^8.3.0` ([#6465](https://github.com/MetaMask/core/pull/6465)) +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [7.0.0] diff --git a/packages/keyring-controller/CHANGELOG.md b/packages/keyring-controller/CHANGELOG.md index 0c29af2401b..03dce66a600 100644 --- a/packages/keyring-controller/CHANGELOG.md +++ b/packages/keyring-controller/CHANGELOG.md @@ -15,6 +15,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Bump `@metamask/base-controller` from `^8.1.0` to `^8.3.0` ([#6355](https://github.com/MetaMask/core/pull/6355), [#6465](https://github.com/MetaMask/core/pull/6465)) +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [23.0.0] diff --git a/packages/multichain-account-service/CHANGELOG.md b/packages/multichain-account-service/CHANGELOG.md index 5c43ecc56a6..8aa9f99fa05 100644 --- a/packages/multichain-account-service/CHANGELOG.md +++ b/packages/multichain-account-service/CHANGELOG.md @@ -13,6 +13,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add `multichainAccountGroupCreated` event emitted from wallet level when new groups are created. - Add `multichainAccountGroupUpdated` event emitted from wallet level when groups are synchronized. +### Changed + +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-snap-client` from `^7.0.0` to `^8.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/eth-snap-keyring` from `^16.1.0` to `^17.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) + ## [0.7.0] ### Added diff --git a/packages/multichain-network-controller/CHANGELOG.md b/packages/multichain-network-controller/CHANGELOG.md index 8e5dcfcc17f..f4471ac8bd7 100644 --- a/packages/multichain-network-controller/CHANGELOG.md +++ b/packages/multichain-network-controller/CHANGELOG.md @@ -14,6 +14,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Bump `@metamask/base-controller` from `^8.1.0` to `^8.3.0` ([#6355](https://github.com/MetaMask/core/pull/6355), [#6465](https://github.com/MetaMask/core/pull/6465)) +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [0.12.0] diff --git a/packages/multichain-transactions-controller/CHANGELOG.md b/packages/multichain-transactions-controller/CHANGELOG.md index 643b0789fe9..437952aecf1 100644 --- a/packages/multichain-transactions-controller/CHANGELOG.md +++ b/packages/multichain-transactions-controller/CHANGELOG.md @@ -14,6 +14,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Bump `@metamask/base-controller` from `^8.1.0` to `^8.3.0` ([#6355](https://github.com/MetaMask/core/pull/6355), [#6465](https://github.com/MetaMask/core/pull/6465)) +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-snap-client` from `^7.0.0` to `^8.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [5.0.0] diff --git a/packages/profile-sync-controller/CHANGELOG.md b/packages/profile-sync-controller/CHANGELOG.md index aec1634afbe..46f49f8686a 100644 --- a/packages/profile-sync-controller/CHANGELOG.md +++ b/packages/profile-sync-controller/CHANGELOG.md @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) + ## [25.0.0] ### Added From aa81a4b89230edcf244b7b96e58ae05536f945d6 Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Thu, 11 Sep 2025 13:55:03 +0200 Subject: [PATCH 4/8] chore: update accounts-controller changelog --- packages/accounts-controller/CHANGELOG.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/accounts-controller/CHANGELOG.md b/packages/accounts-controller/CHANGELOG.md index 9a200c10540..1eebbab95f3 100644 --- a/packages/accounts-controller/CHANGELOG.md +++ b/packages/accounts-controller/CHANGELOG.md @@ -13,10 +13,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- **BREAKING:** Bump accounts related packages ([#6560](https://github.com/MetaMask/core/pull/6560)) + - The `BtcMethod` enum has been updated with new methods and no longer support `SendBitcoin` method. + - Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` + - Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` + - Bump `@metamask/eth-snap-keyring` from `^16.1.0` to `^17.0.0` - Bump `@metamask/base-controller` from `^8.1.0` to `^8.3.0` ([#6355](https://github.com/MetaMask/core/pull/6355), [#6465](https://github.com/MetaMask/core/pull/6465)) -- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) -- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) -- Bump `@metamask/eth-snap-keyring` from `^16.1.0` to `^17.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [33.0.0] From 0cc7269a3b225a8dea7ffaf585a453c5d78da2be Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Thu, 11 Sep 2025 13:57:14 +0200 Subject: [PATCH 5/8] chore: pr feedback --- .../multichain-account-service/src/MultichainAccountWallet.ts | 2 +- .../src/providers/SolAccountProvider.test.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/multichain-account-service/src/MultichainAccountWallet.ts b/packages/multichain-account-service/src/MultichainAccountWallet.ts index 77241f39c93..4e5fd9e66a9 100644 --- a/packages/multichain-account-service/src/MultichainAccountWallet.ts +++ b/packages/multichain-account-service/src/MultichainAccountWallet.ts @@ -363,7 +363,7 @@ export class MultichainAccountWallet< } /** - * Align all multichain account groups. + * Align all accounts from each existing multichain account groups. */ async alignAccounts(): Promise { if (this.#isAlignmentInProgress) { diff --git a/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts b/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts index d825e117186..5a80368795f 100644 --- a/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts +++ b/packages/multichain-account-service/src/providers/SolAccountProvider.test.ts @@ -256,12 +256,12 @@ describe('SolAccountProvider', () => { // Simulate one discovered account at the requested index. mocks.handleRequest.mockReturnValue([MOCK_SOL_DISCOVERED_ACCOUNT_1]); - const created = await provider.discoverAccounts({ + const discovered = await provider.discoverAccounts({ entropySource: MOCK_HD_KEYRING_1.metadata.id, groupIndex: 0, }); - expect(created).toHaveLength(1); + expect(discovered).toHaveLength(1); // Ensure we did go through creation path expect(mocks.keyring.createAccount).toHaveBeenCalled(); // Provider should now expose one account (newly created) From b9d57e1825940b47fc3eeff723fc8eb7a16208fd Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Thu, 11 Sep 2025 14:07:54 +0200 Subject: [PATCH 6/8] Revert "chore: update accounts-controller changelog" This reverts commit aa81a4b89230edcf244b7b96e58ae05536f945d6. --- packages/accounts-controller/CHANGELOG.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/accounts-controller/CHANGELOG.md b/packages/accounts-controller/CHANGELOG.md index 1eebbab95f3..9a200c10540 100644 --- a/packages/accounts-controller/CHANGELOG.md +++ b/packages/accounts-controller/CHANGELOG.md @@ -13,12 +13,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- **BREAKING:** Bump accounts related packages ([#6560](https://github.com/MetaMask/core/pull/6560)) - - The `BtcMethod` enum has been updated with new methods and no longer support `SendBitcoin` method. - - Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` - - Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` - - Bump `@metamask/eth-snap-keyring` from `^16.1.0` to `^17.0.0` - Bump `@metamask/base-controller` from `^8.1.0` to `^8.3.0` ([#6355](https://github.com/MetaMask/core/pull/6355), [#6465](https://github.com/MetaMask/core/pull/6465)) +- Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- Bump `@metamask/eth-snap-keyring` from `^16.1.0` to `^17.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) ## [33.0.0] From aefd4c24a2a35d577ebe0e06f65a487c93628adc Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Thu, 11 Sep 2025 14:28:52 +0200 Subject: [PATCH 7/8] chore: fix missing entries in changelog --- packages/multichain-account-service/CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/multichain-account-service/CHANGELOG.md b/packages/multichain-account-service/CHANGELOG.md index 8aa9f99fa05..3d8464af138 100644 --- a/packages/multichain-account-service/CHANGELOG.md +++ b/packages/multichain-account-service/CHANGELOG.md @@ -15,6 +15,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- **BREAKING:** Rename `MultichainAccountWallet.discoverAndCreateAccounts` to `MultichainAccountWallet.discoverAccounts` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- **BREAKING:** Rename `MultichainAccountWallet.alignGroups` to `MultichainAccountWallet.alignAccounts` ([#6560](https://github.com/MetaMask/core/pull/6560)) - Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) - Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) - Bump `@metamask/keyring-snap-client` from `^7.0.0` to `^8.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) From 1c3e5868de82f52a8fb9a8a97e715a15f9556017 Mon Sep 17 00:00:00 2001 From: Charly Chevalier Date: Thu, 11 Sep 2025 14:47:38 +0200 Subject: [PATCH 8/8] chore: fix missing entries in changelog --- packages/multichain-account-service/CHANGELOG.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/multichain-account-service/CHANGELOG.md b/packages/multichain-account-service/CHANGELOG.md index 3d8464af138..4dbddb7c3e5 100644 --- a/packages/multichain-account-service/CHANGELOG.md +++ b/packages/multichain-account-service/CHANGELOG.md @@ -15,8 +15,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- **BREAKING:** Rename `MultichainAccountWallet.discoverAndCreateAccounts` to `MultichainAccountWallet.discoverAccounts` ([#6560](https://github.com/MetaMask/core/pull/6560)) -- **BREAKING:** Rename `MultichainAccountWallet.alignGroups` to `MultichainAccountWallet.alignAccounts` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- **BREAKING:** Bump peer dependency `@metamask/account-api` from `^0.9.0` to `^0.12.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- **BREAKING:** Rename `alignGroups` to `alignAccounts` for `MultichainAccountWallet` ([#6560](https://github.com/MetaMask/core/pull/6560)) +- **BREAKING:** Rename `MultichainAccountWallet.discoverAndCreateAccounts` to `discoverAccounts` for `MultichainAccountWallet` and `*Provider*` types ([#6560](https://github.com/MetaMask/core/pull/6560)) - Bump `@metamask/keyring-api` from `^20.1.0` to `^21.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) - Bump `@metamask/keyring-internal-api` from `^8.1.0` to `^9.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560)) - Bump `@metamask/keyring-snap-client` from `^7.0.0` to `^8.0.0` ([#6560](https://github.com/MetaMask/core/pull/6560))