Minor Changes
-
#3427
2a5ded4eab7febcf2b77a88cfe3c34a621d4dfe7
Thanks @jxom! - Stabilized EIP-7702.- Added
prepareAuthorization
andsignAuthorization
Actions to the Wallet Client. - Added
hashAuthorization
,recoverAuthorizationAddress
, andverifyAuthorization
Utilities. - Renamed
account.experimental_signAuthorization
toaccount.signAuthorization
.
- Added
-
#3427
2a5ded4eab7febcf2b77a88cfe3c34a621d4dfe7
Thanks @jxom! - BREAKING (Experimental): Removed deprecatedwalletActionsEip5792
export. Useeip5792Actions
instead. -
#3427
2a5ded4eab7febcf2b77a88cfe3c34a621d4dfe7
Thanks @jxom! - BREAKING (Experimental): Removed deprecated ERC-6492 exports inviem/experimental
. These are no longer experimental. Use exports fromviem
instead. -
#3427
2a5ded4eab7febcf2b77a88cfe3c34a621d4dfe7
Thanks @jxom! - BREAKING (Experimental): Removed deprecatedwalletActionsErc7715
export. Useerc7715Actions
instead. -
#3427
2a5ded4eab7febcf2b77a88cfe3c34a621d4dfe7
Thanks @jxom! - BREAKING (Experimental):Removed EIP-7702 exports in
viem/experimental
. These are no longer experimental. Use exports fromviem
orviem/utils
instead.Note, there is also a behavioral change in the stable EIP-7702
signAuthorization
function. Previously, it was assumed that the signer of the Authorization was also the executor of the Transaction. This is no longer the case.If the signer of the Authorization is NOT the executor of the Transaction, you no longer need to pass a
sponsor
parameter.const eoa = privateKeyToAccount('0x...') const relay = privateKeyToAccount('0x...') const authorization = await client.signAuthorization({ account: eoa, contractAddress: '0x...', - sponsor: true }) const transaction = await client.sendTransaction({ account: relay, authorizationList: [authorization], })
If the signer of the Authorization is ALSO the executor of the Transaction, you will now need to pass the
executor
parameter with a value of'self'
.const eoa = privateKeyToAccount('0x...') - const relay = privateKeyToAccount('0x...') const authorization = await client.signAuthorization({ account: eoa, contractAddress: '0x...', + executor: 'self', }) const transaction = await client.sendTransaction({ - account: relay, + account: eoa, authorizationList: [authorization], })
Patch Changes
-
#3469
3f00c5f28e8a4eec0ee60fe3bb9acdc5e828d1c7
Thanks @danijelTxFusion! - ZKSync Extension: Addeddeposit
action. -
#3497
512ee19fdaf309d2ec607e024ecdb08ffbde5f68
Thanks @DiRaiks! - Changed Hoodi block explorer to Etherscan. -
#3505
c0f36abc39df5fc230c41871da1e7ba6a74d25eb
Thanks @clemlak! - Added Multicall3 address to Ink Mainnet. -
#3506
bce50f08acaa8355b11462487317929d958eb408
Thanks @CruzMolina! - add Multicall3 address to Ink Sepolia