Skip to content

Releases: ApeWorX/ape

Ape 0.7.1

22 Dec 15:29
b8dba14
Compare
Choose a tag to compare

Changes

  • fix: use helpful IndexError in AccountManager.__getitem__() when conversion error occurs @antazoey (#1798)
  • fix: issue where @network_option with ConnectedProviderCommand used different networks. @antazoey (#1796)
  • fix: issue preventing transferring a value of 0. @antazoey (#1795)
  • fix: typing in method from_rvs() and from_vrs() in signature classes @antazoey (#1793)
  • feat: Allow converting AddressAPI to address-int @antazoey (#1794)
  • test: prove that AddressType works @antazoey (#1791)
  • fix: network choice parsing and re-parsing fix @antazoey (#1792)
  • feat: allow adhoc IPC connect and show a better error for unsupported schemes @antazoey (#1789)
  • fix: issue where would not get a transaction error when expected @antazoey (#1788)
  • fix: issue where ape_console_extras file loaded with wrong namespace @antazoey (#1787)
  • fix: issue where user got wrong warnings when updating plugins @antazoey (#1786)

Special thanks to: @antazoey

Ape 0.7.0

18 Dec 23:35
9e9c5c8
Compare
Choose a tag to compare

Breaking Changes

fix!: Ape now uses the same HD Path as other testing environments @antazoey (#1774)
Meaning, Ape's test account keypairs are exactly the same the default Anvil and Hardhat nodes.
This makes it much easier to connect to already-running nodes!

feat!: network customization and tooling improvements @antazoey (#1764)
Now, when using the @network_option, you can receive classes for each ecosystem, network, and provider based on what you ask for in your command implementation. Also, NetworkBoundCommand is deprecated. Please switch to ConnectedProviderCommand, which works the same except has the new network behavior and the @network_option is no required because it will happen automatically.

feat: from_rsv() and from_vrs() Signature class methods [APE-1600] @antazoey (#1765)
Now, it is easier to go from encoded bytes signature to MessageSignature class using the new class methods.
This helps out with plugins like ape-safe which return signatures in the API in encoded format and Ape and other tools require the object format.

refactor!: a collection of breaking changes [APE-1417] @antazoey (#1677)
A bunch of breaking changes. Pay attention!

  • ape.api.providers.Web3Provider was moved to ape_ethereum.provider.
  • ape.utils.Aborts is no longer a thing! Please use ape.exceptions.Abort now.
  • rename ProviderAPI.get_storage_at() to ProviderAPI.get_storage.
  • ape.cli.get_user_selected_account() is now deprecated. Please use ape.cli.select_account.
  • branch field on GitHub dependencies was officially removed. Please use ref instead.
  • Any ProviderAPI's that use block_identifier or state_overrides now mus be block_id or state and are official kwargs in each API method.
  • ape.project.compilers_with_missing_ext is now a Set instead of List since the data type makes more sense.
  • ContractError was renamed to ContractDataError and is now a base class to TransactionError because most APIs were treating it as such anyway.
  • The problematic ListTupleConverter was deleted.
  • Delete gas tracking from the ReportManager - plugins should be using the test runner reference now, same as coverage.
  • Unused evm_version was deleted from the compile config. It wasn't used!
  • Config compiler.ignore_files was removed. Use config compile.exclude instead.

refactor!: pydantic v2 upgrade [APE-1413] @antazoey (#1674)

  • Ape and all its dependencies now work fully on and require Pydantic version 2.

feat!: rewrite poll methods with new API [APE-1411] @z80dev (#1673)

  • Polling-based methods (blocks and events) were moved to the ProviderAPI and the ChainManager was refactored to use these methods to open the door for providers to define better options for polling.

refactor!: accept any msg type via AccountAPI.sign_message [APE-1305] @z80dev (#1614)
Account plugins now officially can decide what types of messages they can sign. This greatly increases use-cases with EIP-712 and the myriad of account APIs in various plugins.

feat!: update cached compilers improvements [APE-1500] @antazoey (#1721)
Now, Ape core offers more utilities for updating the cached manifest, including compiler-info needed for contract verification.
Ape core also now handles when Compiler plugins place compiler artifacts in the cache directory when performing verification.

Changes

  • feat: from_rsv() and from_vrs() Signature class methods [APE-1600] @antazoey (#1765)
  • fix: issue with interactive scripts would not be connected to right provider @antazoey (#1781)
  • refactor: replace usage of semantic_version.NpmSpec with packaging.version.SpecifierSet @NotPeopling2day (#1782)
  • docs: fix a myriad of docs issues for 0.7 @antazoey (#1784)
  • chore: upgrade eip712 and ETH dependencies [APE-1617] @antazoey (#1773)
  • chore: update setup.py, removal of urllib3 module version upper boundary requirement [APE-1610] @popraf (#1771)

Special thanks to: @NotPeopling2day, @antazoey, @popraf and @z80dev

Ape 0.6.27

07 Dec 20:18
271a272
Compare
Choose a tag to compare

Changes

  • fix: allow None values in Ethereum.create_transaction() [APE-1590] @antazoey (#1758)
  • feat: improve SignableMessage repr [APE-1587] @antazoey (#1757)
  • fix: issue where KeyfileAccount would not stay unlocked [APE-1586] @antazoey (#1755)
  • fix: added checks to remove , from the RPC URI endpoint [APE-1582] @Aviksaikat (#1753)
  • fix: add compiler data to manifest output [APE-1573] @z80dev (#1746)

Special thanks to: @Aviksaikat, @antazoey and @z80dev

Ape 0.6.26

22 Nov 16:37
caab108
Compare
Choose a tag to compare

Changes

Special thanks to: @antazoey, @mikeshultz and @z80dev

Ape 0.6.25

13 Nov 18:34
5dfc733
Compare
Choose a tag to compare

Changes

Special thanks to: @alex-damjanovic, @antazoey and @omahs

Ape 0.6.24

03 Nov 23:40
253a94f
Compare
Choose a tag to compare
  • fix: issue where used the wrong network in fork tools @antazoey [#1724]
  • feat: allowing alias-based argument click overrides @antazoey [#1723]

Thanks @antazoey

Ape 0.6.23

03 Nov 12:57
bea735d
Compare
Choose a tag to compare

Changes

  • fix: issue where arrays were missing in logs [APE-1501] @z80dev and @antazoey (#1722)
  • fix: issue where ape wouldn't recompile changed contracts [APE-1498] @antazoey (#1720)
  • fix: more warning when missing compiler plugins [APE-1491] @antazoey (#1717)
  • feat: support global NPM dependencies [APE-1490] @antazoey (#1716)
  • feat: upstream provider and forked network tools [APE-1485] @antazoey (#1714)
  • feat: account list filter in Ape alias CLI options @antazoey (#1713)
  • fix: remove API secrets from web3.py loggers [APE-1486] @antazoey (#1715)
  • docs: wrap up link fixes [APE-1482] @antazoey (#1711)
  • feat: allow custom cli ctx obj types [APE-1483] @antazoey (#1712)
  • docs: document ProviderContextManager [APE-618] @antazoey (#1710)
  • feat: better error when pytest option collision [APE-1479] @antazoey (#1708)
  • fix: issue when switching providers when disconnecting [APE-1460] @antazoey (#1700)
  • feat: adhoc code compile [APE-1476] @antazoey (#1707)
  • feat: adhoc compiler settings [APE-1474] @antazoey (#1705)
  • fix: issue where network choices were missing [APE-1475] @antazoey (#1706)
  • feat: handle when local dependency is already a manifest [APE-1397] @antazoey (#1666)
  • feat: public_key method added to KeyfileAccount class [APE-1466] @Aviksaikat (#1702)

Special thanks to: @Aviksaikat, @antazoey and @z80dev

Ape 0.6.22

10 Oct 22:02
4c5b853
Compare
Choose a tag to compare

Changes

  • feat: use OTS namespace for get contract creation receipt in ape-geth [APE-1453] @antazoey (#1697)
  • chore: bump ethpmtypes [APE-1454] @antazoey (#1698)
  • fix: multiple ABI encoding and decoding bug fixes @antazoey (#1694)
  • fix: an indefinite compile issue [APE-1450] @antazoey (#1696)
  • fix: unnecessary modification of build artifact @antazoey (#1695)
  • fix: issue where subclass receipts were not recognized in transaction error [APE-1445] @antazoey (#1693)
  • fix: better network errors when choice not found [APE-1441] @antazoey (#1691)
  • fix: sort providers in ape networks list [APE-1442] @antazoey (#1692)
  • feat: sort networks in list command [APE-1439] @antazoey (#1690)
  • fix: hyphenated ecosystem names [APE-1437] @antazoey (#1689)

Special thanks to: @antazoey

Ape 0.6.21

02 Oct 18:22
536d591
Compare
Choose a tag to compare

Changes

  • fix: plugins CLI list, install, and uninstall issues [APE-1427] @antazoey (#1684)
  • fix: ape plugins list failed when no plugins installed. [APE-1425] @antazoey (#1683)
  • perf: lazily load plugins [APE-1422] @antazoey (#1681)
  • fix: issue with custom errors on estimate gas and static fee txns [APE-1421] @antazoey (#1680)
  • feat: support pydantic v2 (as v1 imports) [APE-1374] @banteg (#1651)
  • feat(query): add .timestamp to ContractLog [APE-1391] @fubuloubu (#1660)
  • fix: issue where could not decode array of addresses [APE-1420] @antazoey (#1679)
  • chore: remove unused type: ignore comments and other small items [APE-1419] @antazoey (#1678)
  • refactor: BaseModel.__getattr__ logic sharing [APE-1415] @antazoey (#1675)
  • refactor: move transaction-convert methods to ConversionManager [APE-1416] @antazoey (#1676)

Special thanks to: @antazoey, @banteg and @fubuloubu

Ape 0.6.20

20 Sep 22:15
d3ba065
Compare
Choose a tag to compare

Changes

Special thanks to: @Aviksaikat, @antazoey, @banteg and @fubuloubu