Skip to content

Releases: MetaMask/core

175.0.0

16 Jul 10:45
8768a17
Compare
Choose a tag to compare

@metamask/assets-controllers 36.0.0

Added

  • Add optional topBid property to the NftMetadata type. This property must be of type TopBid. (#4522)
  • Add optional floorAsk property to the TokenCollection type. This property must be of type FloorAskCollection. (#4522)
  • Add linea mainnet support to nft detection supported networks (#4515)
  • The Collection type is expanded to include the following 'string'-type optional properties: contractDeployedAt, creator, ownerCount, and an optional property topBid of the type TopBid & { sourceDomain?: string; }. (#4443)

Changed

  • Fetch NFT collections data from the NFT-API Get Collections endpoint when calling the detectNfts method of NftDetectionController, and the updateNftMetadata and watchNft methods of NftController. (#4443)
  • Bump @metamask/utils to ^9.0.0 (#4516)
  • Bump @metamask/rpc-errors to ^6.3.1 (#4516)

Fixed

  • BREAKING: The attributes property of the NftMetadata type must be of type Attributes[] (#4522)
    • The attributes property was added and typed as Attributes on v28.0.0.

174.0.0

15 Jul 12:06
a520e59
Compare
Choose a tag to compare

@metamask/profile-sync-controller 0.1.3

Changed

  • Switch ethers to a devDependency (#4518)

173.0.0

12 Jul 17:04
43db7ac
Compare
Choose a tag to compare

@metamask/eth-json-rpc-provider 4.1.1

Changed

  • Bump @metamask/json-rpc-engine to ^9.0.1 (#4517)
  • Bump @metamask/rpc-errors to ^6.3.1 (#4516)
  • Bump @metamask/utils to ^9.0.0 (#4516)

@metamask/json-rpc-middleware-stream 8.0.1

Changed

  • Bump @metamask/json-rpc-engine to ^9.0.1 (#4517)
  • Bump @metamask/rpc-errors to ^6.3.1 (#4516)
  • Bump @metamask/utils to ^9.0.0 (#4516)

Fixed

  • Fix incorrect notification detection logic (#4427)
    • Previously, response objects with a falsy id property were detected as notifications. Now, we check for the absence of the id property.

172.0.0

11 Jul 19:47
a68021b
Compare
Choose a tag to compare

@metamask/approval-controller 7.0.1

Changed

  • Bump @metamask/rpc-errors from 6.2.1 to ^6.3.1 (#4516)
  • Bump @metamask/utils from ^8.3.0 to ^9.0.0 (#4516)
  • Bump @metamask/base-controller to ^6.0.1 (#4517)

@metamask/base-controller 6.0.1

Changed

  • Bump @metamask/rpc-errors from 6.2.1 to ^6.3.1 (#4516)
  • Bump @metamask/utils from ^8.3.0 to ^9.0.0 (#4516)

@metamask/controller-utils 11.0.1

Changed

  • Bump @metamask/rpc-errors from 6.2.1 to ^6.3.1 (#4516)
  • Bump @metamask/utils from ^8.3.0 to ^9.0.0 (#4516)

@metamask/json-rpc-engine 9.0.1

Changed

  • Bump @metamask/rpc-errors from 6.2.1 to ^6.3.1 (#4516)
  • Bump @metamask/utils from ^8.3.0 to ^9.0.0 (#4516)

@metamask/permission-controller 10.0.1

Changed

  • Bump @metamask/rpc-errors from 6.2.1 to ^6.3.1 (#4516)
  • Bump @metamask/utils from ^8.3.0 to ^9.0.0 (#4516)
  • Bump @metamask/base-controller to ^9.0.1 (#4517)
  • Bump @metamask/controller-utils to ^11.0.1 (#4517)
  • Bump @metamask/json-rpc-engine to ^9.0.1 (#4517)

171.0.0

10 Jul 14:52
f02c520
Compare
Choose a tag to compare

@metamask/assets-controllers 35.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)
  • Bump @metamask/polling-controller to ^9.0.0 (#4508)
  • Bump @metamask/accounts-controller to ^17.2.0 (#4498)

Fixed

  • Add support for tokenURI encoded images to NftController methods addNft, watchNft and updateNftMetadata (#4482)

@metamask/ens-controller 13.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)

@metamask/eth-json-rpc-provider 4.1.0

Added

  • Make SafeEventEmitterProvider EIP-1193 compatible by adding a request method (#4422)
    • Now SafeEventEmitterProvider is compatible with @metamask/eth-query, @metamask/ethjs-query, BrowserProvider from Ethers v6 and Web3Provider from Ethers v5

Deprecated

  • Mark sendAsync method as deprecated in favor of request method (#4422)

@metamask/gas-fee-controller 19.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)
  • Bump @metamask/polling-controller to ^9.0.0 (#4508)

@metamask/network-controller 20.0.0

Added

  • Add a new log argument to the constructor (#4440)
    • The new log argument must be a Logger object from the loglevel package and will be used to log a message when we fail to connect to a network or the network responds with an unknown error

Changed

  • BREAKING: Update networksMetadata state property so that the keys in the object will only ever be network client IDs and not RPC URLs (#4254)
    • Some keys could have been RPC URLs if the initial network controller state had a providerConfig with an empty id, but since providerConfig is being removed, that won't happen anymore.
  • Bump @metamask/eth-block-tracker to ^9.0.3 (#4418)
  • Bump @metamask/eth-json-rpc-provider to ^4.1.0 (#4508)

Removed

  • BREAKING: Remove providerConfig property from state along with ProviderConfig type and NetworkController:getProviderConfig messenger action (#4254)
    • The best way to obtain the equivalent configuration object, e.g. to access the chain ID of the currently selected network, is to get selectedNetworkClientId from state, pass this to the NetworkController:getNetworkClientId messenger action, and then use the configuration property on the network client.

@metamask/polling-controller 9.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)

@metamask/queued-request-controller 3.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)
  • BREAKING: Bump peerDependency @metamask/selected-network-controller to ^16.0.0 (#4508)

@metamask/selected-network-controller 16.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)

@metamask/transaction-controller 35.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)
  • BREAKING: Bump peerDependency @metamask/gas-fee-controller to ^19.0.0 (#4508)

@metamask/user-operation-controller 14.0.0

Changed

  • BREAKING: Bump peerDependency @metamask/network-controller to ^20.0.0 (#4508)
  • BREAKING: Bump peerDependency @metamask/gas-fee-controller to ^19.0.0 (#4508)
  • BREAKING: Bump peerDependency @metamask/transaction-controller to ^35.0.0 (#4508)
  • Bump @metamask/polling-controller to ^9.0.0 (#4508)

170.0.0

03 Jul 21:49
a3acb59
Compare
Choose a tag to compare

@metamask/accounts-controller 17.2.0

Added

  • Add internal actions and events to AccountsController (#4496, #4497)
    • Add events AccountsController:accountAdded, AccountsController:accountRemoved, and export corresponding event types AccountsControllerAccountAddedEvent, AccountsControllerAccountRemovedEvent.
    • Export action types AccountsControllerListMultichainAccountsAction, AccountsControllerGetSelectedMultichainAccountAction, AccountsControllerGetNextAvailableAccountNameAction.

Changed

  • Improve support of non-EVM accounts (#4494)
    • We now use listMultichainAccounts instead of listAccounts for non-EVM specific multichain methods
  • Emit selectedAccountChange and update lastSelected for initial account (#4494)

@metamask/gas-fee-controller 18.0.0

Added

  • BREAKING: Add constructor options to GasFeeController: EIP1559APIEndpoint (required), and legacyAPIEndpoint (optional) which defaults to LEGACY_GAS_PRICES_API_URL. (#4446)
    • These URLs are no longer hardcoded within the controller.

Removed

  • BREAKING: Remove infuraAPIKey as a constructor option for GasFeeController. This class field was previously used to construct and send the Authorization header for Infura gas API requests. (#4446)

@metamask/transaction-controller 34.0.0

Changed

  • BREAKING: Bump dependency and peer dependency @metamask/gas-fee-controller to ^18.0.0 (#4498)
  • Bump dependency @metamask/accounts-controller to ^17.2.0 (#4498)

@metamask/user-operation-controller 13.0.0

Changed

  • BREAKING: Bump dependency and peer dependency @metamask/gas-fee-controller to ^18.0.0 (#4498)
  • BREAKING: Bump dependency and peer dependency @metamask/transaction-controller to ^34.0.0 (#4498)

169.0.0

01 Jul 14:30
a3a060c
Compare
Choose a tag to compare

@metamask/profile-sync-controller 0.1.2

Added

  • added platform field when logging in to receive correct OIDC access token (#4480)
  • added metametrics validation in constructor (#4480)

Changed

  • updated the getMetaMetricsId interface to support async calls to metametrics ID (#4477)

168.0.0

27 Jun 17:31
ea5e923
Compare
Choose a tag to compare

@metamask/notification-services-controller 0.1.1

Added

  • export defaultState for NotificationServicesController and NotificationServicesPushController. (#4441)

  • export NOTIFICATION_CHAINS_ID which is a const-asserted version of NOTIFICATION_CHAINS (#4441)

  • export NOTIFICATION_NETWORK_CURRENCY_NAME and NOTIFICATION_NETWORK_CURRENCY_SYMBOL. Allows consistent currency names and symbols for supported notification services (#4441)

  • add isPushIntegrated as an optional env property in the NotificationServicesController constructor (defaults to true) (#4441)

Fixed

  • NotificationServicesPushController - removed global self calls for mobile compatibility (#4441)

@metamask/profile-sync-controller 0.1.1

Added

  • export defaultState for AuthenticationController and UserStorageController. (#4441)

Changed

  • AuthType, Env, Platform are changed from const enums to enums (#4441)

167.0.0

27 Jun 08:24
41df59c
Compare
Choose a tag to compare

@metamask/accounts-controller 17.1.1

Fixed

  • Handle edge case of undefined selectedAccount during onboarding for getSelectedMultichainAccount (#4466)

166.0.0

26 Jun 17:53
4fe6141
Compare
Choose a tag to compare

@metamask/accounts-controller 17.1.0

Added

  • Add AccountsController:listMultichainAccounts action (#4426)

Fixed

  • Refactored getSelectedAccount to handle case when there are no accounts to return. The logic was previously contained in getAccountExpect has been transferred to getSelectedAccount. (#4322)
  • Updated handleAccountRemoved to automatically select the most recent account if the removed account was the currently selected account. (#4322)
  • Move @metamask/keyring-controller to dependency (#4425)

@metamask/assets-controllers 34.0.0

Added

  • Add AccountTrackerControllerGetStateAction, AccountTrackerControllerActions, AccountTrackerControllerStateChangeEvent, and AccountTrackerControllerEvents types (#4407)
  • Add setIntervalLength and getIntervalLength methods to AccountTrackerController (#4407)
    • setIntervalLength replaces updating the polling interval via configure.

Changed

  • BREAKING TokenBalancesController messenger must allow the action AccountsController:getSelectedAccount and remove PreferencesController:getState. (#4219)
  • BREAKING TokenDetectionController messenger must allow the action AccountsController:getAccount. (#4219)
  • BREAKING TokenDetectionController messenger must allow the event AccountsController:selectedEvmAccountChange and remove AccountsController:selectedAccountChange. (#4219)
  • BREAKING TokenRatesController messenger must allow the action AccountsController:getAccount, AccountsController:getSelectedAccount and remove PreferencesController:getState. (#4219)
  • BREAKING TokenRatesController messenger must allow the event AccountsController:selectedEvmAccountChange and remove PreferencesController:stateChange. (#4219)
  • BREAKING TokensController messenger must allow the action AccountsController:getAccount, AccountsController:getSelectedAccount.
  • BREAKING TokensController messenger must allow the event AccountsController:selectedEvmAccountChange. (#4219)
  • Upgrade AccountTrackerController to BaseControllerV2 (#4407)
  • BREAKING: Convert AccountInformation from interface to type (#4407)
  • BREAKING: Rename AccountTrackerState to AccountTrackerControllerState and convert from interface to type (#4407)
  • BREAKING: AccountTrackerController now inherits from StaticIntervalPollingController instead of StaticIntervalPollingControllerV1 (#4407)
    • The constructor now takes a single options object rather than three arguments. Some options have been removed; see later entries.
  • BREAKING: The AccountTrackerController messenger must now allow the actions PreferencesController:getState, NetworkController:getState, and NetworkController:getNetworkClientById (#4407)
  • BREAKING: The refresh method is no longer pre-bound to the controller (#4407)
    • You may now need to pre-bind it e.g. accountTrackerController.refresh.bind(accountTrackerController).
  • Bump @metamask/accounts-controller to ^17.1.0 (#4460)

Removed

  • BREAKING TokensController removes selectedAddress constructor argument. (#4219)
  • BREAKING TokenDetectionController removes selectedAddress constructor argument. (#4219)
  • BREAKING: Remove AccountTrackerConfig type (#4407)
    • Some of these properties have been merged into the options that the AccountTrackerController constructor takes.
  • BREAKING: Remove config property and configure method from AccountTrackerController (#4407)
    • The controller now takes a single options object which can be used for configuration, and configuration is now kept internally.
  • BREAKING: Remove notify, subscribe, and unsubscribe methods from AccountTrackerController (#4407)
    • Use the controller messenger for subscribing to and publishing events instead.
  • BREAKING: Remove provider, getMultiAccountBalancesEnabled, getCurrentChainId, and getNetworkClientById from configuration options for AccountTrackerController (#4407)
    • The provider is now obtained directly from the network controller on demand.
    • The messenger is now used in place of the callbacks.

@metamask/transaction-controller 33.0.1

Changed

  • Document TransactionStatus enum (#4380)
  • Bump @metamask/accounts-controller to ^17.1.0 (#4460)

@metamask/user-operation-controller 12.0.1

Changed

  • Bump @metamask/transaction-controller to ^33.0.1 (#4460)