All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Update Nft Controller to add the NFT back to its own group if we are re-importing it (#1082)
- Add Sepolia support to the currency rate controller (#1041)
- The currency rate controller will now treat Sepolia as a testnet, and return the Mainnet exchange rate when asked for the Sepolia exchange rate.
- BREAKING: Update
@metamask/network-controller
peer dependency to v3 (#1041) - BREAKING: Migrate from
metaswap
tometafi
subdomain for OpenSea proxy and token icons API (#1060) - Rename this repository to
core
(#1031) - Update ERC20Standard to use
@metamask/abi-utils
instead of@ethersproject/abi
(#985) - Update
@metamask/controller-utils
package (#1041)
- BREAKING: Drop support for Ropsten, Rinkeby, and Kovan (#1041)
- The currency rate controller no longer has special handling of these three networks. It used to return the Mainnet exchange rate for these three networks, but now it includes no special handling for them.
- The NFT controller no longer supports the Rinkeby OpenSea test API.
- Export
isTokenDetectionSupportedForNetwork
function (#1034) - Update
@metamask/contract-metadata
from 1.35.0 to 2.1.0 (#1013)
- Fix token controller state updates (#1015)
- Attempts to empty the list of "added", "ignored", or "detected" tokens were not saved in state correctly, resulting in that operation being undone after switching account or network.
- BREAKING: A new private property, controlled by the
start
andstop
methods, is added to the CurrencyRateController:enabled
. When this is false, no network requests will be made from the controller. Previously, setNativeCurrency or setCurrentCurrency would trigger a network request. That is now prevented ifenabled
is false. (#1002)
- The TokenRatesController no longer overwrites the
disabled
config property passed to the constructor, allowing the controller to be instantiated withconfig.disabled
set to either true or false. (#1002) - This package will now warn if a required package is not present (#1003)
- BREAKING: Update
onNetworkStateChange
, a constructor option for several controllers, to take an object with aproviderConfig
property instead ofprovider
(#995)- This affects:
- AssetsContractController
- NftController
- NftDetectionController
- TokenDetectionController
- TokenListController
- TokenRatesController
- TokenController
- This affects:
- BREAKING: [TokenDetectionController] Update
getNetworkState
constructor option to take an object withproviderConfig
property rather thanproviderConfig
(#995) - Relax dependencies on
@metamask/base-controller
,@metamask/controller-utils
,@metamask/network-controller
, and@metamask/preferences-controller
(use^
instead of~
) (#998)
- Fix race condition where some token detections can get mistakenly added to the wrong account (#956)
- Initial release
-
As a result of converting our shared controllers repo into a monorepo (#831), we've created this package from select parts of
@metamask/controllers
v33.0.0, namely:- Everything in
src/assets
- Asset-related functions from
src/util.ts
and accompanying tests
All changes listed after this point were applied to this package following the monorepo conversion.
- Everything in
-
- Use Ethers for AssetsContractController (#845)