Breaking changes:
- transaction calls (
request_type="tx"
, default for non-pure non-view functions) now always return a transaction object, this behavior cannot be changed- this does not apply to the
.deploy()
method that still returns a contract instance and a transaction object can be requested usingreturn_tx=True
- this does not apply to the
- the latest available transaction type is now used instead of type 0 (legacy) transactions
ContractType.deployment_code()
was renamed toContractType.get_creation_code()
New features:
- implemented
woke.deployment
module that automatically sets transaction fees, gas limit and prompts users to confirm transactions and interactively shows sent transactions - added support for Geth
chain.connect
context manager now acceptsgas_price
andblock_base_fee_per_gas
kwargs- implemented
chain.set_min_gas_price()
- added support for type 1 (EIP-2930) and type 2 (EIP-1559) transactions
- added
effective_gas_price
property toTransactionAbc
- added support for access lists
- access lists can be passed as kwargs to transaction calls or generated using the
access_list
request type
- access lists can be passed as kwargs to transaction calls or generated using the
call
requests now acceptblock
kwarg to set execution context of the call.deploy()
methods now support request types- implemented
woke accounts
CLI commands - implemented
Account.new()
to create a new account with a random private key - implemented support for importing accounts from private keys, mnemonics and aliases
- implemented raw message signing, structured message signing and message hash signing
- implemented
__bytes__
onAddress
- functions accepting Wei argument now also accept string literals with units (e.g.
10 gwei
) - added
tx
field toTransactionRevertedError
to access a transaction object of the transaction that caused the revert
Fixes:
estimate
request now by default usespending
block execution context instead oflatest
- fixed
@overload
declarations in pytypes type
field is not longer set in type 0 transactionstx.block
andtx.tx_index
are now always fetched from a transaction receipt- fixed
Address
comparison and hashing