Skip to content

194.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 04 Sep 12:26
7ff50c9

@metamask/accounts-controller 18.1.1

Changed

  • Bump @metamask/base-controller from ^6.0.3 to ^7.0.0 (#4643)

@metamask/address-book-controller 6.0.0

Added

  • Add AddressBookController messenger types: AddressBookControllerMessenger, AddressBookControllerGetStateAction, AddressBookControllerActions, AddressBookControllerStateChangeEvent, AddressBookControllerEvents (#4392)
  • Add getDefaultAddressBookControllerState getter for the default state of AddressBookController (#4392)

Changed

  • BREAKING: AddressBookController inherits from BaseController, not BaseControllerV1 (#4392)
  • BREAKING: Add messenger as required constructor option to AddressBookController (#4392)
  • BREAKING: Rename AddressBookState type to AddressBookControllerState (#4392)
  • Bump @metamask/base-controller from ^6.0.0 to ^7.0.0 (#4517, #4544, #4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.0 to ^11.2.0 (#4517, #4544, #4639, #4651)
  • Bump @metamask/utils from ^8.3.0 to ^9.1.0 (#4516, #4529)
  • Bump typescript from ~4.9.5 to ~5.2.2 and set module{,Resolution} options to Node16 (#3645, #4576, #4584)

Removed

  • BREAKING: Remove config from required constructor options of AddressBookController (#4392)
  • BREAKING: Remove AddressBookConfig type (#4392)

@metamask/assets-controllers 38.0.0

Added

  • Export MarketDataDetails type (#4622)

Changed

  • BREAKING: Narrow TokensController constructor option provider by removing undefined from its type signature (#4567)
  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump @metamask/polling-controller from ^9.0.1 to ^10.0.0 (#4651)
  • Bump @metamask/keyring-api to version 8.1.0 (#4594)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

Fixed

  • Fix RatesController setCryptocurrencyList method, which was not using the correct field when updating internal state (#4572)
  • Fetch correct price for the $OMNI native currency (#4570)
  • Add public name property to AssetsContractController (#4564)

@metamask/controller-utils 11.2.0

Added

  • Add BlockExplorerUrl object and type for looking up the block explorer URL of any Infura network (#4268)
  • Add NetworkNickname object and type for looking up the common nickname for any Infura network (#4268)
  • Add Partialize type for making select keys in an object type optional (#4268)
  • toHex now supports converting a bigint into a hex string (#4268)

@metamask/ens-controller 14.0.0

Changed

  • BREAKING: EnsControllerMessenger must allow NetworkController:getState action (#4557)
  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

Removed

  • BREAKING: Remove optional constructor option provider (#4557)
    • Provider is now sourced from selectedNetworkClient.

Fixed

  • Initial network is set using selectedNetworkClientId, which is derived using the NetworkController:getState action (#4557)

@metamask/gas-fee-controller 20.0.0

Changed

  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump @metamask/polling-controller from ^9.0.1 to ^10.0.0 (#4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

@metamask/message-manager 10.1.0

Added

  • Add protected methods addRequestToMessageParams, createUnapprovedMessage to AbstractMessageManager

Changed

  • Add requestId property to the messageParams object to reference metric event fragments created from the createRPCMethodTrackingMiddleware in the client (#4636)
    • Add optional property requestId to AbstractMessageParams type
    • Add optional property id to OriginalRequest type
  • Bump @metamask/controller-utils from ^11.1.0 to ^11.2.0 (#4651)

@metamask/network-controller 21.0.0

Added

  • BREAKING: Add networkConfigurationsByChainId to NetworkState (type: Record<Hex, NetworkConfiguration>) (#4268)
    • This property replaces networkConfigurations, and, as its name implies, organizes network configurations by chain ID rather than network client ID.
    • If no initial state or this property is not included in initial state, the default value of this property will now include configurations for known Infura networks (Mainnet, Goerli, Sepolia, Linea Goerli, Linea Sepolia, and Linea Mainnet) by default.
  • Add getNetworkConfigurationByChainId method, NetworkController:getNetworkConfigurationByChainId messenger action, and NetworkControllerGetNetworkConfigurationByNetworkClientId type (#4268)
  • Add addNetwork, which replaces one half of upsertNetworkConfiguration and can be used to add new network clients for a chain (#4268)
    • It's worth noting that this method now publishes a NetworkController:networkAdded event instead of calling a trackMetaMetricsEvent callback. It is expected that you will subscribe to this event and create a MetaMetrics event yourself.
  • Add updateNetwork, which replaces one half of upsertNetworkConfiguration and can be used to recreate the network clients for an existing chain based on an updated configuration (#4268)
    • Note that it is not possible to remove the RPC endpoint from a network configuration that is currently represented by the globally selected network client. To prevent an error, you'll need to detect when such a removal is occurring and pass the replacementSelectedRpcEndpointIndex to updateNetwork. It will then switch to the designated RPC endpoint's network client on your behalf.
  • Add removeNetwork, which replaces removeNetworkConfiguration and can be used to remove existing network clients for a chain (#4268)
  • Add getDefaultNetworkControllerState function, which replaces defaultState and matches patterns in other controllers (#4268)
  • Add RpcEndpointType, AddNetworkFields, and UpdateNetworkFields types (#4268)
  • Add getNetworkConfigurations, getAvailableNetworkClientIds and selectAvailableNetworkClientIds selectors (#4268)
    • These new selectors can be applied to messenger event subscriptions

Changed

  • BREAKING: Replace NetworkConfiguration type with a new definition (#4268)
    • A network configuration no longer represents a single RPC endpoint but rather a collection of RPC endpoints that can all be used to interface with a single chain.
    • The only property that has brought over to this type unchanged is chainId.
    • ticker has been renamed to nativeCurrency.
    • nickname has been renamed to name.
    • rpcEndpoints has been added. This is an an array of objects, where each object has properties name (optional), networkClientId (optional), type, and url.
    • defaultRpcEndpointIndex has been added. This must point to an entry in rpcEndpoints.
    • The block explorer URL is no longer located in rpcPrefs and is no longer restricted to one: blockExplorerUrls has been added along with a corresponding property defaultBlockExplorerUrlIndex, which must point to an entry in blockExplorerUrls.
    • id has been removed. Previously, this represented the ID of the network client associated with the network configuration. Since network clients are now created from RPC endpoints, the equivalent to this is the networkClientId property on an RpcEndpoint.
  • BREAKING: The network controller messenger must now allow the action NetworkController:getNetworkConfigurationByChainId (#4268)
  • BREAKING: The network controller messenger must now allow the event NetworkController:networkAdded (#4268)
  • BREAKING: The NetworkController constructor will now throw if the initial state provided is invalid (#4268)
    • networkConfigurationsByChainId cannot be empty.
    • The chainId of a network configuration in networkConfigurationsByChainId must match the chain ID it is filed under.
    • The defaultRpcEndpointIndex of a network configuration in networkConfigurationsByChainId must point to an entry in its rpcEndpoints.
    • The defaultBlockExplorerUrlIndex of a network configuration in networkConfigurationsByChainId must point to an entry in its blockExplorerUrls.
    • selectedNetworkClientId must match the networkClientId of an RPC endpoint in networkConfigurationsByChainId.
  • BREAKING: Update getNetworkConfigurationByNetworkClientId so that when given an Infura network name (that is, a value from InfuraNetworkType), it will return a masked version of the RPC endpoint URL for the associated Infura network (#4268)
    • If you want the unmasked version, you'll need the url property from the network client configuration, which you can get by calling getNetworkClientById and then accessing the configuration property off of the network client.
  • BREAKING: Update loadBackup to take and update networkConfigurationsByChainId instead of networkConfigurations (#4268)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump @metamask/eth-block-tracker from ^9.0.3 to ^10.0.0 (#4424)
  • Bump @metamask/eth-json-rpc-middleware from ^12.1.1 to ^13.0.0 (#4424)

Removed

  • BREAKING: Remove networkConfigurations from NetworkState, which has been replaced with networkConfigurationsByChainId (#4268)
  • BREAKING: Remove upsertNetworkConfiguration and removeNetworkConfiguration, which have been replaced with addNetwork, updateNetwork, and removeNetwork (#4268)
  • BREAKING: Remove defaultState variable, which has been replaced with a getDefaultNetworkControllerState function (#4268)
  • BREAKING: Remove trackMetaMetricsEvent option from the NetworkController constructor (#4268)
    • Previously, this was used in upsertNetworkConfiguration to create a MetaMetrics event when a new network was added. This can now be achieved by subscribing to the NetworkController:networkAdded event and creating the event inside of the event handler.

@metamask/permission-controller 11.0.1

Changed

  • Bump @metamask/base-controller from ^6.0.3 to ^7.0.0 (#4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

@metamask/polling-controller 10.0.0

Changed

  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

@metamask/preferences-controller 13.0.2

Changed

  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

@metamask/queued-request-controller 5.0.0

Changed

  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • BREAKING: Bump devDependency and peerDependency @metamask/selected-network-controller from ^17.0.0 to ^18.0.0 (#4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

@metamask/selected-network-controller 18.0.0

Changed

  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)

@metamask/transaction-controller 36.0.0

Changed

  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4651)
  • BREAKING: Bump devDependency and peerDependency @metamask/gas-fee-controller from ^19.0.0 to ^20.0.0 ( #4651)
  • Bump @metamask/base-controller from ^6.0.3 to ^7.0.0 (#4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)

@metamask/user-operation-controller 15.0.0

Changed

  • BREAKING: Bump devDependency and peerDependency @metamask/network-controller from ^20.0.0 to ^21.0.0 (#4618, #4651)
  • BREAKING: Bump devDependency and peerDependency @metamask/transaction-controller from ^35.0.0 to ^36.0.0 ( #4651)
  • BREAKING: Bump devDependency and peerDependency @metamask/gas-fee-controller from ^19.0.0 to ^20.0.0 ( #4651)
  • Bump @metamask/base-controller from ^6.0.2 to ^7.0.0 (#4625, #4643)
  • Bump @metamask/controller-utils from ^11.0.2 to ^11.2.0 (#4639, #4651)
  • Bump @metamask/polling-controller from ^9.0.1 to ^10.0.0 (#4651)
  • Bump typescript from ~5.0.4 to ~5.2.2 (#4576, #4584)