Releases: MetaMask/core
Releases · MetaMask/core
199.0.0
@metamask/notification-services-controller 0.5.0
Changed
- move contentful as a dev dependency (#4673)
- update polygon symbol from MATIC to POL (#4672)
- Bump
@metamask/profile-sync-controller
from^0.4.0
to^0.5.0
(#4678)
@metamask/profile-sync-controller 0.5.0
Added
- add isSnapConnected method to the Authentication SDK (#4668)
- add
accountAdded
andaccountRenamed
events when triggering account syncing (#4665) - prevent accounts controller events being used when sync is in progress (#4675)
- add
isAccountSyncingInProgress
toUserStorageController
- add
isAccountSyncingInProgress
checks to abort processingaccountAdded
andaccountRenamed
events.
- add
Removed
- account sync throttling (#4675)
- remove
maxSyncInterval
;lastSyncedAt
;shouldSync
fromUserStorageController
- remove
198.0.0
197.0.0
@metamask/notification-services-controller 0.4.1
Fixed
- fix: keep push subscription when wallet is locked (#4653)
- add
NotificationServicesPushController:subscribeToPushNotifications
event and allowedEvent inNotificationServicesController
- add else check to continue to subscribe to push notifications when wallet is locked
- add
196.0.0
@metamask/notification-services-controller 0.4.0
Changed
- Bump
@metamask/profile-sync-controller
from^0.3.0
to^0.4.0
(#4661)
@metamask/profile-sync-controller 0.4.0
Added
195.0.0
@metamask/notification-services-controller 0.3.0
Added
- passed notification parameter to the
NotificationServicesPushController
onPushNotificationClicked
config (#4613) - Define and export new type
NotificationServicesControllerGetStateAction
(#4633) - Add and export types
NotificationServicesPushControllerGetStateAction
,NotificationServicesPushControllerStateChangeEvent
(#4641) - add subpath exports to
@metamask/notification-services-controller
(#4604)- add
@metamask/notification-services-controller/notification-services
export - add
@metamask/notification-services-controller/push-services
export
- add
- add
TypeExternalLinkFields
,TypePortfolioLinkFields
, andTypeMobileLinkFields
types to handle different types of links in feature announcements (#4620)
Changed
- Bump
typescript
from~5.1.6
to~5.2.2
(#4584) - Bump
@metamask/profile-sync-controller
from^0.2.1
to^0.3.0
(#4657) - Bump
contentful
from^10.3.6
to^10.15.0
(#4637) - BREAKING: Rename
NotificationServicesPushControllerPushNotificationClicked
type toNotificationServicesPushControllerPushNotificationClickedEvent
(#4641) - BREAKING: Narrow
AllowedEvents
type forNotificationServicesPushControllerMessenger
tonever
(#4641) - updated
NotificationServicesPushControllerMessenger
must allow internal eventNotificationServicesPushControllerStateChangeEvent
(#4641) - updated
FeatureAnnouncementRawNotificationData
to include fields for external, portfolio, and mobile links (#4620) - updated
TypeFeatureAnnouncementFields
to include fields for external, portfolio, and mobile links (#4620) - updated
fetchFeatureAnnouncementNotifications
to handle the new link types and include them in the notification data.
Fixed
- Replace
getState
action inNotificationServicesControllerActions
with correctly-definedNotificationServicesControllerGetStateAction
type (#4633) - BREAKING: Fix package-level export for
NotificationServicesPushController
from "NotificationsServicesPushController" to "NotificationsServicesPushController" (#4641) - BREAKING: Replace incorrectly-defined
getState
action in theActions
type forNotificationServicesPushControllerMessenger
with newNotificationServicesPushControllerGetStateAction
type (#4641) - update subpath exports internal
package.json
files to resolvejest-haste-map
errors (#4650) - removed unnecessary subpath exports (#4650)
- removed
/constants
,/services
,/processors
,/utils
sub paths as these are navigable from root.
- removed
@metamask/profile-sync-controller 0.3.0
Added
- add granular account syncing (#4629)
- add accounts user storage schema
- add method
saveInternalAccountToUserStorage
toUserStorageController
- add method
syncInternalAccountsWithUserStorage
toUserStorageController
- add
@metamask/accounts-controller
dev dependency - add
@metamask/keyring-api
dev dependency
- add infura OIDC identifier (#4654)
- define and export new types:
AuthenticationControllerGetStateAction
,AuthenticationControllerStateChangeEvent
,Events
(#4633) - SDK and controller support for
GET /api/v1/userstorage/:feature
endpoint (#4626)- add method
performGetStorageAllFeatureEntries
toUserStorageController
- add
ALLOW_ARBITRARY_KEYS
toUSER_STORAGE_SCHEMA
to allow wildcard/getAll for entries for a feature
- add method
- add subpath exports to
@metamask/profile-sync-controller
(#4604)- add
@metamask/profile-sync-controller/sdk
export - add
@metamask/profile-sync-controller/user-storage
export - add
@metamask/profile-sync-controller/auth
export
- add
Changed
- Bump
typescript
from~5.1.6
to~5.2.2
(#4584) - Fix controllers with missing or incorrect messenger action/event types (#4633)
- BREAKING:
AuthenticationControllerMessenger
must allow internal events defined in theEvents
type (#4633) AuthenticationControllerActions
is widened to include theAuthenticationController:getState
action (#4633)- Replaced
@metamask/profile-sync-controller/sdk
to use the same encryption file asUserStorageController
(#4649)
Fixed
- update subpath exports internal
package.json
files to resolvejest-haste-map
errors (#4650)
194.0.0
@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 ofAddressBookController
(#4392)
Changed
- BREAKING:
AddressBookController
inherits fromBaseController
, notBaseControllerV1
(#4392) - BREAKING: Add
messenger
as required constructor option toAddressBookController
(#4392) - BREAKING: Rename
AddressBookState
type toAddressBookControllerState
(#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 setmodule{,Resolution}
options toNode16
(#3645, #4576, #4584)
Removed
- BREAKING: Remove
config
from required constructor options ofAddressBookController
(#4392) - BREAKING: Remove
AddressBookConfig
type (#4392)
@metamask/assets-controllers 38.0.0
Added
- Export
MarketDataDetails
type (#4622)
Changed
- BREAKING: Narrow
TokensController
constructor optionprovider
by removingundefined
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 version8.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 toAssetsContractController
(#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 abigint
into a hex string (#4268)
@metamask/ens-controller 14.0.0
Changed
- BREAKING:
EnsControllerMessenger
must allowNetworkController: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
.
- Provider is now sourced from
Fixed
- Initial network is set using
selectedNetworkClientId
, which is derived using theNetworkController: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
toAbstractMessageManager
Changed
- Add
requestId
property to themessageParams
object to reference metric event fragments created from thecreateRPCMethodTrackingMiddleware
in the client (#4636)- Add optional property
requestId
toAbstractMessageParams
type - Add optional property
id
toOriginalRequest
type
- Add optional property
- Bump
@metamask/controller-utils
from^11.1.0
to^11.2.0
(#4651)
@metamask/network-controller 21.0.0
Added
- BREAKING: Add
networkConfigurationsByChainId
toNetworkState
(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.
- This property replaces
- Add
getNetworkConfigurationByChainId
method,NetworkController:getNetworkConfigurationByChainId
messenger action, andNetworkControllerGetNetworkConfigurationByNetworkClientId
type (#4268) - Add
addNetwork
, which replaces one half ofupsertNetworkConfiguration
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 atrackMetaMetricsEvent
callback. It is expected that you will subscribe to this event and create a MetaMetrics event yourself.
- It's worth noting that this method now publishes a
- Add
updateNetwork
, which replaces one half ofupsertNetworkConfiguration
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
toupdateNetwork
. It will then switch to the designated RPC endpoint's network client on your behalf.
- 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
- Add
removeNetwork
, which replacesremoveNetworkConfiguration
and can be used to remove existing network clients for a chain (#4268) - Add
getDefaultNetworkControllerState
function, which replacesdefaultState
and matches patterns in other controllers (#4268) - Add
RpcEndpointType
,AddNetworkFields
, andUpdateNetworkFields
types (#4268) - Add
getNetworkConfigurations
,getAvailableNetworkClientIds
andselectAvailableNetworkClientIds
selectors (#4268)- These new selectors can be ap...
193.0.0
@metamask/approval-controller 7.0.3
Changed
- 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/base-controller 7.0.0
Added
- Migrate from
@metamask/[email protected]
into@metamask/base-controller
: typesLegacyControllerStateConstraint
,RestrictedControllerMessengerConstraint
and type guard functionsisBaseController
,isBaseControllerV1
(#4581) - Add and export types
ControllerInstance
,BaseControllerInstance
,StateDeriverConstraint
,StateMetadataConstraint
,StatePropertyMetadataConstraint
,BaseControllerV1Instance
,ConfigConstraintV1
,StateConstraintV1
(#4581)
Fixed
- BREAKING: Fix
StateMetadata
type so that it requires associated metadata for all optional and non-optional top-level state properties (#4612)- Fixes issue of runtime error being thrown during
BaseController
instantiation due to missing metadata for optional state properties.
- Fixes issue of runtime error being thrown during
@metamask/composable-controller 9.0.0
Changed
- Bump
@metamask/base-controller
from^6.0.3
to^7.0.0
(#4643)
Removed
- BREAKING: Remove exports for types
LegacyControllerStateConstraint
,RestrictedControllerMessengerConstraint
, and type guard functionsisBaseController
,isBaseControllerV1
(#4467)- These have been migrated to
@metamask/[email protected]
.
- These have been migrated to
@metamask/keyring-controller 17.2.0
Added
- Add
KeyringController:addNewAccount
messenger action (#4565)- Add and export
KeyringControllerAddNewAccountAction
type. - Widen
KeyringControllerActions
to includeKeyringControllerAddNewAccountAction
type. KeyringControllerMessenger
must allowKeyringControllerAddNewAccountAction
type.
- Add and export
Changed
- Bump
@metamask/base-controller
from^6.0.2
to^7.0.0
(#4625, #4643) - Bump
@metamask/keyring-api
from^8.0.1
to^8.1.0
(#4594) - Bump
@metamask/message-manager
from^10.0.2
to^10.0.3
(#4643) - Bump
typescript
from~5.0.4
to~5.2.2
(#4576, #4584)
@metamask/logging-controller 6.0.0
Added
- Define and export new types:
LoggingControllerGetStateAction
,LoggingControllerStateChangeEvent
,LoggingControllerEvents
(#4633)
Changed
- BREAKING:
LoggingControllerMessenger
must allow internal events defined in theLoggingControllerEvents
type (#4633) LoggingControllerActions
is widened to include theLoggingController:getState
action (#4633)- 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.0.2
(#4517, #4544) - Bump
typescript
from~4.9.5
to~5.2.2
and setmodule{,Resolution}
option toNode16
(#3645, #4576, #4584)
@metamask/message-manager 10.0.3
Changed
- 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/phishing-controller 12.0.1
Added
- Add
getHostnameFromUrl
utility function to standardize hostname extraction from URLs (#4645)
Fixed
- Update
test
,isBlockedRequest
, andbypass
methods to use the hostname for allowlist checks instead of the full origin (#4645)- The previous approach of using the full origin had limitations in dealing with subdomains or variations in the URL structure, which could lead to inconsistent results or false negatives.
@metamask/signature-controller 19.0.0
Changed
192.0.0
@metamask/phishing-controller 12.0.0
Added
- Add allowlist functionality to the C2 domain detection system (#4464)
- Add
PhishingController
functionality for blocking client-side C2 requests by managing a hashed C2 request blocklist (#4526)- Add
requestBlocklist
type toListTypes
. - Add
isBlockedRequest
method toPhishingController
. - Add
isMaliciousRequestDomain
method toPhishingDetector
. - Add handling of
requestBlocklist
inPhishingDetector
configuration. - Add logic to update and check
requestBlocklist
when updating a stale list. - Add
sha256Hash
function to generate SHA-256 hash of a domain.
- Add
- Define and export new types:
PhishingControllerGetStateAction
,PhishingControllerStateChangeEvent
,PhishingControllerEvents
(#4633)
Changed
- BREAKING: Add
@noble/hashes
^1.4.0
as dependency (#4526) - BREAKING:: Add
ethereum-cryptography
^2.1.2
as dependency (#4526) - BREAKING:
PhishingControllerMessenger
must allow internal events defined in thePhishingControllerEvents
type (#4633) - Widen
PhishingControllerActions
to include thePhishingController:getState
action (#4633) - Bump
@metamask/base-controller
from^6.0.2
to^6.0.3
(#4625) - Bump
@metamask/controller-utils
from^11.0.2
to^11.1.0
(#4639)
191.0.0
190.0.0
@metamask/transaction-controller 35.2.0
Added
- Add tracing infrastructure (#4575)
- Add optional
trace
callback to constructor. - Add optional
traceContext
option toaddTransaction
method. - Add initial tracing of transaction lifecycle.
- Add optional
Changed
- Bump
@metamask/base-controller
from^6.0.2
to^6.0.3
(#4625) - Bump
@metamask/network-controller
from^20.1.0
to^20.2.0
(#4618) - Bump
@metamask/eth-json-rpc-provider
from^4.1.2
to^4.1.3
(#4607)
Removed
- Remove validation of
gasValues
passed tospeedUpTransaction
andstopTransaction
methods (#4617)