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.
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^53.0.0(#5585) - Bump
@metamask/controller-utilsto^11.7.0(#5583)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^52.0.0(#5513)
- BREAKING: Bump peer dependency
@metamask/gas-fee-controllerto^23.0.0(#5507) - BREAKING: Bump peer dependency
@metamask/network-controllerto^23.0.0(#5507) - BREAKING: Bump peer dependency
@metamask/transaction-controllerto^51.0.0(#5507) - Bump
@metamask/polling-controllerto^13.0.0(#5507)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^50.0.0(#5496)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^49.0.0(#5471)
- BREAKING: Bump
@metamask/keyring-controllerpeer dependency to^21.0.0(#5439) - BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^48.0.0(#5439)
- BREAKING: Bump
@metamask/keyring-controllerpeer dependency to^20.0.0(#5426) - BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^47.0.0(#5426) - Bump
@metamask/utilsfrom^11.1.0to^11.2.0(#5301)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency from^45.0.0to^46.0.0(#5318)
- Bump
@metamask/base-controllerfrom^7.1.1to^8.0.0(#5305) - Bump
@metamask/polling-controllerfrom^12.0.3to^12.0.4(#5305)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency from^44.0.0to^45.0.0(#5292) - Bump
@metamask/controller-utilsdependency from^11.4.5to^11.5.0(#5272) - Bump
@metamask/utilsfrom^11.0.1to^11.1.0(#5223)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency from^43.0.0to^44.0.0(#5218)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency from^42.0.0to^43.0.0(#5140) - Bump
@metamask/base-controllerfrom^7.0.0to^7.1.0(#5079)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency from^41.1.0to^42.0.0(#5032) - Bump
@metamask/eth-block-trackerfrom to^11.0.2to^11.0.3(#5025)
- Bump
@metamask/controller-utilsfrom^11.4.3to^11.4.4(#5012) - Bump
@metamask/polling-controllerfrom^12.0.1to^12.0.2(#5012)
- Make implicit peer dependencies explicit (#4974)
- Add the following packages as peer dependencies of this package to satisfy peer dependency requirements from other dependencies:
@metamask/eth-block-tracker>=9(required by@metamask/transaction-controller)
- These dependencies really should be present in projects that consume this package (e.g. MetaMask clients), and this change ensures that they now are.
- Furthermore, we are assuming that clients already use these dependencies, since otherwise it would be impossible to consume this package in its entirety or even create a working build. Hence, the addition of these peer dependencies is really a formality and should not be breaking.
- Add the following packages as peer dependencies of this package to satisfy peer dependency requirements from other dependencies:
- Correct ESM-compatible build so that imports of the following packages that re-export other modules via
export *are no longer corrupted: (#5011)@metamask/eth-querybn.jslodash
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency from^40.1.0to^41.0.0(#4982)
- BREAKING: Bump
@metamask/keyring-controllerpeer dependency from^18.0.0to^19.0.0(#4195) - BREAKING: Bump
@metamask/transaction-controllerpeer dependency from^39.0.0to^40.0.0(#4195)
- BREAKING: Bump peer depepdency
@metamask/transaction-controllerfrom^38.0.0to^39.0.0(#4915) - BREAKING: Bump peer depepdency
@metamask/keyring-controllerfrom^17.0.0to^18.0.0(#4915) - Bump
@metamask/polling-controllerfrom^12.0.0to^12.0.1(#4870) - Bump
@metamask/base-controllerfrom^7.0.1to^7.0.2(#4862) - Bump
@metamask/controller-utilsfrom^11.4.0to^11.4.3(#4862, #4870, #4915)
- BREAKING: Bump
@metamask/network-controllerpeer dependency from^21.0.0to^22.0.0(#4841) - Bump
@metamask/controller-utilsto^11.4.0(#4834) - Bump
@metamask/rpc-errorsto^7.0.1(#4831) - Bump
@metamask/utilsto^10.0.0(#4831)
- Added new entries
bridge,bridgeApprovalto theTransactionTypeenum (#4714)
- BREAKING:
PendingUserOperationTrackernow uses a new polling interface that accepts the generic parameterPollingInput(#4752) - BREAKING: The inherited
AbstractPollingControllermethodstartPollingByNetworkClientIdhas been renamed tostartPolling(#4752) - BREAKING: The inherited
AbstractPollingControllermethodonPollingCompletenow returns the entire input object of typePollingInput, instead of a network client id (#4752) - Bump
@metamask/transaction-controllerfrom^37.1.0to^37.3.0(#4754,#4805) - Bump
@metamask/approval-controllerfrom^7.0.4to^7.1.0(#4734) - Bump
@metamask/keyring-controllerfrom^17.2.1to^17.2.2(#4734) - Bump
@metamask/transaction-controllerfrom^37.0.0to^37.1.0(#4734)
- Produce and export ESM-compatible TypeScript type declaration files in addition to CommonJS-compatible declaration files (#4648)
- Previously, this package shipped with only one variant of type declaration
files, and these files were only CommonJS-compatible, and the
exportsfield inpackage.jsonlinked to these files. This is an anti-pattern and was rightfully flagged by the "Are the Types Wrong?" tool as "masquerading as CJS". All of the ATTW checks now pass.
- Previously, this package shipped with only one variant of type declaration
files, and these files were only CommonJS-compatible, and the
- Remove chunk files (#4648).
- Previously, the build tool we used to generate JavaScript files extracted common code to "chunk" files. While this was intended to make this package more tree-shakeable, it also made debugging more difficult for our development teams. These chunk files are no longer present.
- BREAKING: Bump devDependency and peerDependency
@metamask/network-controllerfrom^20.0.0to^21.0.0(#4618, #4651) - BREAKING: Bump devDependency and peerDependency
@metamask/transaction-controllerfrom^35.0.0to^36.0.0( #4651) - BREAKING: Bump devDependency and peerDependency
@metamask/gas-fee-controllerfrom^19.0.0to^20.0.0( #4651) - Bump
@metamask/base-controllerfrom^6.0.2to^7.0.0(#4625, #4643) - Bump
@metamask/controller-utilsfrom^11.0.2to^11.2.0(#4639, #4651) - Bump
@metamask/polling-controllerfrom^9.0.1to^10.0.0(#4651) - Bump
typescriptfrom~5.0.4to~5.2.2(#4576, #4584)
- Remove
@metamask/approval-controller,@metamask/gas-fee-controller,@metamask/keyring-controller,@metamask/network-controller, and@metamask/transaction-controllerdependencies #4556- These were listed under
peerDependenciesalready, so they were redundant as dependencies.
- These were listed under
- Upgrade TypeScript version to
~5.0.4and setmoduleResolutionoption toNode16(#3645) - Bump
@metamask/base-controllerfrom^6.0.0to^6.0.2(#4517, #4544) - Bump
@metamask/controller-utilsfrom^11.0.0to^11.0.2(#4517, #4544) - Bump
@metamask/polling-controllerfrom^9.0.0to^9.0.1(#4548) - Bump
@metamask/rpc-errorsfrom^6.2.1to^6.3.1(#4516) - Bump
@metamask/utilsfrom^8.3.0to^9.1.0(#4516, #4529)
- Replace
superstructwith ESM-compatible@metamask/superstruct^3.1.0(#3645)- This fixes the issue of this package being unusable by any TypeScript project that uses
Node16orNodeNextas itsmoduleResolutionoption.
- This fixes the issue of this package being unusable by any TypeScript project that uses
- BREAKING: Bump peerDependency
@metamask/network-controllerto^20.0.0(#4508) - BREAKING: Bump peerDependency
@metamask/gas-fee-controllerto^19.0.0(#4508) - BREAKING: Bump peerDependency
@metamask/transaction-controllerto^35.0.0(#4508) - Bump
@metamask/polling-controllerto^9.0.0(#4508)
- BREAKING: Bump dependency and peer dependency
@metamask/gas-fee-controllerto^18.0.0(#4498) - BREAKING: Bump dependency and peer dependency
@metamask/transaction-controllerto^34.0.0(#4498)
- Bump
@metamask/transaction-controllerto^33.0.1(#4460)
- BREAKING: Bump minimum Node version to 18.18 (#3611)
- BREAKING: Bump dependency and peer dependency
@metamask/approval-controllerto^7.0.0(#4352) - BREAKING: Bump dependency and peer dependency
@metamask/gas-fee-controllerto^17.0.0(#4352) - BREAKING: Bump dependency and peer dependency
@metamask/keyring-controllerto^17.0.0(#4352) - BREAKING: Bump dependency and peer dependency
@metamask/network-controllerto^19.0.0(#4352) - BREAKING: Bump dependency and peer dependency
@metamask/transaction-controllerto^32.0.0(#4352) - Bump
@metamask/base-controllerto^6.0.0(#4352) - Bump
@metamask/controller-utilsto^11.0.0(#4352) - Bump
@metamask/polling-controllerto^8.0.0(#4352)
- Add support for "swap+send" transactions (#4298)
- Add optional properties
destinationTokenAmount,sourceTokenAddress,sourceTokenAmount,sourceTokenDecimals, andswapAndSendRecipienttoTransactionMeta - Add
swapAndSendas a new entry inTransactionTypeenum - When persisting this type of transaction, copy source tokens, destination tokens, and recipient from swap data, and emit
TransactionController:newSwapAndSendcontroller event
- Add optional properties
- BREAKING: Bump dependency and peer dependency
@metamask/approval-controllerto^6.0.2(#4342) - BREAKING: Bump dependency and peer dependency
@metamask/gas-fee-controllerto^16.0.0(#4342) - BREAKING: Bump dependency and peer dependency
@metamask/keyring-controllerto^16.1.0(#4342) - BREAKING: Bump dependency and peer dependency
@metamask/network-controllerto^18.1.3(#4342) - BREAKING: Bump dependency and peer dependency
@metamask/transaction-controllerto^31.0.0(#4342) - Bump
@metamask/controller-utilsto^10.0.0(#4342) - Bump
@metamask/polling-controllerto^7.0.0(#4342)
- BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^29.0.0(#4272)
- BREAKING Bump
@metamask/keyring-controllerpeer dependency to ^16.0.0 (#4234) - Bump
@metamask/base-controllerto^5.0.2(#4232) - Bump
@metamask/transaction-controllerto^28.1.1(#4229) - Bump
@metamask/gas-fee-controllerto^15.1.1(#4220, #4234) - Bump
@metamask/approval-controllerto^6.0.2(#4234) - Bump
@metamask/polling-controllerto^6.0.2(#4234)
- Support number gas values in user operation receipts (#4161)
- BREAKING Bump peer dependency on
@metamask/keyring-controllerto^15.0.0and Pass CAIP-2 scope to execution context (#4090) - Allow gas limits to be changed during #addPaymasterData (#3942)
- BREAKING: Bump peer dependency
@metamask/gas-fee-controllerto^15.0.0(#4121) - BREAKING: Bump peer dependency
@metamask/transaction-controllerto^26.0.0(#4121) - Bump dependency
@metamask/network-controllerto^18.1.0(#4121)
- Include gas fees in user operations when using a paymaster (#4032)
- Fix
typesfield inpackage.json(#4047)
- BREAKING: Add ESM build (#3998)
- It's no longer possible to import files from
./distdirectly.
- It's no longer possible to import files from
- BREAKING: Bump dependency and peer dependency on
@metamask/approval-controllerto^6.0.0(#4039) - BREAKING: Bump dependency and peer dependency on
@metamask/gas-fee-controllerto^14.0.0(#4039) - BREAKING: Bump dependency and peer dependency on
@metamask/keyring-controllerto^14.0.0(#4039) - BREAKING: Bump dependency and peer dependency on
@metamask/network-controllerto^18.0.0(#4039) - BREAKING: Bump dependency and peer dependency on
@metamask/transaction-controllerto^25.0.0(#4039) - BREAKING: Bump
@metamask/controller-utilsto^9.0.0(#4039) - BREAKING: Bump
@metamask/polling-controllerto^6.0.0(#4039)
- BREAKING: Bump
@metamask/keyring-controllerdependency and peer dependency to^13.0.0(#4007) - BREAKING: Bump
@metamask/transaction-controllerdependency and peer dependency to^24.0.0(#4007) - Bump
@metamask/approval-controllerto^5.1.3(#4007) - Bump
@metamask/controller-utilsto^8.0.4(#4007) - Bump
@metamask/gas-fee-controllerto^13.0.2(#4007) - Bump
@metamask/network-controllerto^17.2.1(#4007) - Bump
@metamask/rpc-errorsto^6.2.1(#3954) - Bump
@metamask/polling-controllerto^5.0.1(#4007) - Replace
ethereumjs-utilwithbn.js(#3943)
- BREAKING: Bump
@metamask/transaction-controllerdependency and peer dependency to^23.0.0(#3925)
- BREAKING: Add required
fromproperty toPrepareUserOperationRequest(#3844) - BREAKING: Add required
fromproperty toAddUserOperationRequest(#3844) - BREAKING: Make
smartContractAccountoptional inAddUserOperationOptions(#3844)- Use current account snap by default if not provided (#3844)
- Delete user operation if rejected during approval (#3844)
- Set
userFeeLeveltocustomin transaction event if using a paymaster (#3844) - Validate arguments when calling
addUserOperationFromTransaction(#3844)
- BREAKING: Bump
@metamask/approval-controllerpeer dependency to^5.1.2(#3821) - BREAKING: Bump
@metamask/gas-fee-controllerpeer dependency to^13.0.0(#3821) - BREAKING: Bump
@metamask/network-controllerpeer dependency to^17.2.0(#3821) - BREAKING: Bump
@metamask/transaction-controllerpeer dependency to^21.0.0(#3821) - Bump
@metamask/base-controllerto^4.1.1(#3821) - Bump
@metamask/controller-utilsto^8.0.2(#3821) - Bump
@metamask/message-managerto^7.3.8(#3821) - Bump
@metamask/polling-controllerto^5.0.0(#3821)
- Remove
@metamask/polling-controllerpeer dependency (#3823)- This was mistakenly added as a peer dependency in v1. Now it's a regular dependency.
- Initial Release (#3749)