Skip to content

Releases: MetaMask/core

642.0.0

27 Oct 19:17
f55cc4a

Choose a tag to compare

@metamask/account-tree-controller 2.0.0

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6380)
    • Previously, AccountTreeController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Bump @metamask/accounts-controller from ^33.0.0 to ^34.0.0 (#6962)
  • BREAKING: Bump @metamask/keyring-controller from ^23.0.0 to ^24.0.0 (#6962)
  • BREAKING: Bump @metamask/multichain-account-service from ^1.0.0 to ^2.0.0 (#6962)
  • BREAKING: Bump @metamask/profile-sync-controller from ^25.0.0 to ^26.0.0 (#6962)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

@metamask/accounts-controller 34.0.0

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6426)
    • Previously, AccountsController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Bump @metamask/keyring-controller from ^23.0.0 to ^24.0.0 (#6962)
  • BREAKING: Bump @metamask/network-controller from ^24.0.0 to ^25.0.0 (#6962)
  • Bump @metamask/eth-snap-keyring from ^17.0.0 to ^18.0.0 (#6951)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

@metamask/address-book-controller 7.0.0

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6383)
    • Previously, AddressBookController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Metadata property anonymous renamed to includeInDebugSnapshot (#6383)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

@metamask/announcement-controller 8.0.0

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6384)
    • Previously, AnnouncementController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Metadata property anonymous renamed to includeInDebugSnapshot (#6384)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

@metamask/app-metadata-controller 2.0.0

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6385)
    • Previously, AppMetadataController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Metadata property anonymous renamed to includeInDebugSnapshot (#6385)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

@metamask/approval-controller 8.0.0

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6386)
    • Previously, ApprovalController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

@metamask/assets-controllers 84.0.0

Added

  • Add export for CurrencyRateMessenger (#6444)

Changed

  • BREAKING: Migrate controllers to new Messenger from @metamask/messenger (#6444, #6386, #6745)
    • Previously, the controllers accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Bump @metamask/account-tree-controller from ^1.0.0 to ^2.0.0 (#6962)
  • BREAKING: Bump @metamask/accounts-controller from ^33.0.0 to ^34.0.0 (#6962)
  • BREAKING: Bump @metamask/approval-controller from ^7.0.0 to ^8.0.0 (#6962)
  • BREAKING: Bump @metamask/core-backend from ^3.0.0 to ^4.0.0 (#6962)
  • BREAKING: Bump @metamask/keyring-controller from ^23.0.0 to ^24.0.0 (#6962)
  • BREAKING: Bump @metamask/network-controller from ^24.0.0 to ^25.0.0 (#6962)
  • BREAKING: Bump @metamask/permission-controller from ^11.0.0 to ^12.0.0 (#6962)
  • BREAKING: Bump @metamask/phishing-controller from ^14.0.0 to ^15.0.0 (#6962)
  • BREAKING: Bump @metamask/preferences-controller from ^20.0.0 to ^21.0.0 (#6962)
  • BREAKING: Bump @metamask/transaction-controller from ^60.0.0 to ^61.0.0 (#6962)
  • Bump @metamask/polling-controller from ^14.0.1 to ^15.0.0 (#6940, #6962)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)

@metamask/base-controller 9.0.0

Changed

  • BREAKING: Update BaseController type and constructor to require new Messenger from @metamask/messenger rather than RestrictedMessenger (#6318, #6926)
  • BREAKING: Rename anonymous metadata property to includeInDebugSnapshot (#6593, #6926)
  • BREAKING: Make includeInStateLogs and usedInUi metadata properties required (#6593, #6926)
    • This applies both to the BaseController type and the StatePropertyMetadataConstraint type
  • BREAKING: Rename ListenerV2 type export to StateChangeListener (#6339, #6926)
  • BREAKING: Rename messagingSystem protected instance variable to messenger (#6337, #6926)

Removed

  • BREAKING: Remove Messenger and RestrictedMessenger (#6926)
  • BREAKING: Remove isBaseController (#6341, #6926)
  • BREAKING: Remove deprecated exports getPersistentState and getAnonymizedState (#6611, #6926)
  • BREAKING: Remove next export (#6926)

@metamask/bridge-controller 56.0.0

Added

  • Add BridgeControllerGetStateAction and BridgeControllerStateChangeEvent types (#6444)

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6444)
    • Previously, BridgeController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Metadata property anonymous renamed to includeInDebugSnapshot (#6444)
  • BREAKING: Bump @metamask/accounts-controller from ^33.0.0 to ^34.0.0 (#6962)
  • BREAKING: Bump @metamask/network-controller from ^24.0.0 to ^25.0.0 (#6962)
  • BREAKING: Bump @metamask/assets-controller from ^83.0.0 to ^84.0.0 (#6962)
  • BREAKING: Bump @metamask/remote-feature-flag-controller from ^1.6.0 to ^2.0.0 (#6962)
  • BREAKING: Bump @metamask/transaction-controller from ^60.0.0 to ^61.0.0 (#6962)
  • Bump @metamask/base-controller from ^8.4.2 to ^9.0.0 (#6962)
  • Bump @metamask/gas-fee-controller from ^24.1.0 to ^25.0.0 (#6940, #6962)
  • Bump @metamask/multichain-network-controller from ^1.0.1 to ^2.0.0 (#6940, #6962)
  • Bump @metamask/polling-controller from ^14.0.1 to ^15.0.0 (#6940, #6962)

@metamask/bridge-status-controller 56.0.0

Changed

  • BREAKING: Use new Messenger from @metamask/messenger (#6444)
    • Previously, BridgeStatusController accepted a RestrictedMessenger instance from @metamask/base-controller.
  • BREAKING: Bump @metamask/accounts-controller from ^33.0.0 to ^34.0.0 (#6962)
  • BREAKING: Bump @metamask/bridge-controller from ...
Read more

641.0.0

24 Oct 15:59
1577c9b

Choose a tag to compare

@metamask/accounts-controller 33.2.0

Added

  • Add a getAccounts method (and its associated action) that is the plural version of getAccount (#6927)
    • This method is added to primarily be consumed in the MultichainAccountService.

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/address-book-controller 6.2.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/announcement-controller 7.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/app-metadata-controller 1.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/approval-controller 7.2.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/chain-agnostic-permission 1.2.1

Changed

  • Bump @metamask/network-controller from ^24.2.1 to ^24.3.1 (#6845, #6883, #6940)
  • Bump @metamask/permission-controller from ^11.1.0 to ^11.1.1 (#6940)

@metamask/composable-controller 11.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/delegation-controller 0.8.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/earn-controller 8.0.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)
  • Bump @metamask/transaction-controller from ^60.7.0 to ^60.8.0 (#6883)

@metamask/eip-5792-middleware 1.2.4

Changed

  • Bump @metamask/transaction-controller from ^60.7.0 to ^60.10.0 (#6883, #6888, #6940)

@metamask/ens-controller 17.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)

@metamask/error-reporting-service 2.2.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/gas-fee-controller 24.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)
  • Bump @metamask/polling-controller from ^14.0.1 to ^14.0.2 (#6940)

@metamask/gator-permissions-controller 0.2.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/keyring-controller 23.2.0

Added

  • Add actions for createNewVaultAndKeychain and createNewVaultAndRestore (#6928)
    • These actions are meant to to be consumed by the MultichainAccountService in its createMultichainAccountWallet method.

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/logging-controller 6.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/message-manager 13.0.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/multichain-account-service 1.6.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/multichain-api-middleware 1.2.2

Changed

  • Bump @metamask/chain-agnostic-permission from ^1.2.0 to ^1.2.1 (#6940)
  • Bump @metamask/network-controller from ^24.2.1 to ^24.3.1 (#6845, #6883, #6940)
  • Bump @metamask/permission-controller from ^11.1.0 to ^11.1.1 (#6940)

@metamask/multichain-network-controller 1.0.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)

@metamask/multichain-transactions-controller 5.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/polling-controller from ^14.0.1 to ^14.0.2 (#6940)

@metamask/name-controller 8.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/network-controller 24.3.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/network-enablement-controller 2.1.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)
  • Bump @metamask/transaction-controller from ^60.7.0 to ^60.8.0 (#6883)

@metamask/notification-services-controller 18.3.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/permission-controller 11.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/permission-log-controller 4.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/phishing-controller 14.1.3

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/transaction-controller from ^60.7.0 to ^60.8.0 (#6883)

@metamask/polling-controller 14.0.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)

@metamask/preferences-controller 20.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/profile-sync-controller 25.1.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/rate-limit-controller 6.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/remote-feature-flag-controller 1.9.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/sample-controllers 2.0.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)

@metamask/seedless-onboarding-controller 4.1.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/selected-network-controller 24.0.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)

@metamask/signature-controller 34.0.2

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/network-controller from ^24.2.2 to ^24.3.0 (#6883)

@metamask/token-search-discovery-controller 3.5.1

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/transaction-controller 60.10.0

Added

  • Add actions TransactionController:emulateNewTransaction and TransactionController:emulateTransactionUpdate (#6935)

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

Fixed

  • Prevent race condition causing excessive incoming transaction polling (#6913)

@metamask/user-operation-controller 39.2.1

Chan...

Read more

640.0.0

24 Oct 14:09
7e387eb

Choose a tag to compare

@metamask/subscription-controller 2.1.0

Changed

  • Make getCryptoApproveTransactionParams synchronous (#6930)
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

639.0.0

24 Oct 08:46
7305664

Choose a tag to compare

@metamask/assets-controllers 83.1.0

Added

  • Add Monad Mainnet into SUPPORTED_NETWORKS_ACCOUNTS_API_V4

Fixed

  • Fix incorrect balance scan contract address for Monad Mainnet
    • Remove Monad Mainnet in SINGLE_CALL_BALANCES_ADDRESS_BY_CHAINID (#6929)

638.0.0

23 Oct 10:32
17e48a4

Choose a tag to compare

@metamask/assets-controllers 83.0.0

Changed

  • BREAKING: Bump peer dependency @metamask/core-backend from ^2.0.0 to ^3.0.0 (#6923)
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

Fixed

  • Downgrade multiformats to ^9.9.0 to avoid ESM-only dependency (#6920)

@metamask/bridge-controller 55.0.0

Changed

  • BREAKING: Bump peer dependency @metamask/assets-controllers from ^82.0.0 to ^83.0.0 (#6923)
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/bridge-status-controller 55.0.0

Changed

  • BREAKING: Bump peer dependency @metamask/bridge-controller from ^54.0.0 to ^55.0.0 (#6923)
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

@metamask/core-backend 3.0.0

Added

  • Add forceReconnection() method to BackendWebSocketService for controlled subscription state cleanup (#6861)
    • Performs a controlled disconnect-then-reconnect sequence with exponential backoff
    • Useful for recovering from subscription/unsubscription issues and cleaning up orphaned subscriptions
    • Add BackendWebSocketService:forceReconnection messenger action
  • Add stable connection timer to prevent rapid reconnection loops (#6861)
    • Connection must stay stable for 10 seconds before resetting reconnect attempts
    • Prevents issues when server accepts connection then immediately closes it

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Update AccountActivityService to use new forceReconnection() method instead of manually calling disconnect/connect (#6861)
  • BREAKING: Update allowed actions for AccountActivityService messenger: remove BackendWebSocketService:disconnect, add BackendWebSocketService:forceReconnection (#6861)
  • Improve reconnection scheduling in BackendWebSocketService to be idempotent (#6861)
    • Prevents duplicate reconnection timers and inflated attempt counters
    • Scheduler checks if reconnect is already scheduled before creating new timer
  • Improve error handling in BackendWebSocketService.connect() (#6861)
    • Always schedule reconnect on connection failure (exponential backoff prevents aggressive retries)
    • Remove redundant schedule calls from error paths
  • Update BackendWebSocketService.disconnect() to reset reconnect attempts counter (#6861)
  • Update BackendWebSocketService.disconnect() return type from Promise<void> to void (#6861)
  • Improve logging throughout BackendWebSocketService for better debugging (#6861)

Fixed

  • Fix potential race condition in BackendWebSocketService.connect() that could bypass exponential backoff when reconnect is already scheduled (#6861)
  • Fix memory leak from orphaned timers when multiple reconnects are scheduled (#6861)
  • Fix issue where reconnect attempts counter could grow unnecessarily with duplicate scheduled reconnects (#6861)

637.0.0

22 Oct 18:00
7dff627

Choose a tag to compare

@metamask/account-tree-controller 1.6.0

Changed

  • Add optional account hidden/pinned state callbacks (#6910)
    • Those callbacks can be used migrate existing account state into the tree metadata.
  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)

636.0.0

22 Oct 15:43
125b4a9

Choose a tag to compare

@metamask/shield-controller 0.4.0

Added

  • Added optional constructor params, normalizeSignatureRequest function which normalize the requests for TypedSignature similar to the security-alerts API. (#6906)
  • Added util function, parseSignatureRequestMethod to correctly parse the Json-Rpc method value for the signature request. (#6906)

Changed

  • Bump @metamask/base-controller from ^8.4.1 to ^8.4.2 (#6917)
  • Bump @metamask/transaction-controller from ^60.7.0 to ^60.8.0 (#6883)
  • Updated internal MessagingSystem subscriber for TransactionController and SignatureController stateChange events. (#6906)
    • Removed personal_sign check from the signature-coverage check. Now every signature requests will be sent to ruleset-engine.
    • Updated TransactionMeta.SimulationData check conditional to shallow comparison instead of referential comparison, to avoid triggering unnecessary coverage-check requests.
  • Removed signature data validation from the internal makeInitSignatureCoverageCheckBody function. (#6906)
    • As signature data is not always string (e.g. eth_signTypedData uses Array of Object) and the data is already validated in the SignatureController before adding to the state.

635.0.0

22 Oct 12:23
522d3fd

Choose a tag to compare

@metamask/base-controller 8.4.2

Fixed

  • Fix TypeScript module resolution for /next subpath export with legacy resolution mode (#6915)
    • Added next.d.ts file to enable imports like import { BaseController } from '@metamask/base-controller/next' to work with both legacy TypeScript module resolution and Node16/NodeNext resolution modes
    • Previously, this import pattern only worked with Node16/NodeNext resolution which uses the exports field in package.json

634.0.0

22 Oct 09:59
68fa9b6

Choose a tag to compare

@metamask/preferences-controller 20.1.0

Added

  • Add support for MONAD (chain ID 0x8f) (#6827)
    • Add MONAD into constant ETHERSCAN_SUPPORTED_CHAIN_IDS
    • Update default controller state so MONAD (Chain ID 0x8f) is automatically enabled in showIncomingTransactions

633.0.0

22 Oct 09:32
48e164b

Choose a tag to compare

@metamask/eip-7702-internal-rpc-middleware 0.1.0

Added

  • Initial release of @metamask/eip-7702-internal-rpc-middleware (#6911)
  • wallet_upgradeAccount JSON-RPC method for upgrading EOA accounts to smart accounts using EIP-7702 (#6789)
  • wallet_getAccountUpgradeStatus JSON-RPC method for checking account upgrade status (#6789)
  • Hook-based architecture with upgradeAccount and getAccountUpgradeStatus hooks (#6789)
  • Comprehensive TypeScript type definitions (#6789)
  • Documentation and examples (#6789)