Releases: ApeWorX/ape
Ape 0.6.2
Changes
- fix: include active namespace in interactive script console @unparalleled-js (#1283)
- fix: issue where missing click decorator in CLI scripts caused all scripts to fail @unparalleled-js (#1282)
- chore: remove unused arguments on non-public API @unparalleled-js (#1279)
Special thanks to: @unparalleled-js
Ape 0.6.1
Changes
- fix: issue with default transaction type for Ethereum networks containing hyphens @unparalleled-js (#1275)
- fix: issue causing calls to fail when needing gas or trace info @unparalleled-js (#1276)
- fix: issue where
contracts_folder
was not honored in dependency @unparalleled-js (#1273)
Special thanks to: @unparalleled-js
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
Ape 0.5.9
Changes
- fix: dependencies of dependencies @unparalleled-js (#1200)
- chore: update github actions to latest versions @fubuloubu (#1206)
- docs: update PyPI Links @fubuloubu (#1205)
- fix: issue where
poll_blocks()
did not detect chain re-org @unparalleled-js (#1192) - docs: readme updates @Ninjagod1251 (#1161)
- chore: make mdformat run number automatically @unparalleled-js (#1197)
- fix: use cached path @unparalleled-js (#1196)
- fix: remove description @NotPeopling2day (#1195)
- fix: issue where compiled dependencies before their time @unparalleled-js (#1194)
- chore: prevent multiple CI runs when using pushed branched @unparalleled-js (#1171)
- docs: fix discord link @unparalleled-js (#1191)
- docs: auto-formatter for markdown documentation @unparalleled-js (#1190)
- chore: add stale PR action @NotPeopling2day (#1188)
Special thanks to: @Ninjagod1251, @NotPeopling2day, @fubuloubu and @unparalleled-js
Ape 0.5.8
Changes
- fix: allow Gnosis Safe style proxies to work with earlier deployments @fubuloubu (#1178)
- fix: issues with dependencies of dependencies @unparalleled-js (#1183)
- test: ape init @Ninjagod1251 (#1175)
- refactor: use callTracer for geth style traces @unparalleled-js (#1177)
- feat: allow setting balance if current provider supports it @fubuloubu (#1173)
- fix: gas_limit of "auto" causes failure with unsupported providers @fubuloubu (#1180)
- fix: send subprocess provider output to
devnull
when log level aboveDEBUG
@unparalleled-js (#1172) - feat:
ape accounts export <ALIAS>
exports private key @sabotagebeats (#1170) - test: added testing for
accounts generate
seed phrase length @sabotagebeats (#1169)
Special thanks to: @Ninjagod1251, @fubuloubu, @sabotagebeats and @unparalleled-js
Ape 0.5.7
Changes
- feat: generate with mnemonic @sabotagebeats (#1165)
- fix: issue where dependency contract type would not compile @unparalleled-js (#1168)
- chore: changes from pyupgrade @unparalleled-js (#1163)
- feat: import Account from Mnemonic @sabotagebeats (#1142)
- feat: support regex in ape.reverts() @helloibis (#1162)
- feat: Adding in a .gitignore file on ape initialization @Ninjagod1251 (#1159)
- fix: change to http default in github clone for dependencies @unparalleled-js (#1153)
- feat: don't compile dependencies @unparalleled-js (#1152)
- docs: update CONTRIBUTING.md @eltociear (#1156)
- fix: another issue where editable plugins would not install correctly @unparalleled-js (#1155)
- fix: issue where directories with compiler extension in name would cause issues @unparalleled-js (#1147)
- feat: improve error when contract type collision @unparalleled-js (#1150)
- feat: configure global compiler ignore files @unparalleled-js (#1151)
- fix: convert
block_identifier
to hex @gosuto-inzasheru (#1146) - test: replace reverts mocks with geth provider @unparalleled-js (#1149)
Special thanks to: @Ninjagod1251, @eltociear, @gosuto-inzasheru, @helloibis, @sabotagebeats and @unparalleled-js
Ape 0.5.6
Changes
- test: add reverts test documentation @helloibis (#1143)
- fix: correct method name shown in error multi-event error message @unparalleled-js (#1144)
- feat: add dev message support in ape.reverts (
ape-vyper
only) @helloibis (#1125) - chore: upgrade
mypy
to 0.9 range @unparalleled-js (#1139) - refactor: replace pygit2 with subprocess calls to
git
@unparalleled-js (#1141) - feat: support integer-type input values for
AddressType
@unparalleled-js (#1140) - fix: correct mypy type shed package @unparalleled-js (#1138)
Special thanks to: @helloibis and @unparalleled-js
Ape 0.5.5
Changes
- chore: remove pychain banner @NotPeopling2day (#1137)
- chore: use setuptools types @unparalleled-js (#1135)
- fix: add BaseTransacrtion.txn_hash type hint @helloibis (#1136)
- docs: add more detail on interfaces @unparalleled-js (#1134)
- feat: include view calls in gas report @unparalleled-js (#1131)
- fix: issue where contract cache allowed non-checksum addresses @unparalleled-js (#1133)
- chore: upgrade
web3py
dependency to6.0.0b7
@unparalleled-js (#1130) - feat: Add
set_code
method toProviderAPI
@sabotagebeats (#1090) - perf: only check trace in tests if has a reason to @unparalleled-js (#1128)
- fix:
utils.abi.parse_type()
bug @nazariyv (#1123) - feat: ability to interact with contracts by method string name @evmBrahmin (#1121)
- feat: local geth provider
_snapshot()
and_revert()
implementations @unparalleled-js (#1127) - test: run
geth
in tests @unparalleled-js (#1120) - fix: pass default contract type to proxy target @jmonteer (#1124)
- fix: pin mypy to 0.982 @helloibis (#1126)
Special thanks to: @NotPeopling2day, @evmBrahmin, @helloibis, @jmonteer, @nazariyv, @sabotagebeats and @unparalleled-js
Ape 0.5.4
Changes
- refactor: simplify manager calls in tracer @unparalleled-js (#1117)
- fix: include memory when using geth to get geth-style traces @unparalleled-js (#1116)
- fix: issue preventing use of geth with non parity traces @unparalleled-js (#1115)
- fix: issue with
AddressAPI.__dir__()
implementation and its base-classes @unparalleled-js (#1114) - feat: configure gas report, including skip files @unparalleled-js (#1111)
- feat: add
--watch
flag toape test
(and associated options) @fubuloubu (#1105)
Special thanks to: @fubuloubu and @unparalleled-js
Ape 0.5.3
Changes
- docs: fix contrib doc building @NotPeopling2day (#1110)
- docs: adding banner for Pychain 2022 conference @miohtama (#1096)
- docs: fix typos from the developing-plugins guide @omahs (#1109)
- fix: resolve typing issues found in pre-commit and upgrade lint dependencies @unparalleled-js (#1108)
- fix: use sourceId rather than contractType name for error message @hhamud (#1107)
- fix: regression @unparalleled-js (#1106)
- feat: set local networks to max gas_limit @helloibis (#1097)
- test: demonstrate transfer with
send_everything=True
and setting a very high gas @unparalleled-js (#1104) - test: isolate tests @unparalleled-js (#1103)
- fix: issue where revert message missing when specify gas using EthTester @unparalleled-js (#1100)
Special thanks to: @NotPeopling2day, @helloibis, @hhamud, @miohtama, @omahs and @unparalleled-js