Releases: ApeWorX/ape
Ape 0.7.1
Changes
- fix: use helpful
IndexError
inAccountManager.__getitem__()
when conversion error occurs @antazoey (#1798) - fix: issue where
@network_option
withConnectedProviderCommand
used different networks. @antazoey (#1796) - fix: issue preventing transferring a value of
0
. @antazoey (#1795) - fix: typing in method
from_rvs()
andfrom_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
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 toape_ethereum.provider
.ape.utils.Aborts
is no longer a thing! Please useape.exceptions.Abort
now.- rename
ProviderAPI.get_storage_at()
toProviderAPI.get_storage
. ape.cli.get_user_selected_account()
is now deprecated. Please useape.cli.select_account
.branch
field on GitHub dependencies was officially removed. Please useref
instead.- Any ProviderAPI's that use block_identifier or
state_overrides
now mus beblock_id
orstate
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 toContractDataError
and is now a base class toTransactionError
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 thecompile
config. It wasn't used! - Config
compiler.ignore_files
was removed. Use configcompile.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()
andfrom_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
withpackaging.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 ofurllib3
module version upper boundary requirement [APE-1610] @popraf (#1771)
Special thanks to: @NotPeopling2day, @antazoey, @popraf and @z80dev
Ape 0.6.27
Changes
- fix: allow
None
values inEthereum.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
Changes
- fix: do not fetch history if there is no history in poll_blocks() @mikeshultz (#1744)
- fix: enum values were raw [APE-1551] @antazoey (#1745)
- fix: run console under providercontext [APE-1529] @z80dev (#1733)
- fix: empty plugins sections repr [APE-1538] @antazoey (#1738)
- fix: use getattribute [APE-1539] @antazoey (#1739)
Special thanks to: @antazoey, @mikeshultz and @z80dev
Ape 0.6.25
Changes
- fix: handle PackageName regression from ethpm-types [APE-1537] @antazoey (#1735)
- docs: fix plugin install command [APE-1519] @alex-damjanovic (#1731)
- feat:
is_local
helper properties onNetworkAPI
[APE-1518] @antazoey (#1730) - docs: typos [APE-1513] @omahs (#1725)
Special thanks to: @alex-damjanovic, @antazoey and @omahs
Ape 0.6.24
Ape 0.6.23
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 toKeyfileAccount
class [APE-1466] @Aviksaikat (#1702)
Special thanks to: @Aviksaikat, @antazoey and @z80dev
Ape 0.6.22
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
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
toContractLog
[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
Changes
- refactor: move web3 loggers and fix test failures [APE-1404] @antazoey (#1670)
- test: caplog fixes [APE-1396] @antazoey (#1665)
- fix: persistent fork issue when calling
networks.fork()
[APE-938] @antazoey (#1664) - refactor: corrections from network investigation [APE-1394] @antazoey (#1663)
- fix: deleting proxies [APE-1346] @antazoey (#1653)
- fix: log decoding issues and missing events [APE-1289] @antazoey (#1662)
- fix: structs in logs [APE-1222] @antazoey (#1659)
- feat: improve txn not found [APE-1348] @antazoey (#1661)
- fix: config overrides [APE-1197] @antazoey (#1656)
- fix: GitHub client retry on rate limiting [APE-1198] @antazoey (#1658)
- fix: pytest trace shows wrong lineno [APE-1388] @antazoey (#1657)
- fix(deps): update pin of ethpm-types [APE-1383] @fubuloubu (#1654)
- fix:
ape pm list
fixes [APE-1347] @antazoey (#1652) - feat: added
remove
option forape pm
[APE-1315] @Aviksaikat (#1621) - feat: option to load contracts using
ABIs
[APE-1334] @Aviksaikat (#1635) - feat: decode bytes32 symbols in traces [APE-1368] @banteg (#1650)
- feat: network base fee multiplier is now configurable [APE-1273] @antazoey (#1588)
- fix: don't compile
contracts/.build
[APE-1358] @antazoey (#1645) - fix: issue where pretty trace tree included two sets of parentheses [APE-1364] @antazoey (#1648)
- fix: shanghai support in local geth [APE-1355] @antazoey (#1644)
- docs: remove gitcoin link from funding [APE-1360] @fubuloubu (#1646)
- fix(pytest): fix double yield problem in isolation fixture [APE-1353] @antazoey (#1642)
- fix: false-positives bug when making mock-log assertions [APE-1352] @antazoey (#1641)
- fix: issue where couldn't specify multiple versions when installing plugins [APE-1345] @antazoey (#1639)
- fix: index error in trace handler [APE-1342] @antazoey (#1638)
- refactor: simplify the adding of middleware [APE-1340] @antazoey (#1637)
Special thanks to: @Aviksaikat, @antazoey, @banteg and @fubuloubu