Ape 0.6.0
Breaking Changes
-
fix!: change some
str
items toAddressType
where it makes sense @unparalleled-js (#1262)
Now, plugins can use more accurate types when defining these methods. -
fix!: don't use Union type in BaseInterfaceModel @fubuloubu (#1224)
Now, you can properly set the gas or transaction type when sending a transaction. -
feat!: conform
ProviderAPI.get_receipt()
@dtdang (#1214)
Now, provider plugins can define custom kwargs on theirget_receipt()
implementation. -
feat!: refactor account history APIs @Ninjagod1251 (#1210)
Now it is much easier to get account history, with an improved API. -
feat!: update
TransactionError
arg order @NotPeopling2day (#1226)
Now it is much easier to raise a transaction error. -
feat!: encode and decode calldata from contracts @unparalleled-js (#1160)
You can now, without function invocation, encode and decode calldata off a contract.
This helps our multisig use-case. -
feat!: Make OutOfGasError a VirtualMachineError @Ninjagod1251 (#1209)
Now, your provider can return OutOfGasError for virtual machine errors without typing concerns. -
refactor!: replace evm-types in our APIs with custom generic types @unparalleled-js (#1213)
Because of this, we will now be able to support tracing in non-EVM ecosystems, such as
Starknet. -
refactor!: use lists for logs on receipt instead of iterator @unparalleled-js (#1244)
Making assertions on the logs emitted from a receipt is now much more intuitive.
No list-comprehension is needed. -
refactor!: modify
AccountAPI.sign_transaction
to returnTransactionAPI
@fubuloubu (#1201)
By allowing a transaction to be returned instead of a signature, we are more able to support
complex wallets such as multisigs. -
refactor!:
prepare_transaction()
logic toWeb3Provider
@NotPeopling2day (#1202)
For non-EVM ecosystem plugins, it is more intuitive to realize you need to implement
prepare_transaction()
(rather than override).
Changes
-
fix: add missing 0x prefix to Signature representation @unparalleled-js (#1215)
-
fix: issue from type-ignoring
TransactionSignature
@unparalleled-js (#1212) -
fix: except
AttributeError
when checking for account @unparalleled-js (#1208) -
fix: parse empty array of structs into empty list @fubuloubu (#1243)
-
fix: update org.label-schema.docker.cmd to reflect user harambe @sabotagebeats (#1252)
-
fix: misses from other PRs @unparalleled-js (#1248)
-
fix: issues with static fee transactions @unparalleled-js (#1247)
-
fix: issue with str type in
is_contract()
@unparalleled-js (#1246) -
fix: update proxy info errors @NotPeopling2day (#1225)
-
feat: run scripts from subfolders @sabotagebeats (#1185)
You can now run scripts in subdirectories like this:ape run subdir myscript
-
feat: add EVM support for Multicall3 @fubuloubu (#1189)
Save requests by using multi-call from ape-ethereum. You can invoke multiple transactions at
once this way! -
feat: include bytecode in JSON raw compiler if present @unparalleled-js (#1261)
Are you trying to use non-Ape projects with pre-compiled contracts in them? Well, now you can. -
feat: encode struct-like arguments as tuples for ape-ethereum @fubuloubu (#1230)
You can now pass objects or dictionaries for struct-inputs on contract invokes. -
feat: support selection of default transaction type in config @bilbeyt (#1255)
Now, you can set the default transaction type in yourape-config.yaml
file without needing
to puttype=0
on every transaction. -
feat: utilize ImpersonatedAccount for contract transactions @bilbeyt (#1242)
Now, if a provider plugin does not have custom handling for impersonated accounts, core is able to
handle it. -
feat: allow setting txn on OutOfGasError @unparalleled-js (#1259)
Now you can tell what the transaction was from an OutOfGasError. -
feat: add support to create test accounts runtime @bilbeyt (#1199)
Create accounts on-the-fly in your testing environments. -
feat: add default sender manager @bilbeyt (#1229)
Eliminate the need forsender=
everywhere by configuring a default sender in yourape-config.yaml
. -
docs: move projects from README.md to docs/userguides/projects.md @sabotagebeats (#1253)
-
docs: update style and font for docs @fubuloubu @agBabbbyCakes (#1235)
-
docs: update to reflect harambe user in ape docker container command @sabotagebeats (#1251)
-
docs: added constructor arguments to docs/userguides/contracts.md @sabotagebeats (#1245)
-
docs: update sponsor link @fubuloubu (#1236)
-
docs: fix
gas_limit
example in config guide @milkyklim (#1232) -
refactor: TransactionErrors and standardize transaction passing @NotPeopling2day (#1250)
-
refactor: return default config when network not found @fubuloubu (#1238)
-
test: fix flaky tests @unparalleled-js (#1254)
-
chore: remove outdated comment @unparalleled-js (#1258)
-
chore: add a security policy @fubuloubu (#1184)
-
chore: remove all
<3.8
backports @fubuloubu (#1207)
Special thanks to: @Ninjagod1251, @NotPeopling2day, @bilbeyt, @dtdang, @fubuloubu, @milkyklim, @sabotagebeats and @unparalleled-js @agBabbbyCakes