Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
# [1.0.0](v0.7.0...v1.0.0) (2024-11-06) ### Bug Fixes * **accounts:** implement lazy chaching in wallets ([60f84ab](60f84ab)) ### Features * **accounts:** add `Cache` which provides lazy caching for bridge contracts ([542647f](542647f)) * **accounts:** add `PaymasterParams` and `GasPerPubdata` to `TransferCallMsg` ([8cf5594](8cf5594)) * **accounts:** add `PaymasterParams` and `GasPerPubdata` to `WithdrawalCallMsg` ([d294db0](d294db0)) * **accounts:** add `TransactionOpts` with ZKsync features ([f4321a3](f4321a3)) * **accounts:** change `SmartAccount.Balance` to utilize `CallOpts` ([e4155d6](e4155d6)) * **accounts:** change `WalletL2.Balance` to utilize `CallOpts` ([1d28994](1d28994)) * **accounts:** remove `PaymasterParams` from transfer and withdrawal tx ([efc0f60](efc0f60)) * **accounts:** rename `DepositTransaction` fields ([c070cfe](c070cfe)) * **accounts:** rename `NewBaseSignerFromMnemonic` method ([1b2bf80](1b2bf80)) * **accounts:** rename `Transaction` method ([fb1bbe9](fb1bbe9)) * **accounts:** rename `TransactionOpts` to `TransactionOptsL1` ([ba3ad1e](ba3ad1e)) * **accounts:** rename `WalletL1.ApproveERC20` to `WalletL1.ApproveToken` ([80dd564](80dd564)) * **accounts:** rename `WalletL1.EstimateCustomBridgeDepositL2Gas` ([f310974](f310974)) * **accounts:** rename `WalletL1.EstimateDefaultBridgeDepositL2Gas` ([bbc0b48](bbc0b48)) * **accounts:** use `TransactionOptsL1` in `WalletL1` ([2757f4b](2757f4b)) * **accounts:** use `TransactOpts` in `Deployer` ([5491f63](5491f63)) * **accounts:** use zksync transaction for transfer and withdrawal ([99762f5](99762f5)) * **clients:** add `CustomSignature` and `GasPerPubdata` to `TransferCallMsq` ([df00687](df00687)) * **clients:** add `CustomSignature` and `GasPerPubdata` to `WithdrawalCallMsq` ([4cd0dcf](4cd0dcf)) * **clients:** rename `TransferCallMsg` methods ([487b902](487b902)) * **clients:** rename `WithdrawalCallMsg` methods ([bd63b3d](bd63b3d)) * **eip712:** change the API of `Domain` struct ([670010a](670010a)) * **eip712:** remove `TypedData` interface ([9f69f2e](9f69f2e)) * redesign `Signer` and replace `BaseSigner` with `ECDSASigner` ([a38b8bc](a38b8bc)) * remove `AllowList` field from transaction and message types ([571fb96](571fb96)) * remove `Deployer`, `AdapterL1` and `AdapterL1` interfaces ([dfcc937](dfcc937)) * remove `EIP712Meta` struct and inline its properties in `CallMsg` ([4e48d91](4e48d91)) * remove deprecated code ([269f787](269f787)) * rename `BaseClient` to `Client` ([e91f3bc](e91f3bc)) * **types:** improve the design of L2 transaction ([c2aa297](c2aa297)) * **types:** rename `EIP712TxType` to `TxType` ([f009818](f009818)) * **types:** rename the fields for default ERC20 bridges in `BridgeContracts` ([5fb3925](5fb3925)) * **types:** update `FeeParams` field types from `uint64` to `big.Int` ([02d02a2](02d02a2)) * **types:** use `big.Int` for block and batch number in `BlockDetails` ([8fb632b](8fb632b)) * **types:** use `big.Int` for gas prices and block numbers in `BatchDetails` ([02a6e8e](02a6e8e)) ### BREAKING CHANGES * **accounts:** Rename `NewBaseSignerFromMnemonic` method to `NewECDSASignerFromMenmonic`. * **types:** Change `FeeParams` field types from `uint64` to `big.Int`. * **accounts:** Rename `Transaction.ToTransaction712` to `Transaction.ToTransaction`. * **accounts:** Renamed `DepositTransaction` fields: `ApproveERC20` to `ApproveToken`, `ApproveBaseERC20` to `ApproveBaseToken`. * **accounts:** Rename `WalletL1.ApproveERC20` to `WalletL1.ApproveToken`. * **accounts:** The `SmartAccount.Balance` method utilizes `CallOpts`. * **accounts:** The `WalletL2.Balance` method utilizes `CallOpts`. * **accounts:** Remove `PaymasterParams` from `TransferTransaction` and `WithdrawalTransaction` since it can be utilze using `TransactionOpts`. * **accounts:** Use `TransactionOptsL1` in `WalletL1` when interacting with contract API. * **accounts:** The `TransactionOpts` is renamed to `TransactionOptsL1` since it's changed to be used only for L1 interaction. * **accounts:** `WalletL2` and `Wallet` for `transfer` and `withdraw` methods use zksync transaction in order to provide utilization of zksync features. * **clients:** Rename `WithdrawalCallMsg.ToCallMsg` to `WithdrawalCallMsg.ToL1CallMsg` and `WithdrawalCallMsg.ToZkCallMsg` to `WithdrawalCallMsg.ToCallMsg`. * **clients:** Rename `TransferCallMsg.ToCallMsg` to `TransferCallMsg.ToL1CallMsg` and `TransferCallMsg.ToZkCallMsg` to `TransferCallMsg.ToCallMsg`. * **eip712:** The `eip712.Domain` methods have been renamed to be more convenient. * **eip712:** Removed `eip712.TypedData` interface. * **types:** Rename properties `L1Erc20DefaultBridge` to `L1Erc20Bridge` and `L2Erc20DefaultBridge` to `L2Erc20Bridge` in `BridgeContracts`. * **types:** Use `big.Int` type in `BlockDetails` for `Number` and `L1BatchNumber`. * **types:** Use `big.Int` type in `BatchDetails` for `Number`, `L2FairGasPrice` and `L1GasPrice`. * The `EIP712Meta` struct has been removed, and its properties are now directly inlined into the `CallMsg` struct. * **types:** Rename constant `EIP712TxType` to `TxType`. * The `Signer` interface has been redesigned to be minimal and more extensible. The `BaseSigner` has been replaced by `ECDSASigner`. Additionally, `Wallet`, `WalletL1`, and `WalletL2` now use `ECDSASigner` in their constructors. * **types:** `Transaction712` has been replaced by `Transaction`, an improved version that offers a more convenient API and greater extensibility. * **accounts:** Rename `WalletL1.EstimateCustomBridgeDepositL2Gas` to `WalletL1.EstimateDepositL2GasFromCustomBridge`. Added the missing `l2Value` parameter. * **accounts:** Rename `WalletL1.EstimateDefaultBridgeDepositL2Gas` to `WalletL1.EstimateDepositL2GasFromDefaultBridge`. * Remove `Deployer`, `AdapterL1` and `AdapterL2` interfaces. Rename `BaseDeployer` to `Deployer`. * Remove `Client` interface and rename `BaseClient` to `Client`. * Remove `AllowList` field from transaction and message types. * Remove deprecated code.