160 KiB
160 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
This changelog is automatically generated by git-cliff. Please do not manually edit this file.
[Unreleased]
Bug Fixes
- Accept ethlive as a chain name (#2268)
- Fix missing ident # (#2267)
- Support null result (#2249)
- Ensure flatten target is part of graph (#2256)
- Dont poll stream again if done (#2245)
- Docsrs builds final (#2235)
- Docs.rs build (#2221)
- Change windows target ABI (#2230)
- Init guard in noncemanager (#2227)
- Parse_log in public interface (#2228)
- Allow MIT-0, allow CC0-1.0 exceptions (#2212)
- Udeps (#2215)
- Set miner.etherbase in clique mode (#2210)
- Examples (#2207)
- Properly parse genesis alloc storage (#2205)
- I256 docs (#2187)
- Builtin trait derives (#2170)
- Block FromStr implementation (#2155)
- Use event name from abi attribute (#2144)
- Report all errors during parsing (#2149)
- Examples (#2153)
- Test hive genesis parsing (#2145)
- Process all imports even input files (#2136)
- Fix autodetection edge case (#2099)
- Add cfg to IntoFuture preventing Send (#2086)
- Use middleware associated err type (#2093)
- Add Send bound to return type of JsonRpcClient::request (#2072)
- Add getrandom with js feature for wasm (#2076)
- Add missing pub for tuple structs (#2080)
- Ensure urls have trailing / (#2069)
- Fix geth --init temp dir race condition (#2068)
- Default to Ascii for windows / Utf8 otherwise (#2060)
- Add missing ir option (#2055)
- Add back mod util
- Fixed issue#2004 parsing solc verison with trailing newlines (#2005)
- Failing can_autodetect_dirs solc test (#1895) (#2052)
- Ensure correct ABI in
From
impl (#2036) - Revert to old version (#2048)
- Signer test (#2028)
- Tests (#2015)
- Doctests (#2007)
- Use full path of i256 (#2000)
- Doc typo regarding Multicall::call_array (#1985)
- Deprecated gas oracle (#1986)
- Gwei wei wrong u256 constant (#1992)
- Don't override user-set 1559 attributes (#1980)
- Reexport SourceLocation (#1971)
- Reexport some ast types again (#1968)
- Add setter for MultiBindings' rustfmt (#1948)
- Source code serde (#1962)
- Ethers-etherscan solc feature (#1965)
- Rebase to master for onbjerg's ast (#1943)
- Add
openssl
andrustls
feature flags in ethers-middleware (#1961) - Oracles, tests (#1944)
- Bump in .clippy.toml and add a comment in root Cargo.toml (#1945)
- Decode to correctly in Transaction (#1946)
- Allow 16 calls in multicall (#1934)
- Set
GethInstance
p2p_port in spawn (#1933) - Remove
OpCode
enum and updateVMOperation
'sop
field type (#1904) - Always set p2p port in non-dev mode (#1919)
- Make version detection infallible (#1916)
- Multicall decode error (#1907)
- Rm wrong brackets (#1914)
- Txpool_inspect unable to parse contract creations (#1905)
Depedencies
- Bump and use workspace dependencies (#2222)
- Bump crypto deps (#2260)
- Bump enr from 0.7.0 to 0.8.0 (#2255)
- Bump futures-executor from 0.3.26 to 0.3.27 (#2250)
- Bump semver from 1.0.16 to 1.0.17 (#2251)
- Bump proc-macro2 from 1.0.51 to 1.0.52 (#2252)
- Bump futures-util from 0.3.26 to 0.3.27 (#2253)
- Bump chrono from 0.4.23 to 0.4.24 (#2254)
- Bump coins-bip39 to 0.8.1 and coins-bip32 to 0.8.0 (#2246)
- Bump rayon from 1.6.1 to 1.7.0 (#2233)
- Bump serde_path_to_error from 0.1.9 to 0.1.10 (#2232)
- Bump thiserror from 1.0.38 to 1.0.39 (#2234)
- Improve CI jobs and tests (#2189)
- Build without deps (#2196)
- Bump tempfile from 3.3.0 to 3.4.0 (#2200)
- Bump auto_impl from 0.5.0 to 1.0.1 (#2201)
- Bump syn from 1.0.108 to 1.0.109 (#2202)
- Bump num_enum from 0.5.10 to 0.5.11 (#2184)
- Bump svm (#2185)
- Bump syn from 1.0.107 to 1.0.108 (#2178)
- Bump svm-rs (#2179)
- Make order of types in shared_types deterministic (#2169)
- Bump num_enum from 0.5.9 to 0.5.10 (#2168)
- Bump http from 0.2.8 to 0.2.9 (#2167)
- Bump once_cell from 1.17.0 to 1.17.1 (#2156)
- Bump coins-ledger from 0.7.0 to 0.7.1 (#2139)
- Bump fs_extra from 1.2.0 to 1.3.0 (#2118)
- Bump proc-macro2 from 1.0.50 to 1.0.51 (#2117)
- Bump wasm-bindgen-test from 0.3.33 to 0.3.34 (#2111)
- Bump solc test 0.8.18 (#2113)
- Bump wasm-bindgen-futures from 0.4.33 to 0.4.34 (#2108)
- Bump web-sys from 0.3.60 to 0.3.61 (#2106)
- Bump svm crates (#2110)
- Bump cargo_metadata from 0.15.2 to 0.15.3 (#2101)
- Bump bytes from 1.3.0 to 1.4.0 (#2100)
- Bump ws_stream_wasm from 0.7.3 to 0.7.4 (#2092)
- Bump futures-executor from 0.3.25 to 0.3.26 (#2096)
- Bump futures-util from 0.3.25 to 0.3.26 (#2097)
- Bump reqwest from 0.11.13 to 0.11.14 (#2065)
- Bump num_enum from 0.5.7 to 0.5.9 (#2073)
- Bump proc-macro2 from 1.0.49 to 1.0.50 (#2061)
- Bump solang-parser 0.2.1 (#2054)
- Bump svm-rs (#2051)
- Bump criterion from 0.3.6 to 0.4.0 (#2050)
- Bump regex from 1.7.0 to 1.7.1 (#2034)
- Bump num_enum from 0.5.7 to 0.5.8 (#2035)
- Bump bzip2 from 0.4.3 to 0.4.4 (#2040)
- Bump base64 from 0.20.0 to 0.21.0 (#2030)
- Bump glob from 0.3.0 to 0.3.1 (#2031)
- Bump once_cell from 1.16.0 to 1.17.0 (#1987)
- Examples (#1940)
- Bump serde_path_to_error from 0.1.8 to 0.1.9 (#1969)
- Bump proc-macro2 from 1.0.47 to 1.0.49 (#1951)
- Bump thiserror from 1.0.37 to 1.0.38 (#1950)
- Bump semver from 1.0.14 to 1.0.16 (#1952)
- Bump syn from 1.0.105 to 1.0.107 (#1953)
- Bump serial_test from 0.9.0 to 0.10.0 (#1954)
- Bump num_cpus from 1.14.0 to 1.15.0 (#1959)
- Bump base64 from 0.13.1 to 0.20.0 (#1935)
- Bump rayon from 1.6.0 to 1.6.1 (#1936)
- Bump futures-locks from 0.7.0 to 0.7.1 (#1930)
- Bump syn from 1.0.104 to 1.0.105 (#1918)
- Bump tokio-tungstenite from 0.17.2 to 0.18.0 (#1908)
- Bump chrono from 0.4.20 to 0.4.23 (#1900)
- Bump syn from 1.0.103 to 1.0.104 (#1901)
Documentation
- Fix broken links, update documentation (#2203)
- Update providers book and examples (#2098)
- Rename
event_derives
toderives
(#2018) - Mock-provider (#2011)
- Add rw/quorum provider
- Mdbook (#1994)
- Fixed typos in rw client docs (#1957)
- Update MRSV to 1.64 (#1926)
Features
- Roundtrip serde + to/from strings (#2270)
- Support empty events (#2263)
- Add implementations to Opcode (#2243)
- Add Boba chain (#2236)
- Deseralize other fields on tx receipts (#2209)
- Contract revert trait (#2182)
- Add filecoin chains (#2177)
- Add is_empty fn for structs of Options (#2195)
- Use binaries.soliditylang.org (#2198)
- Improve I256 implementation (#2180)
- Improve Multicall result handling (#2164)
- Add debug for geth default api (#2140)
- Add basic event filtering example (#2137)
- Extend model checker setting field (#2123)
- Add support for Geth built-in tracer and config (#2121)
- Allow signature to recover typed_data payloads (#2120)
- Packed encoding (#2104)
- Add DerefMut for OtherFields (#2109)
- Add support for js tracer to geth trace, fix different return types (#2064)
- More type parsing (#2095)
- Add convenience impl From Log (#2087)
- Expose genesis and private key in Geth (#2091)
- Support emitting bytecode as extra files (#2074)
- Add helper functions to access solidity types (#2081)
- Allow
ClientBuilder
to createClient
without API key (#2067) - Enable Clique mode (#2063)
- Switch shanghaiBlock to shanghaiTime (#2049)
- Use u64 and add more chains to multicall (#2042)
- Allow parsing of private key that has
0x
prefix (#2037) - Return multicall pending transaction (#2044)
- Add
strum::EnumIter
andstrum::EnumCount
toChain
(#2043) - Use prettyplease (#2027)
- Support parsing bytecode from evm object (#2024)
- Add arbitrum nova api and chain id 42170 (#2020)
- Support personal account apis (#2009)
- Add ability to take geth stderr (#2010)
- Add mining related apis (#2008)
- Windows ipc provider (named pipe) (#1976)
- Improve error on case mismatch (#1998)
- Improve
determine_ethers_crates
(#1988) - Expose all genesis related structs (#1975)
- Debug_traceCall (#1949)
- Chain macros and impls (#1958)
- Adds bscscan as abi source (#1955)
- Make geth executable configurable (#1947)
- Add_calls and call_array for multicall (#1941)
- Add infura error code to retry detection (#1921)
- Impl Serialize for Chain (#1917)
- Providererror conversion to middleware error (#1920)
- Add a subset of admin namespace (#1880)
- Chain impls and refactoring (#1909)
- Check for serde error with missing req id (#1910)
Miscellaneous Tasks
- Make clippy happy (#2264)
- Allow clippy false positive (#2259)
- Add more cache traces (#2248)
- Add some docs and impl debug (#2219)
- Replace rpc urls with generic ones (#2199)
- Move etherscan api key env var matching to Chain enum (#2204)
- Top-up testnet wallets
- Added canto network (#2171)
- Add .git-blame-ignore-revs (#2157)
- Remove unused generic
- Use arbiscan urls for arbitrum goerli (#2127)
- Add etherscan page not found error (#2126)
- Fix bare urls in abigen (#2133)
- Add convenient from impls (#2112)
- Add cloudflare captcha error (#2116)
- Fix custom provider example
- Fix ci
- Fix clippy (#2059)
- Do not expose util module
- Derive default for enums
- Clippy (#2032)
- Alias&export error as ParseChainError (#2022)
- Update all rust editions to 2021 (#1979)
- Clippy (#1990)
- Clippy
- Gitignore .pre-commit-config.yaml (#1973)
- Rm broken pre commit yaml (#1972)
- Make clippy happy (#1923)
- Generate selector as hex in docs (#1924)
Other
- Fix logical errors in doc comments for is_negative and is_zero (#2218)
- Solang-parser 0.2.3 (#2229)
- Reconnection & Request Reissuance (#2181)
- // to https:// on Celo link (#2193)
- Workaround for https://github.com/LedgerHQ/app-ethereum/issues/409 (#2192)
- Organize ethers-providers (#2159)
- Include deployed bytecode in abigen output (#2163)
- Use Option for CliqueConfig fields (#2162)
- Prestwich/event no lifetime (#2105)
- Extend model checker options (#2147)
- Add human readable ABI example in documentation (#2148)
- Allow upper case acronyms lint (#2128)
- Use pascal casing for type names in structs generated by abigen (#2130)
- Solang-parser 0.2.2 (#2135)
- Refactor factories to use
Borrow<M>
(#2103) - Book - Providers Chapter (#2023)
- Remove EthAbiType derive generated unwrap (#2056)
- Book - Middleware Chapter (#2033)
- Fix deserializing contract creation NormalTransaction objects (#2029)
- Mx - CI - mdbook addons - admonition(callouts) and mermaid (code driven diagrams) with example implementation (#2025)
- Disable native-tls on rusoto (#2021)
- Fix nonce manager test (#2014)
- Remove current nonce load when initialized (#2013)
- Abigen adopt hardhat generated bytecode (#2012)
- Build/deploy book
- Delete book.yml
- Mdbook (#2003)
- Sighash on the inner/updated tx object (#1977)
- Added
from_bytes
forWallet
type (#1983) - (docs): add clippy command (#1967)
- Init devenv, gitignore .nlsp-settings (#1942)
- Added new checkbox to the PR checklist (#1937)
- Added new line were missing (#1928)
- Fix Dead Link to abigen test in README (#1929)
- Change awsSigner to own kmsclient (#1922)
- Middleware library (#1912)
Performance
Refactor
- Keep and use parsed spans (#2247)
- Derives, struct expansion (#2160)
- Derive procedural macros (#2152)
- Solidity types expansion (#2131)
- Make contract abstract over Borrow (#2082)
- Inline docs (#2090)
- Add bytes::Bytes static methods, refactor struct declaration (#2089)
- Source (#2016)
- Abigen, ContractBindings (#2019)
Styling
- Fix fmt from master
- Expose contract revert errors in the ContractError struct (#2172)
- Run rustfmt (#2176)
- Fmt
- Fmt
- Make ContractCall IntoFuture implement Send (#2083)
- Fix to round-trip serialize and deserialize optional address (#2057)
- Use sepolia (#1989)
- Add celo chain (#1932)
- Handle panic on Ws error (#1915)
- Feat middleware stack builder (#1890)
Testing
- Simplify test cleanup (#2220)
- Add parse pk test (#2194)
- Disable signer integration tests temporarily
[1.0.2] - 2022-11-27
Bug Fixes
- Format_units overflow (#1894)
- Close example subscriptions after 2 emitted items (#1892)
- Handle non existing Cargo.toml edge case (#1886)
- Mock ethers mod layout (#1884)
- Make compatible with older rust versions (#1868)
- Generated crate not using generated version (#1852)
- Updated logs event filtering for examples with new syntax (#1861)
- Better retry timing (#1855)
- Improve overloaded param diff matching (#1853)
- Disable futures-locks tokio feature (#1854)
- Broken regex (#1851)
- Stop decoding gas twice for 2930 txs (#1850)
- Failing CI (#1847)
- Transaction type in TxpoolContent (#1844)
- Rustdoc errors (#1808)
- Get_logs_paginated fetches past latest block (#1818)
- Fix Build issue (#1819)
Depedencies
- Bump env_logger from 0.9.3 to 0.10.0 (#1891)
- Bump cargo_metadata from 0.15.1 to 0.15.2 (#1878)
- Bump serde-aux from 4.1.0 to 4.1.2 (#1874)
- Bump rayon from 1.5.3 to 1.6.0 (#1875)
- Bump bytes from 1.2.1 to 1.3.0 (#1879)
- Bump trezor, fix clippy (#1871)
- Bump open-fastrlp
- Bump ethabi from 17.2.0 to 18.0.0 (#1865)
- Bump reqwest from 0.11.12 to 0.11.13 (#1866)
- Bump serde-aux from 4.0.0 to 4.1.0 (#1846)
- Bump cargo_metadata from 0.15.0 to 0.15.1 (#1806)
- Bump regex from 1.6.0 to 1.7.0 (#1841)
- Bump env_logger from 0.9.1 to 0.9.3 (#1842)
- Bump once_cell from 1.15.0 to 1.16.0 (#1817)
- Bump rlp from 0.5.1 to 0.5.2 (#1805)
- Bump base64 from 0.13.0 to 0.13.1 (#1804)
- Bump num_cpus from 1.13.1 to 1.14.0 (#1831)
Features
- Retry client wasm support (#1877)
- Instantiate an event builder without a contract instance (#1882)
- Add another rate limit retry check (#1881)
- Warnings as errors (#1838)
- Add TraceError enum (#1814)
Miscellaneous Tasks
- Pin env-logger
- Make clippy happy (#1888)
- Add missing ParseUnit impls (#1885)
- Make clippy happy (#1856)
- Always use sync sources reading (#1667)
- Rename xdai gnosis (#1809)
- Update readme
Other
- Get gas price in USD using a Chainlink oracle (#1872)
- Use cwd manifest (#1869)
- Rust already exists on the platform - update it instead (#1864)
- I256 parse support (#1863)
- Add
op
field toVMOperation
to determine executed opcode (#1858) - I256 asr doc (#1860)
- Add Arithmetic Shift Left operation for I256. Minor update to the ASR tests to include coverage for a shift of 0, and move to 'I256::minus_one' over 'I256::from(-1i8)' syntax (#1452)
- Revert "fix: get_logs_paginated fetches past latest block (#1818)" (#1845)
- Move Event into scope for rustdoc Fixes #1676 (#1787)
- Add doc CI (#1813)
- Minor typo (#1794)
- #1822 (#1823)
- Enhance signer middleware to automatically switch legacy (#1832)
- #1836 (#1837)
- Impl
IntoFuture
forContractCall
(#1826) - Adding chiado support (#1811)
Styling
[1.0] - 2022-10-25
Bug Fixes
- Emit empty node vec (#1793)
- Handle absolute paths properly on conflict (#1784)
- Impl default manually for mock project (#1779)
- Remove trailing test,script markers (#1776)
- Skip json abi formatting (#1777)
- RawAbi and Abi (#1757)
- Support eip712 domain chain ids as string (#1756)
- Use empty bytecode as default instead unlinked (#1743)
- Transaction object rlp decoding (#1740)
- Use correct tx field const (#1735)
- Legacy signed rlp decoding (#1733)
- Cyclic deps (#1730)
- Relax Middleware trait bound for getters (#1728)
- WASM example (#1719)
- Don't default to "latest" block ID for
eth_estimateGas
(#1657) - GethTrace shouldn't have 0x prefix for return_value (#1705)
- Remove default include paths (#1691)
- Geth structlog memory (#1690)
- Geth trace types (#1682)
- Add derives, impls for Units (#1683)
- Legacy transaction rlp decoding (#1672)
- Via-ir should be optional (#1664)
- Incorrect encoding on TransactionReceipt (#1661)
- Emit null transaction fields (#1654)
- Only derive default of no arrays len > 32 (#1653)
- Use correct model for metadata libraries (#1648)
- Set chain id explicitly (#1647)
- Dont skip null to field (#1631)
- QuorumProvider zero-parameter json Value handling (#1613)
- Handle provider error correctly (#1630)
- Clarify Geth trace structs (#1626)
- Consider case sensitive conflicting artifact paths (#1625)
- Extend eth_syncing response type and serde (#1624)
- Use cache context when determining artifact files (#1621)
- Support formatting large units (#1608)
- Sanitize absolute paths from etherscan (#1603)
- Deserialize a Filter request with
topics == null
(#1604) - Validate address resolver (#1605)
- Ensure base-path is not include-path (#1596)
- Strip .sol suffix (#1583)
- Typo on README.md (#1571)
- Use correct str Regex (#1566)
- Use correct moonbeam (#1552)
- Convert source paths on windows (#1540)
- Resolve output struct types correctly (#1546)
- Add missing moonbase fromstr (#1531)
- Support stringified numbers in response (#1524)
- Use fully qualified path for Result (#1527)
- Make compatible with edition2018 (#1522)
- Deserialize sealfields with default (#1520)
- Abigen feature required for bindings (#1508)
- Make StorageLayout json parsing lossless (#1515)
- Only run tracing example if env var is set (#1517)
- Use correct model for txpool_content endpoint (#1501)
- Contract names can be reserve words (#1498)
- Improve argument parsing (#1485)
- Parse constructor as function (#1479)
- Handle zst params in retry provider correctly (#1481)
- Fix unused warning (#1477)
- Serialize metadata as raw string (#1474)
- Use path slash for remapping display on windows (#1454)
- Apply base path to model checker contracts (#1437)
- Remove 0x bytecode object prefix for CompilerOutput (#1424)
- Remove redundant index adjustment for many overloads (#1419)
- Add missing chain id match arms (#1411)
- Use abi signature attribute if provided (#1409)
- Use signer chain when tx is None (#1377)
- Net_version returns string (#1376)
- ChainId 31337 corresponds to Anvil/Hardhat not Dev
- Fix fields for
UserDoc
andDevDoc
(#1355) Transfered
-> `Transferred* (#1357)- Emit empty vec for empty artifacts (#1345)
- Invalidate cache on unresolve error (#1337)
- Wrong unit for gas_price (ether -> gwei) (#1316)
- Improve remappings autodetection (#1335)
- Remove compile_exact restriction (#1329)
- Non-snake-case modules out of order (#1331)
- Use decimal crate for parsing units (#1330)
- Emit empty bytecode objects for standalone sol files (#1327)
- Improve contract metadata bindings (#1326)
- Clippy warnings on solidity bindings (#1319)
- Aws eip712 does not use eip155 (#1309)
- Use wallet chainid for tx signing (#1308)
- Correctly serialize TxPoolInspectSummary (#1305)
- Remove viaIR for older versions (#1304)
- Flatten random statement order (#1292)
- Support constructor user docs (#1283)
- Serialize eth_getStorageAt position param as quantity (#1281)
- Follow symlinks in source files (#1277)
- Purge obsolete cached artifacts (#1273)
- On pending block
miner
field is alwaysnull
(#1272) - Unify name of supported chains with strum (#1249)
- Output methodIdentifiers by default (#1266)
- All request ids start at 1 (#1265)
- Add
RuntimeOrHandle
& fix solc blocking installation (#1260) - Make ast node ids optional (#1254)
- Filter out empty bytecode (#1248)
- Removed Cronos mainnet beta from
is_legacy
(#1246) - Respect auto detection in additional compile functions (#1226)
- Flatten import aliases (#1192)
- Make scoped reporter work in parallel (#1214)
- Ensure std json sources are unique (#1210)
- Pass tx with chain by ref
- Fixed typo when determining to token address (#1208)
- Remapping aware libraries (#1190)
- Use correct empty output selection (#1185)
- Add to and from into the transaction receipt to follow spec (#1184)
- Decode
from
field for typed transactions (#1180) - When compiler-out metadata is empty and there's no
internalType
(#1182) - Only write cache file if build was successful (#1177)
- Proper fantom api urls (#1170)
- Fix extra spacing (#1149)
- Support display for bytes (#1148)
- Normalize block if block = None (#1146)
- Compute content hashes first (#1142)
- Encode absent tx access_list correctly (#1137)
- Strip root path from remappings and sources for standard json (#1136)
- Correct etherscan url address, remove double quotes in solc error (#1130)
- Eth_feehistory reward is optional (#1127)
- Bump up svm (#1129)
- Fix deploy tx RLP decoding (#1124)
- Only notify about unresolved import once (#1125)
- Correctly check cache expiry (#1114)
- Sanitize compilerinput based on version (#1111)
- Extend sparse mode to linked references (#1107)
- Broken Etherscan URL Construction (#1100)
- Aws signer does not throw error on unnormalized sig (#1099)
- Bump svm-rs for lockfile + checksum adjustments
- Clippy before nightly ring regression
- Change abiarraytype trait bounds for tuple (#1079)
- Bundle new svm-solc feature (#1071)
- Remove debug print (#1067)
- Eip1559 gas price should be max_fee_per_gas (#1062)
- Check against ethers internal crate names (#1060)
- More sophisticated crate detection (#1056)
- Only modify files that are required to compile the project (#1050)
- Use lowercase when comparing paths (#1041)
- Adjust breaking changes and detect failures in ci (#1040)
- Don't evict cache entries with no artifacts (#1035)
- Trim constructor args (#1024)
- Use correct artifact api (#1019)
- Skip artifacts check for files without artifacts (#1018)
- Feature-gate TestProvider.ws fn
- Bump svm-rs for mac m1 solc installs
- Export
ethers_providers::IpcError
andethers_providers::QuorumError
(#1012) - Use svm-rs with fixed solc checksums
- Use correct types (#1004)
- Respect offline mode (#1002)
- Fix cache and allowed paths bug (#998)
- Remove unnecessary indent (#999)
- Safe ident field names (#989)
- Bump solang and adjust breaking change
- Propogate gas limit with access list (#901)
- Safe ident underscore followed by numeric (#970)
- Support functions with different casing (#972)
- Dont generate empty shared_types module (#965)
- Make abigen work with ethers-solc and abiencoderv2 (#952)
- Handle lossy ethabi generated abi structs (#950)
- Consistent serde for linked and unlinked bytecode (#948)
- Flatten import loc (#946)
- Mimic hardhat import resolver when in node_modules (#928)
- Off by one error finding version intersection (#930)
- Add serde json to created crate
- Do not panic when run on non-cargo projects (#918)
- Url params naming (#911)
- Correctly deserialize eip1186 proof responses
- Add address field (#899)
- Resolver and remapping auto detection bugs (#893)
- Bump svm-rs to fix race condition on same version installs of solc
- Support remapping autodetection edge case (#888)
- Bump svm-rs to support arm solc
- PendingTransaction::log() missing deref (#886)
- Prevent chain_id from serializing for requests (#879)
- Use nodesiter when printing tree (#878)
- Bump ethers-solc version (#864)
- Bump solang (#861)
- Doc test for dev_rpc (#857)
- Adjust Ganache for new cli output (#851)
- Can parse secondary source locations (#849)
- Flatten replacement target location (#846)
- Use already instantiated tokio runtime if exists (#811)
- Make http crate required (#836)
- Duplicate contracts segments (#832)
- Propagate deserialization errors upstream + infura quickfix (#827)
- Derive serde Ser and De for log metadata (#823)
- Flatten duplicates (#813)
- Take installer lock before installing (#801)
- Traverse nodes iteratively (#800)
- Check for uint8 params in human readable types (#789)
- Invalid cached artifacts (#783)
- Allow cyclic imports (#766)
- Add timeout and error detection for releases lookup (#759)
- Contract with abi test (#757)
- Methods is object (#734)
- Make evm bytecode optional (#735)
- Handle more remapping edge cases (#719)
- Prefere dapptools style remappings (#713)
- Use lib for parsing paths correctly in windows
- Use lib for parsing paths correctly in windows (#712)
- Auto-enable asm when supported (x86/x64 and not msvc) (#710)
- Configure rustls & openssl via feature flag (#703)
- Rollback yanked futures versions
- Parse_units was generating an error on some values because of extra decimal places added round to prevent error (#701)
- Contract creation on trezor (#695)
- Avoid futures-util yanked err (#693)
- Do not panic on invalid units conversion (#691)
- Remove assert to check cache format (#689)
- Fix handling empty tx parameters (#686)
- Bump svm-rs for windows support (#685)
- Exclude asm for msvc (#679)
- Format_units return was truncating the decimal places if there were leading zeros (#675)
- Skip 0x prefix for deserialize bytes decoding (#671)
- Naming and default impl (#665)
- Add allow paths (#667)
- Nonce too low for different providers (#655)
- Specify home-dep as non-wasm instead of x86-only (#645)
- Ignore the websocket response when the request has been cancelled. (#641)
- Make ethers-wasm workspace member (#642)
- Check all import styles (#634)
- Source parsing for local paths (#633)
- Conditional http support (#632)
- Use CARGO_MANIFEST_DIR as root for relative paths in abigen! (#631)
- Remove changed artifacts from the cache (#630)
- Method deduplication (#619)
- Do not overwrite existing cache (#629)
- Remove redundant cache read (#627)
- Pass partial artifact cache to project compiler output (#623)
- Enable sha2 asm for checksum speed (#626)
- [breaking] Ambiguity unit8[] and bytes (#613)
Depedencies
- Revert "chore: disable dev deps for release"
- Disable dev deps for release
- Bump futures-executor from 0.3.24 to 0.3.25 (#1795)
- Bump futures-util from 0.3.24 to 0.3.25 (#1796)
- Bump syn from 1.0.102 to 1.0.103 (#1799)
- Bump getrandom from 0.2.7 to 0.2.8 (#1800)
- Bump proc-macro2 from 1.0.46 to 1.0.47 (#1788)
- Bump home from 0.5.3 to 0.5.4 (#1781)
- Bump tracing-subscriber from 0.3.15 to 0.3.16 (#1765)
- Bump dunce from 1.0.2 to 1.0.3 (#1767)
- Bump ansi-regex in /examples/ethers-wasm (#1771)
- Bump tracing from 0.1.36 to 0.1.37 (#1766)
- Bump syn from 1.0.101 to 1.0.102 (#1764)
- Bump serde-wasm-bindgen from 0.4.3 to 0.4.5 (#1761)
- Bump proc-macro2 from 1.0.44 to 1.0.46 (#1753)
- Bump k256 from 0.11.5 to 0.11.6 (#1749)
- Bump thiserror from 1.0.36 to 1.0.37 (#1748)
- Bump syn from 1.0.100 to 1.0.101 (#1745)
- Bump thiserror from 1.0.35 to 1.0.36 (#1739)
- Bump proc-macro2 from 1.0.43 to 1.0.44 (#1738)
- Bump md-5 from 0.10.4 to 0.10.5 (#1726)
- Bump reqwest from 0.11.11 to 0.11.12 (#1724)
- Bump once_cell from 1.14.0 to 1.15.0 (#1725)
- Bump env_logger from 0.9.0 to 0.9.1 (#1718)
- Bump syn from 1.0.99 to 1.0.100 (#1717)
- Bump solang-parser from 0.1.17 to 0.1.18 (#1716)
- Bump svm-rs 0.2.18 (#1715)
- Trim eip712 deps (#1714)
- Bump semver from 1.0.13 to 1.0.14 (#1708)
- Bump unicode-xid from 0.2.3 to 0.2.4 (#1707)
- Bump k256 from 0.11.4 to 0.11.5 (#1701)
- Bump sha2 from 0.10.5 to 0.10.6 (#1709)
- Bump wasm-bindgen-test from 0.3.32 to 0.3.33 (#1700)
- Bump wasm-bindgen-futures from 0.4.32 to 0.4.33 (#1693)
- Bump web-sys from 0.3.59 to 0.3.60 (#1694)
- Bump thiserror from 1.0.34 to 1.0.35 (#1697)
- Bump max solc 0.8.17 (#1679)
- Bump url from 2.3.0 to 2.3.1 (#1680)
- Bump convert_case from 0.5.0 to 0.6.0 (#1681)
- Bump url from 2.2.2 to 2.3.0 (#1678)
- Bump serde-aux from 3.1.0 to 4.0.0 (#1673)
- Bump thiserror from 1.0.33 to 1.0.34 (#1668)
- Bump once_cell from 1.13.1 to 1.14.0 (#1669)
- Bump md-5 from 0.10.2 to 0.10.4 (#1670)
- Bump sha2 from 0.10.3 to 0.10.5 (#1671)
- Bump pretty_assertions from 1.2.1 to 1.3.0 (#1652)
- Bump sha2 from 0.10.2 to 0.10.3 (#1651)
- Bump thiserror from 1.0.32 to 1.0.33 (#1650)
- Bump md-5 from 0.10.1 to 0.10.2 (#1649)
- Bump futures-executor from 0.3.23 to 0.3.24 (#1646)
- Bump eth-keystore from 0.4.2 to 0.5.0 (#1645)
- Bump futures-util from 0.3.23 to 0.3.24 (#1644)
- Bump eth-keystore (#1643)
- Bump once_cell from 1.13.0 to 1.13.1 (#1606)
- Bump ethabi (#1601)
- Bump k256 from 0.11.3 to 0.11.4 (#1599)
- Bump futures-util from 0.3.21 to 0.3.23 (#1598)
- Bump futures-executor from 0.3.21 to 0.3.23 (#1597)
- Bump serial_test from 0.8.0 to 0.9.0 (#1587)
- Bump rust_decimal from 1.26.0 to 1.26.1 (#1574)
- Bump path-slash from 0.2.0 to 0.2.1 (#1575)
- Bump chrono from 0.4.19 to 0.4.20 (#1568)
- Bump rust_decimal from 1.25.0 to 1.26.0 (#1569)
- Bump proc-macro2 from 1.0.42 to 1.0.43 (#1560)
- Bump semver from 1.0.12 to 1.0.13 (#1561)
- Bump syn from 1.0.98 to 1.0.99 (#1562)
- Bump thiserror from 1.0.31 to 1.0.32 (#1563)
- Bump elliptic-curve from 0.12.2 to 0.12.3 (#1555)
- Bump yubihsm from 0.41.0-pre to 0.41.0 (#1556)
- Bump generic-array from 0.14.5 to 0.14.6 (#1557)
- Bump bytes from 1.2.0 to 1.2.1 (#1542)
- Bump tracing from 0.1.35 to 0.1.36 (#1543)
- Bump eth-keystore from 0.4.1 to 0.4.2 (#1544)
- Add back dev-deps (#1532)
- Disable dev deps
- Bump wasm-bindgen-test from 0.3.31 to 0.3.32 (#1518)
- Bump svm-builds (#1521)
- Bump fastrlp from 0.1.2 to 0.1.3 (#1505)
- Bump proc-macro2 from 1.0.40 to 1.0.42 (#1513)
- Bump wasm-bindgen-futures from 0.4.31 to 0.4.32 (#1512)
- Bump web-sys from 0.3.58 to 0.3.59 (#1511)
- Bump tracing-subscriber from 0.3.14 to 0.3.15 (#1504)
- Bump tracing-subscriber from 0.3.11 to 0.3.14 (#1448)
- Bump terser from 4.8.0 to 4.8.1 in /examples/ethers-wasm (#1489)
- Bump bytes from 1.1.0 to 1.2.0 (#1488)
- Bump tokio-tungstenite from 0.17.1 to 0.17.2 (#1478)
- Bump svm-rs-builds (#1476)
- Bump criterion from 0.3.5 to 0.3.6 (#1466)
- Bump crypto deps (#1465)
- Bump paths-slash (#1462)
- Bump pin-project to silence new clippy lints (#1464)
- Bump regex from 1.5.6 to 1.6.0 (#1461)
- Bump once_cell from 1.12.0 to 1.13.0 (#1453)
- Solang 0.1.16 (#1446)
- Implement fastrlp traits for Bytes (#1443)
- Bump coins-ledger to 0.6.1 (#1442)
- Bump semver from 1.0.11 to 1.0.12 (#1441)
- Bump eventsource in /examples/ethers-wasm (#1334)
- Bump serde-aux from 3.0.1 to 3.1.0 (#1432)
- Bump semver from 1.0.10 to 1.0.11 (#1431)
- Bump path-slash from 0.1.4 to 0.1.5 (#1430)
- Bump cargo_metadata from 0.14.2 to 0.15.0 (#1410)
- Bump serial_test from 0.7.0 to 0.8.0 (#1418)
- Bump trezor client 0.0.6 (#1401)
- Bump wasm-bindgen-test from 0.3.30 to 0.3.31 (#1391)
- Bump syn from 1.0.96 to 1.0.98 (#1392)
- Bump proc-macro2 from 1.0.39 to 1.0.40 (#1393)
- Bump serial_test from 0.6.0 to 0.7.0 (#1349)
- Bump wasm-bindgen-futures from 0.4.30 to 0.4.31 (#1378)
- Bump web-sys from 0.3.57 to 0.3.58 (#1379)
- Bump wasm-bindgen from 0.2.80 to 0.2.81 (#1380)
- Bump ethabi version (#1381)
- Revert "release: disable dev deps"
- Disable dev deps
- Bump reqwest from 0.11.10 to 0.11.11 (#1374)
- Bump getrandom from 0.2.6 to 0.2.7 (#1373)
- Bump strum from 0.24.0 to 0.24.1 (#1370)
- Bump rust_decimal from 1.24.0 to 1.25.0 (#1375)
- Bump semver from 1.0.9 to 1.0.10 (#1366)
- Bump solang_parser 0.1.14 (#1369)
- Bump tracing from 0.1.34 to 0.1.35 (#1364)
- Bump http from 0.2.7 to 0.2.8 (#1352)
- Bump crossbeam-utils from 0.8.6 to 0.8.8 (#1351)
- Make ethers-solc dev dep (#1358)
- Bump syn from 1.0.95 to 1.0.96 (#1342)
- Bump auto_impl from 0.5.0 to 1.0.1 (#1341)
- Bump serde_derive from 1.0.136 to 1.0.137 (#1333)
- Make tokio required dependency (#1322)
- Bump once_cell from 1.11.0 to 1.12.0 (#1306)
- Bump regex from 1.5.5 to 1.5.6 (#1300)
- Bump once_cell from 1.10.0 to 1.11.0 (#1288)
- Bump syn from 1.0.94 to 1.0.95 (#1280)
- Bump latest solc release (#1282)
- Bump proc-macro2 from 1.0.38 to 1.0.39 (#1275)
- Bump rayon from 1.5.2 to 1.5.3 (#1269)
- Bump tokio-util from 0.7.1 to 0.7.2 (#1270)
- Bump syn from 1.0.93 to 1.0.94 (#1271)
- Bump syn from 1.0.92 to 1.0.93 (#1244)
- Bump unicode-xid from 0.2.2 to 0.2.3 (#1243)
- Bump proc-macro2 from 1.0.37 to 1.0.38 (#1237)
- Bump spki from 0.5.4 to 0.6.0 (#1238)
- Bump semver from 1.0.7 to 1.0.9 (#1211)
- Bump rusoto-kms/core
- Bump async from 2.6.3 to 2.6.4 in /examples/ethers-wasm (#1196)
- Bump thiserror from 1.0.30 to 1.0.31 (#1206)
- Bump syn from 1.0.91 to 1.0.92 (#1194)
- Bump http from 0.2.6 to 0.2.7 (#1195)
- Bump rayon from 1.5.1 to 1.5.2 (#1145)
- Bump tracing from 0.1.33 to 0.1.34 (#1147)
- Bump solang-parser from 0.1.11 to 0.1.12 (#1152)
- Bump wasm-bindgen-test from 0.3.29 to 0.3.30 (#1133)
- Bump tracing from 0.1.32 to 0.1.33 (#1132)
- Bump tracing-subscriber from 0.3.10 to 0.3.11 (#1131)
- Bump web-sys from 0.3.56 to 0.3.57 (#1122)
- Bump wasm-bindgen from 0.2.79 to 0.2.80 (#1121)
- Bump wasm-bindgen-futures from 0.4.29 to 0.4.30 (#1120)
- Bump svm-rs for updated timeout
- Bump proc-macro2 from 1.0.36 to 1.0.37 (#1117)
- Bump syn from 1.0.90 to 1.0.91 (#1113)
- Bump eyre from 0.6.7 to 0.6.8 (#1110)
- Bump pretty_assertions from 1.2.0 to 1.2.1 (#1105)
- Bump tracing-subscriber from 0.3.9 to 0.3.10 (#1106)
- Bump solang-parser 0.1.11 (#1103)
- Bump getrandom from 0.2.5 to 0.2.6 (#1090)
- Bump syn from 1.0.89 to 1.0.90 (#1091)
- Bump tokio-util from 0.7.0 to 0.7.1 (#1089)
- Bump semver from 1.0.6 to 1.0.7 (#1085)
- Bump minimist from 1.2.5 to 1.2.6 in /examples/ethers-wasm (#1083)
- Add some deny lints (#1064)
- Bump quote from 1.0.15 to 1.0.16 (#1061)
- Bump k256 from 0.10.3 to 0.10.4 (#1037)
- Bump syn from 1.0.88 to 1.0.89 (#1046)
- Bump reqwest from 0.11.9 to 0.11.10 (#1031)
- Bump k256 from 0.10.2 to 0.10.3 (#1032)
- Bump syn from 1.0.86 to 1.0.88 (#1033)
- Bump svm-rs and use returned install path (#1034)
- Bump pretty_assertions from 1.1.0 to 1.2.0 (#1022)
- Bump svm-rs
- Bump tracing from 0.1.31 to 0.1.32 (#1001)
- Bump svm-rs for macos aarch releases
- Bump regex from 1.5.4 to 1.5.5 (#997)
- Bump solang (#992)
- Bump once_cell from 1.9.0 to 1.10.0 (#987)
- Bump ethabi to 17.0
- Bump ethabi and trezor signing
- Bump tokio-tungstenite from 0.16.1 to 0.17.1 (#945)
- Bump eyre from 0.6.6 to 0.6.7 (#973)
- Bump url-parse in /examples/ethers-wasm (#974)
- Bump getrandom from 0.2.4 to 0.2.5 (#955)
- Bump semver from 1.0.5 to 1.0.6 (#944)
- Bump serial_test from 0.5.1 to 0.6.0 (#938)
- Bump url-parse from 1.5.3 to 1.5.7 in /examples/ethers-wasm (#932)
- Bump md-5 from 0.10.0 to 0.10.1 (#922)
- Bump tracing from 0.1.30 to 0.1.31 (#923)
- Bump ethabi from
321a651
toe161e68
(#925) - Bump tracing-subscriber from 0.3.8 to 0.3.9 (#924)
- Bump cargo_metadata from 0.14.1 to 0.14.2 (#920)
- Bump eth-keystore from 0.4.0 to 0.4.1 (#913)
- Bump rand from 0.8.4 to 0.8.5 (#914)
- Bump follow-redirects in /examples/ethers-wasm (#912)
- Chore/update eth keystore (#910)
- Bump solang-parser from
f850719
tob286b63
(#896) - Bump tokio-util from 0.6.9 to 0.7.0 (#895)
- Bump ethabi from
6f18e11
to321a651
(#891) - Bump solang-parser from
f3e8f6f
tof850719
(#881) - Bump futures-util from 0.3.19 to 0.3.21 (#872)
- Bump futures-executor from 0.3.19 to 0.3.21 (#873)
- Bump semver from 1.0.4 to 1.0.5 (#874)
- Bump tracing-subscriber from 0.3.7 to 0.3.8 (#875)
- Rewrite compiler passes and cache change detection (#802)
- Bump tracing from 0.1.29 to 0.1.30 (#862)
- Bump ethabi from
c622438
to6f18e11
(#853) - Bump pretty_assertions from 1.0.0 to 1.1.0 (#854)
- Bump svm-rs
- Bump elliptic-curve from 0.11.10 to 0.11.12 (#845)
- Bump deps
- Bump elliptic-curve from 0.11.9 to 0.11.10 (#837)
- Bump tracing-subscriber from 0.3.6 to 0.3.7 (#830)
- Bump quote from 1.0.14 to 1.0.15 (#826)
- Bump wasm-bindgen-test from 0.3.28 to 0.3.29 (#815)
- Bump syn from 1.0.85 to 1.0.86 (#816)
- Bump web-sys from 0.3.55 to 0.3.56 (#817)
- Bump wasm-bindgen from 0.2.78 to 0.2.79 (#818)
- Bump wasm-bindgen-futures from 0.4.28 to 0.4.29 (#819)
- Bump ethabi from
5781964
toc622438
(#812) - Bump k256 from 0.10.1 to 0.10.2 (#804)
- Bump elliptic-curve from 0.11.7 to 0.11.9 (#803)
- Bump elliptic-curve from 0.11.6 to 0.11.7 (#793)
- Bump tracing-subscriber from 0.3.5 to 0.3.6 (#794)
- Bump follow-redirects in /examples/ethers-wasm (#795)
- Bump solang (#796)
- Bump getrandom from 0.2.3 to 0.2.4 (#790)
- Bump ethabi master (#787)
- Bump tempfile from 3.2.0 to 3.3.0 (#780)
- Bump reqwest from 0.11.8 to 0.11.9 (#785)
- Bump ecdsa from 0.13.3 to 0.13.4 (#767)
- Bump syn from 1.0.84 to 1.0.85 (#764)
- Bump k256 from 0.10.0 to 0.10.1 (#762)
- Bump spki from 0.5.3 to 0.5.4 (#763)
- Bump generic-array from 0.14.4 to 0.14.5 (#758)
- Bump tracing-subscriber from 0.3.4 to 0.3.5 (#752)
- Bump quote from 1.0.10 to 1.0.14 (#746)
- Bump proc-macro2 from 1.0.35 to 1.0.36 (#744)
- Bump convert_case from 0.4.0 to 0.5.0 (#741)
- Bump proc-macro2 from 1.0.34 to 1.0.35 (#743)
- Bump syn from 1.0.83 to 1.0.84 (#742)
- Bump tracing-subscriber from 0.3.3 to 0.3.4 (#730)
- Bump syn from 1.0.82 to 1.0.83 (#726)
- Bump num_cpus from 1.13.0 to 1.13.1 (#722)
- Bump futures-util from 0.3.17 to 0.3.19 (#717)
- Bump futures-executor from 0.3.17 to 0.3.19 (#718)
- Bump latest solc version (#720)
- Bump solc everywhere (#672)
- Bump solc 0.8.10 (#670)
- Bump md-5 from 0.9.1 to 0.10.0 (#660)
- Bump elliptic-curve from 0.11.1 to 0.11.5 (#653)
- Bump proc-macro2 from 1.0.32 to 1.0.33 (#654)
- Bump reqwest from 0.11.6 to 0.11.7 (#636)
- Bump tracing-subscriber from 0.3.2 to 0.3.3 (#635)
- Bump syn from 1.0.81 to 1.0.82 (#620)
- Bump futures-executor from 0.3.17 to 0.3.18 (#615)
Documentation
- Fix typo annonated to annotated (#1790)
- Add MSRV (#1712)
- Add comment about safety of u8 -> u64 cast in signature (#1704)
- Some additional retry docs (#1537)
- Fix broken doc links (#1497)
- Improve EventStream docs (#1450)
- Complete unfinished sentence in block comment
- Improve abigen type docs (#953)
- More docs and tracing (#651)
Features
- Re-export H128 (#1786)
- Added more ethereum units (#1760)
- Parse SourceCode field (#1747)
- Add versioned artifacts helper (#1752)
- Add arbitrum-goerli (#1734)
- Add utility methods to NameOrAddress (#1720)
- Double anvil startup time (#1702)
- Detect requested backoff (#1711)
- Retry infura's header not found (#1706)
- Add blocked by cloudflare error (#1703)
- Subsitute structs in event bindings (#1674)
- Add extra Multicall helper methods (#1666)
- Improved debug format for Bytes (#1658)
- Add support for Optimism Goerli (#1641)
- Update Multicall to Multicall3 (#1584)
- Add uint8 type (#1639)
- More derives for geth trace structs (#1637)
- Descriptive deserialization errors (#1633)
- Support retrying connection errors (#1629)
- Add events function to set multiple event filter (#1607)
- Add invalid api key error type (#1600)
- Resolve absolute imports in libraries (#1590)
- Add missing helper functions (#1592)
- Added PartialEq to TraceType (#1586)
- Added Deserialize to TraceType (#1585)
- Add etherscan urls function (#1582)
- Add helper to checkout temp projects (#1581)
- Add contract filter (#1564)
- Add ProviderExt trait (#1559)
- Add missing str abi trait impls (#1554)
- Expose url for http (#1550)
- Add set_interval helper function (#1551)
- Add lib inclusion function (#1547)
- Add EthError trait and derive (#1549)
- Add support for EIP-712 typed data (#1510)
- Erc1155 token transfer events endpoint (#1503)
- Bump abi/token tuple limit (#1506)
- Initial commit (#1469)
- Handle conflicting artifacts properly (#1491)
- Allow event builder to stream with meta (#1483)
- Add Sepolia endpoint (#1467)
- Add --fork-block-number setter for anvil bindings (#1468)
- Configurable build-info output dir (#1433)
- Impl Ord for receipt (#1434)
- Add remove_contract utility function (#1436)
- Add more contract iter helper functions (#1438)
- Include opcodes in output (#1435)
- Capture unknown fields (#1423)
- Add human readable function parser (#1416)
- More sensible backoff calc (#1413)
- Add Contract Info structs (#1407)
- Feat!(solc): add additional remove functions (#1406)
- Add evmos support (#1398)
- Add eth filter deserialization and matching (#1389)
- Emit build info files if configured (#1338)
- Emit additional raw metadata field (#1365)
- Add option to create ws provider with auth (#1363)
- Add script/ to project paths (#1359)
- Add anvil hardhat chain id (#1356)
- Source map getters for deployed bytecode (#1348)
- Add display impl for BlockNumber (#1346)
- Additional chain apis (#1343)
- Add
RetryClient
(#1302) - Adds cargo audit workflow (#1318)
- Use relative paths and --base-path option (#1317)
- Impl AbiEncode, AbiDecode for I256 (#1311)
- Add
as_*_mut
methods onTypedTransaction
(#1310) - Make cache entries relative to root dir (#1307)
- Add paginated logs (#1285)
- Opt out of checking cargo.toml for consistency (#1301)
- Install solc io reporter in basic reporter (#1295)
- Emit artifacts for standalone source files (#1296)
- Add tx builder methods (#1289)
- Include id in artifact (#1284)
- Add helpers to unwrap
TypedTransaction
(#1278) - Added Cronos testnet (#1276)
- Load previous logs before subscribing (#1264)
- Add eip-1898 deserialize for BlockId (#1257)
- Add strip and join functions to sources and contracts (#1252)
- Add source map access functions (#1253)
- Remaining AST nodes (#1201)
- Add human readable tokenizer and parser (#1234)
- Lookup solc build metadata (#1242)
- Support overloaded events (#1233)
- Store source files with their solc version (#1231)
- Add moonbeam urls (#1232)
- Add missing options for configurable artifact (#1223)
- Pending transaction retries repeatedly before assuming dropped (#1221)
- Support logging multiple files via io logger (#1216)
- Add ClientBuilder type (#1193)
- Add block conversion helpers (#1186)
- Relax
Clone
requirements whenArc<M>
is used (#1183) - Blocknative gas oracle (#1175)
- Add minimal ast bindings (#1167)
- Function debug data in extra output (#1165)
- Abi as an extra file (#1166)
- Add standardjson compiler input type (#1169)
- Make stream mod public (#1160)
- Add debug info bindings (#1161)
- Add anvil bindings (#1164)
- Accept different middlewares for contract connect (#1159)
- Impl rlp encodable for log and receipt (#1153)
- Add RwClient (#1016)
- Add deserialize support for ValueorArray (#1138)
- Implemented signed transaction RLP decoding (#1096)
- Add standard-json-input (#1126)
- Strip experimental pragma from all imported contracts (#1116)
- Add caching (#1108)
- Add bytecode hash variants (#1104)
- Pass compile time to reporter (#1098)
- Include project paths in cache (#1097)
- Add dev as a chain (#1093)
- Add
ArtifactId::identifier()
(#1087) - Add TryFrom String reference for http provider (#1084)
- Include source file ast in artifact (#1081)
- Ability to get artifacts + sources (#1080)
- Add helper for calculating max cost of tx (#1070)
- Use svm-builds instead of fetching http releases list (#1063)
- Add abi object deserializer and generate deploy function (#1030)
- Add hex encode and decode functions (#1059)
- More artifact trait functions (#1057)
- Support for solc io json output (#1043)
- Add viaIR option (#1049)
- Add gas_target and next_block_base_fee fns a… (#1047)
- Support customized output selection pruning (#1039)
- Optimize output selection in cache mode (#1029)
- Add mock project generator (#1011)
- Add solc install error report (#1027)
- Set from on tx before calling eth_call, eth_createAccessList, eth_estimateGas (#1021)
- Rotate infura keys for ws
- Rotating infura keys (#1017)
- Yul compilation (#994)
- Remapping helper functions (#1003)
- Add scoped reporter (#1000)
- Source tree support (#990)
- Impl FromStr (#991)
- Add contract interface helpers (#982)
- Add helper for getting number of abigen'd contracts
- Implement Default trait (#976)
- Expose pending tx_hash with a getter (#968)
- Account endpoints (#939)
- Support shared type during multiabigen (#959)
- Add contract code not verified check (#962)
- Add helper functions to compile standalone files (#931)
- Add tree printer implementation (#933)
- Add Cronos and Cronos testnet (#926)
- Add configurable Artifact type (#907)
- Add getter to
ProjectCompileOutput
(#908) - Report on unresolved imports (#905)
- Use svm blocking feature (#904)
- Make to_string and from_str inverse functions (#903)
- More options for output selection (#898)
- Better metadata support (#894)
- Add Reporter type (#883)
- Log methods for PendingTransaction (#884)
- Implement Artifact for serde_json (#885)
- Add
send_with_receipt
toDeployer
(#865) - Add arbitrum support (#869)
- Add optimizer details (#868)
- Compiler pipeline improvements (#866)
- Impl codec for Bytes (#856)
- Add BSC networks to the is_legacy helper (#843)
- Is_legacy helper (#835)
- Add BSC and BSC testnet (#831)
- Flatten (#774)
- Relative remappings (#786)
- Enum values + TryFrom (#782)
- Expose svm_compile
- Change abi_str to abi from contract in for hardhat abi (#740)
- Add more contract utility types and functions (#765)
- Add source map parser (#658)
- Add dependency graph implementation (#750)
- Add path auto detection (#761)
- Add FromStr impl for Chain (#756)
- Cache session on filesystem (#747)
- Search json recursively (#733)
- Add EventStream::select to combine multiple event streams (#725)
- Add MultiAbigen to generate multiple contract bindings (#724)
- Add provided derives for call and event enums (#721)
- Add EthAbiCodec proc macro (#704)
- Revamped remapping auto detect (#706)
- New ethabi for error types (#700)
- Set nonce in fill transaction (#687)
- Trezor support (#663)
- Add workspace utils (#678)
- Add hardhat artifact support (#677)
- Extend Artifact trait (#673)
- Use structs for outputs (#664)
- Add support for library linking (#656)
- Add support for compiling solc in parallel (#652)
- Support overloaded functions with different casing (#650)
- Add clean up function (#649)
- Improve solc detection and reduce install effort (#648)
- Use AbiType when parsing Function abi signature fails at compile time (#647)
- Impl Default for eip2718::TypedTransaction (#646)
- Add moonbeam support (#644)
- Implement gas endpoints and use in oracle middleware (#621)
- Implement hex display for Bytes (#624)
- Verify checksum before project compilation (#614)
Miscellaneous Tasks
- Reexport BigEndianHash (#1789)
- Disable remove_liq example
- Fix clippy
- Make clippy happy (#1778)
- Create artifacts folder on output (#1772)
- Replace rinkeby with goerli (#1768)
- Rm unwrap (#1744)
- Format polygon-mumbai as mumbai (#1737)
- Support fuji alias (#1723)
- Add another artifacts helper type (#1722)
- Add cloudflare test case (#1721)
- Log response data on error (#1698)
- Inherit stderr (#1689)
- Make clippy happy (#1688)
- Remove unused import
- Add abigen to default features (#1684)
- Export abi related types (#1677)
- Replace colorized with yansi (#1662)
- Make clippy happy (#1659)
- Match standalone mumbai for chain (#1656)
- Update svm (#1627)
- Add some traces (#1622)
- Improve file not found error (#1611)
- Make proof response fields pub (#1612)
- Improve io error for bad symlinks (#1594)
- Make clippy happy (#1595)
- Add set cache helper (#1589)
- Update svm and svm-builds (#1588)
- Update svm crates (#1579)
- Skip none trace error (#1577)
- Update max solc version 0.8.16 (#1578)
- Add aurora etherscan endpoints (#1572)
- Improve remapping errors (#1570)
- Reexport filter (#1565)
- Make clippy happy (#1525)
- Add Anvil::at and anvil example (#1486)
- Make clippy happy (#1475)
- Make ethers-solc optional (#1463)
- Export quorum's JsonRpcClientWrapper (#1439)
- Add gas_mut function (#1427)
- Convenience impls for Bytes (#1421)
- Update svm-rs (#1415)
- Make ethers-etherscan compile for wasm32 (#1403)
- Silence wasm warnings (#1404)
- Add moonbase chain id (#1397)
- Improve checksum error message (#1394)
- Update svm-rs and svm-rs-builds (#1395)
- Update svm-rs and svm-rs-builds (#1387)
- Add traces to retry provider (#1382)
- Add blocknumber convenience impls (#1368)
- Reexport ethabi module (#1362)
- Remove redundant call (#1320)
- Fix wasm warnings (#1312)
- Log error on ws unexpected close
- Fix newest nightly lints (#1298)
- Make clippy happy (#1230)
- Update moonbeam url (#1228)
- Update VerifyArgs (#1212)
- Fix typo in provider readme
- Remove async feature requirement (#1181)
- Include error code in diagnostic (#1171)
- Derive default for log (#1168)
- Silence unused warnings (#1162)
- Update svm (#1150)
- Add as number helper function (#1139)
- Make ipfs the default bytecodehash again (#1128)
- Expose some helpers (#1118)
- Add examples with required features (#1109)
- Add some solc checksum traces (#1088)
- Add .sol extension when missing (#1077)
- Update svm (#1074)
- Update svm-rs and svm-rs-builds (#1069)
- Return error for unverified contracts (#1065)
- Decrease tx count in nonce manager test (#1053)
- Do not pin eyre patch version
- Improve error message when bindings out of sync (#1025)
- Provide remappings on unresolved import message (#1026)
- Go back to upstream svm
- Make on_solc_success a no-op to avoid duplicate logs
- Add rate limit message (#971)
- Cargo --fix (#921)
- Fix all warnings (#890)
- Rm no longer valid todo (#870)
- Lints
- Add info messages to solc install/compile (#838)
- Remove broken celo test
- Also rm cache dir if empty (#822)
- Add more convenience functions (#810)
- Add ord derive (#807)
- Update ethabi
- Silence unused ws macro (#788)
- Fix lints / solc test
- Use new acc for rinkeby integration tests
- More verbose traces (#738)
- Remove old webpki dep from reqwest
- Disable auto-enabling of asm
- Add display impl for PathsConfig (#708)
- Use new remapping detection (#707)
- Make clippy happy (#705)
- Remove unused patch
- Allow unused http_get (#674)
- Makes etherscan::Result pub(crate) (#638)
- Update changelog
Other
- Add safe and finalized tag to BlockNumber (#1792)
- Add option to disable CBOR metadata in bytecode. (#1782)
- Disable remove_liq and revert to always use rinkeby
- Fix Transaction decoding (#1773)
- Re-enable remove_liq example and replace key w goerli key
- Drop anvil stdout (#1759)
- Return
Arc<M>
instead of&M
(#1731) - Omit (#1686)
- Serialize viaIR setting (#1655)
- Explicitly handle all chains on match (#1635)
- Derive debug, clone and copy (#1634)
- Fix 'get_transactions' response. (#1632)
- More gas oracles (#1251)
- Don't auto-generate an AccessList when sending/filling a tx (#1619)
- Export LogQueryError (#1615)
- Fix bug in basic lib and basic contract generation (#1580)
- Derive Clone on Wallet (#1573)
- Take provider interval on PendingTransaction (#1558)
- Solang parser 0.1.17 (#1548)
- Rm pinned nightly (#1541)
- Add a simple constructor for Wallet (#1530)
- MBlockerge branch 'master' of github.com:gakonst/ethers-rs
- Add immutableReferences output selector (#1523)
- Update README to document common feature flags for providers (websock… (#1493)
- Set URL to binaries.soliditylang.org (#1490)
- For fix test code, Added morden to chainid as a Mock-like value. (#1472)
- Fix build info default directory (#1458)
- Impl fastrlp traits for AccessList (#1456)
- Generate structs for the return data of abigen-erated contracts (#1440)
- Impl fastrlp traits for Signature (#1444)
- TypedTransaction methods into builder style (#1414)
- Use H64 for Block Nonce (#1396)
- Add call builder and eth_call state overrides (#1340)
- Make abigen-ed modules pub (#1332)
get_paginated_logs
fixes and refactoring (#1328)- Add Arithmetic Shift Right operation for I256 (#1324)
- Remove liquidity example (#1290)
- Return instead of ignore error (#1287)
- Relax thiserror minor version constraint (#1294)
- Update & lock solang (#1256)
- Add Block::time (#1250)
- Impl TryFrom for Chain (#1247)
- Robust gas oracles (#1222)
- Make Ganache Startup Timeout Configurable. (#1224)
- Update document to enable ws & rustls / openssl if user wants to use websockets (#1197)
- Adds From trait to ValueOrArray (#1200)
- Ledger should have correct signature v value for chains with large chain ID (#1204)
- Use EIP155 for all signers with empty transaction
chain_id
(#1198) - Update event.rs (#1173)
- Adjust flatten format (#1172)
- Cleanup of links and requirements in README (#1163)
- Pub deployer can modify defaults (#1156)
- Tx optional from (#1075)
- Show how to retrieve block metadata (#1058)
- Temporarily disable examples
- Utterly nitpicking but i was annoyed (#1038)
- Fix websocket connection request (#1005)
- Enforce commutativity of reverse resolution (#996)
- Handle case where the data from the resolver is empty (#963)
- Add missing chains into parse method (#941)
- Artifact ids (#882)
- Add Ftm multicall addresses (#927)
- Change visibility of the function request in Provider to public so one can implement Middleware's with custom call to the node (#919)
- Remove
limit
onFilter
(#917) - Expose New
call_raw
API that permits MultiCalls without Detokenization (#915) - Hide Infura API key from docs (#863)
- Add dese default_for_null (#860)
- Flatten before verification (#828)
- Replace anyhow with eyre in examples (#859)
- Add eth_syncing RPC (#848)
- Write outputs to file, if selected (#847)
- Implement RLP decoding for transactions (#805)
- Fix overflow and panic in priority fee estimation (#839)
- Write
CompactContractBytecode
instead ofCompactContract
(#833) - Add authorization for http and websocket (#829)
- Revert "Remove entire cache folder, not just contents (#820)" (#821)
- Revert "Remove entire cache folder, not just contents (#820)"
- Remove entire cache folder, not just contents (#820)
- Fantom chain (#806)
- Add abigen uniswapv2 example (#798)
- Implement trace_callMany (#792)
- Uniswap weth addrbook (#779)
- Implement
is_empty
forAllowedLibPaths
(#777) - Ignore SPDX and contract size for tests (#775)
- Add
ProjectCompileOutput::has_compiler_warnings
(#773) - Check for warnings after compilation (#772)
- Remove unofficial testnet dai (#771)
- Add WETH to address book (#770)
- Ethers-addressbook crate (#769)
- Update README links (#754)
- [draft] Add Optimism & OptimismKovan chains (#737)
- Reexport multiabigen (#731)
- Add fn settings on CompilerInput (#729)
- Mark TransactionFut as Send (#723)
- Add deploy_tokens to ContractFactory (#699)
- Test on windows targets (#682)
- Serialize block count as quantity 2 (#669)
- Add support for polygonscan and snowtrace for abigen (#666)
- Serialize
eth_feeHistory
block count asQUANTITY
(#668) - Add buffer for file reading (#662)
- Add dev-rpc middleware (#640)
- Add tracing (#628)
- Fix parse units (#597)
Performance
- Read artifacts in parallel (#1665)
- Get response as bytes (#1536)
- Add iterator function for finding sol files (#1480)
- Replace wake_by_ref with loop (#1428)
- Only fallback to old feeHistory request on error (#1399)
- Short circuit remapping detection on recursive symlink (#1225)
Refactor
- Improve error message for unresolved imports (#1545)
- Use expanded EthEvent impl (#1499)
- Unify find/remove api (#1449)
- Replace ethabi::Reader (#1417)
- Refactors ipc transport internals (#1174)
- Replace anyhow with eyre (#858)
- MultiAbigen rework (#852)
- More temp project features (#778)
- Remappings detection rewrite (#732)
- Move fill_transaction impl to provider rather than default (#697)
- Move FeeHistory to core types (#688)
- Add new io error with path info (#680)
Styling
- All (#1751)
- Fmt
- Seal extension traits (#1553)
- Fmt (#1539)
- Add support to Aurora network (#1535)
- Update broken test and use it module for ethers-contract (#1502)
- Fmt
- Fmt
- Add basic solc model checker options (#1258)
- Ensure a consistent chain ID between a signer and provider in SignerMiddleware (#1095)
- Fix IPC handling of jsonrpc errors (#1123)
- Fmt
- Split artifacts mod and create contract and bytecode mods (#1052)
- Create decode_tx_input.rs (#1054)
- Add capture test for curly bracket imports (#956)
- Add ENS avatar and TXT records resolution (#889)
- Fixes a parsing issue of EIP712 chain_id (chain_id = 80001 parsed as chain_id = 0x80001) (#892)
- Add pub fn initialize_nonce in NonceMiddleManager (#840)
- Fmt
- Make it work with latest solang (#776)
- Make it work with latest solang (#776)
- Cargo fmt
- Update Cryptography crates (#617)
- Use svm global_version if it exists and no SOLC_PATH is set (#709)
- Fix handling of
nonce too low
error (#643)
Testing
- Add create_parent_dir_all_test (#1741)
- Add large tuple test (#1642)
- Comment out etherscan abigen! test (#1616)
- Ensure trigger rebuild on settings change (#1591)
- Add avalanche test (#1494)
- Use default initial base fee (#1386)
- Add tx roundtrip test (#1383)
- Add tx receipt roundtrip test (#1360)
- Update test with changed state on forked tests (#1353)
- Set nonce for tx stream explicitly (#1354)
- Replace ganache with anvil (#1286)
- Expose test provider url
- Ensure structs in events work (#1235)
- Add another link with remapping test (#1191)
- Add ethcall derive test for vec tuples (#1144)
- Add type check test for abi array tuples (#1143)
- Add multiline flatten test (#1101)
- Add unique flatten test (#995)
- Add etherscan test case (#964)
- Add curly bracket import test (#929)
- Use new celo txhash which has not been wiped
[0.6.0] - 2021-11-23
Bug Fixes
- Lowercase node client type (#600)
- Remove const lag so it can be passed in as runtime variable (#587)
- Do not unnecessarily query for solc version (#586)
- Adds TimeLag::new() (#568)
- Lift macros feature to lib level (#567)
- Failing test and check --all-targets in ci (#560)
- Send error back (#556)
- Preserve underscores in case of collisions (#548)
- Use debug fmt for nested arrays (#527)
- Ensure gas estimation includes the access list in 1559/2930 txs (#523)
- Eip712 signing with ledger hw (#518)
- Use syn::Index for tuple access (#515)
- Allow clippy::redundant_clone and clippy::type_complexity in abigen (#491)
- Allow functions without output args (#477)
- Normalize EVM version across solc versions (#473)
- Remove solc path canonicalization
- Canonicalize custom paths
- Breaking changes and force enable serialize for eth-types (#448)
- Fix cargo fmt command in Contributing.md (#437)
- Cleanup lock file after exec cargo metadata (#431)
- Always treat abi type structs as tuples (#417)
- Enable solc optimization (#427)
Depedencies
- 0.6.0 (#611)
- Bump futures-util from 0.3.17 to 0.3.18 (#609)
- Bump tracing-subscriber from 0.3.1 to 0.3.2 (#604)
- Bump elliptic-curve from 0.10.6 to 0.11.1 (#605)
- Bump ethers-core to 0.5.5 (#582)
- Bump hex-literal from 0.3.3 to 0.3.4 (#573)
- Bump
ethereum-types
'impl-serde
to 0.3.2 (#569) - Bump cargo_metadata from 0.14.0 to 0.14.1 (#563)
- Bump auto_impl from 0.4.1 to 0.5.0 (#564)
- Bump tokio-util from 0.6.8 to 0.6.9 (#549)
- Bump arrayvec from 0.7.1 to 0.7.2 (#540)
- Bump tracing-subscriber from 0.3.0 to 0.3.1 (#532)
- Bump serde-aux from 2.3.0 to 3.0.1 (#533)
- Bump syn from 1.0.80 to 1.0.81 (#535)
- Bump proc-macro2 from 1.0.30 to 1.0.32 (#534)
- Bump tracing-subscriber from 0.2.25 to 0.3.0 (#529)
- Bump reqwest from 0.11.5 to 0.11.6 (#521)
- Bump instant from 0.1.11 to 0.1.12 (#520)
- Bump proc-macro2 from 1.0.29 to 1.0.30 (#504)
- Bump thiserror from 1.0.29 to 1.0.30 (#500)
- Bump syn from 1.0.78 to 1.0.80 (#499)
- Initial implementation of eip712 derive macro (#481)
- Bump reqwest from 0.11.4 to 0.11.5 (#490)
- Bump tracing from 0.1.28 to 0.1.29 (#488)
- Bump tracing-subscriber from 0.2.24 to 0.2.25 (#487)
- Bump instant from 0.1.10 to 0.1.11 (#467)
- Bump coins-ledger from 0.4.0 to 0.4.2 (#470)
- Bump ethabi (#469)
- Bump ethabi from
ef19ba9
to1da9de9
(#464) - Bump nth-check from 2.0.0 to 2.0.1 in /examples/ethers-wasm (#466)
- Bump wasm-bindgen-futures from 0.4.27 to 0.4.28 (#456)
- Bump tracing from 0.1.27 to 0.1.28 (#461)
- Bump tracing-subscriber from 0.2.23 to 0.2.24 (#462)
- Bump web-sys from 0.3.54 to 0.3.55 (#455)
- Bump wasm-bindgen from 0.2.77 to 0.2.78 (#454)
- Bump tracing-subscriber from 0.2.22 to 0.2.23 (#458)
- Bump ethabi from
8bd90d1
toef19ba9
(#452) - Bump spki from 0.4.0 to 0.4.1 (#453)
- Bump web-sys from 0.3.53 to 0.3.54 (#438)
- Bump serde-aux from 2.2.0 to 2.3.0 (#439)
- Bump tracing from 0.1.26 to 0.1.27 (#449)
- Bump tracing-subscriber from 0.2.21 to 0.2.22 (#450)
- Bump sha2 from 0.9.6 to 0.9.8 (#443)
- Bump tracing-subscriber from 0.2.20 to 0.2.21 (#447)
- Bump wasm-bindgen-futures from 0.4.26 to 0.4.27 (#441)
- Bump thiserror from 1.0.28 to 1.0.29 (#433)
- Bump tokio-util from 0.6.7 to 0.6.8 (#434)
- Bump futures-executor from 0.3.16 to 0.3.17 (#426)
- Bump parking_lot from 0.11.1 to 0.11.2 (#418)
- Bump thiserror from 1.0.26 to 1.0.28 (#419)
- Bump sha2 from 0.9.5 to 0.9.6 (#420)
- Bump futures-util from 0.3.16 to 0.3.17 (#423)
Documentation
- Add note about wasm and ffi to readme (#607)
- Add telegram metadata (#509)
- Fix broken ethers-js link (#475)
Features
- Add cargo change detection support (#599)
- Allow specifying solc version even if auto-detect enabled (#594)
- Add solc-tests feature for synchronous download of solc versions
- Add from_str for Remapping (#583)
- Make reqwest optional but enabled by default (#580)
- Auto-detect solc remappings (#574)
- Allow providing --allow-args (#553)
- Multiple Solc Version detection (#551)
- Add solc svm find support (#547)
- Use ethers_solc::Solc instead of ethers_core::utils::Solc (#546)
- Enumerate overloaded functions if they are nameless (#545)
- Only compile changed files (#544)
- Improved solc management (#539)
- Unify get_block_receipts for eth/parity RPCs (#541)
- Add abi code trait impls (#531)
- Add ethers-solc crate (#522)
- Expose Wallet::sign_hash
- Add ethabitype support for solidity style enums (#526)
- Add abi type trait (#519)
- Function call enums EthCall macro and more (#517)
- Transaction endpoints (#512)
- Add display support for events (#513)
- Substitute overloaded functions (#501)
- Add support for multiple contract definitions in abigen macro (#498)
- Impl Deserialize for block number (#497)
- Add etherscan client crate (#486)
- Add general solc contract types (#484)
- Support artifact format in proc macro (#480)
- Support human readable struct inputs (#482)
- Allow to configure combined-json (#483)
- Support Hardhat ABI format (#478)
- Support shorthand function declarations (#472)
- First draft timelag middleware (#457)
- Expand solc capabilities / chore: update ethabi (#445)
- Add quorum provider (#409)
Miscellaneous Tasks
- Enable zeroize feature for k256 (#596)
- Don't look for remappings on hardhat (#585)
- Re-export http client error in providers transports (#570)
- Fix flaky integration test
- Expose modules
- Update to Rust edition 2021 (#528)
- Move proc macro implementation to separate modules (#510)
- Remove GasNow api since it's deprecated (#508)
- Remove unused && cargo fix (#496)
- Expose I256 functions
- Expose solc module
- Update changelog
- Add changelog for #427 changes (#428)
- Update changelog (#429)
- Add changelog (#424)
Other
- Update readme for polygon and avalanche (#610)
- Add support for polygon and avalanche (#606)
- Add net_version call (#595)
- Fix/providers (#590)
- Prestwich/escalator fixes (#581)
- Remove failing workflow
- Load rinkeby privkey from envvar instead of secrets
- Load rinkeby privkey from secrets
- Add Decimal support to ethers::utils::parse_units (#463)
- Change wei from 1 to 0 (#460)
- Add getProof to provider (#459)
- Add cache
- Add utils::get_create2_address_from_hash() (#444)
- Add usage examples for hashing utilities (#436)
- Make 'ens' module public (#435)
- Event aliasing for contract bindings (#425)
- Correctly encode non-legacy mempool transactions (#415)
- Run examples in CI (#421)
Performance
- Remove clone (#602)
Refactor
Styling
- Prestwich/super pending (#566)
- Refactor crate determination in new ethers-macro crate (#555)
- (fix): new_keystore returns uuid as well (#559)
- Fix missing fmt argument in error message (#552)
- Add rustfmt.toml (#537)
- Simplify eip712 example (#492)
- Cargo fmt
Testing
- Get rinkeby private key from env var (#542)
- Add underscore test (#505)
- Fix flapping gas oracle (#514)
- Fix duplicate tx flakes by rotating through a list of wallets (#451)
[0.5.1] - 2021-08-28
Bug Fixes
- Generate correct imports depending on ethers crate usage (#413)
- Make packages default members so they get executed on unit tests (#411)
- Add send + unpin to stream type (#402)
- Use once_cell with feature=std in abigen (#401)
- Drop WS server if work complete (#399)
- Backwards compatibility for eth_feeHistory (#395)
- Skip 2930 tests in legacy mode / skip aws test if no id (#386)
- Signature fields should be U256 instead of H256 (#379)
- Make gasPrice optional (since Type 2 transactions) (#374)
- Use async-await-macro to fix docs.rs publishing
- Only wrap single struct param in a tuple (#368)
- Convert tuple arguments to tuples (#363)
- Make chain_id mandatory (#286)
- Preserve from field in SignerMiddleware (#350)
- Make event types thread safe (#341)
- Use ethabi from master w/ fixed abiv2 bug
- Remove ethers celo feature and ignore celo test (#313)
- Event decoding for events with zero or one parameters (#300)
- Off by one error during event decoding (#296)
- Remove dependency on curl (#285)
- Add indexed attribute when deriving EthEvent (#255)
- Make EthEvent abi attribute work for tuple inputs (#229)
- Correctly parse params in human readable abi (#194)
- Improvements in DsProxy execute (#177)
- Switch between units correctly (#170)
Depedencies
- Remove cyclical dependencies (#410)
- Bump bytes from 1.0.1 to 1.1.0 (#407)
- Bump elliptic-curve from 0.10.5 to 0.10.6 (#406)
- Bump coins-ledger from 0.3.0 to 0.4.0 (#405)
- Bump tracing-subscriber from 0.2.19 to 0.2.20 (#389)
- 0.4 (#382)
- Bump coins-ledger from 0.1.0 to 0.3.0 (#334)
- Bump futures-executor from 0.3.15 to 0.3.16 (#351)
- Update deps (#352)
- Bump tokio-tungstenite from 0.14.0 to 0.15.0 (#338)
- Bump hex-literal from 0.3.2 to 0.3.3 (#344)
- Bump futures-util from 0.3.15 to 0.3.16 (#348)
- Bump elliptic-curve from 0.10.3 to 0.10.4 (#340)
- Bump ethabi to 14.1.0
- Update crypto deps for ethers (#333)
- Bump futures-util from 0.3.14 to 0.3.15 (#290)
- Bump url from 2.2.1 to 2.2.2 (#289)
- Bump sha2 from 0.9.3 to 0.9.5 (#291)
- Bump tracing from 0.1.25 to 0.1.26 (#284)
- Bump tokio-util from 0.6.6 to 0.6.7 (#295)
- Bump elliptic-curve from 0.10.0 to 0.10.3 (#323)
- Bump reqwest from 0.11.3 to 0.11.4 (#322)
- Bump thiserror from 1.0.24 to 1.0.26 (#328)
- Bump once_cell from 1.7.2 to 1.8.0 (#317)
- Bump elliptic-curve from 0.9.11 to 0.10.0 (#311)
- Bump eth-keystore from 0.2.0 to 0.2.1 (#280)
- Bump futures-executor from 0.3.13 to 0.3.14 (#273)
- Bump k256 from 0.7.2 to 0.7.3 (#277)
- Bump async-trait from 0.1.48 to 0.1.50 (#278)
- Bump pin-project from 1.0.6 to 1.0.7 (#279)
- Bump elliptic-curve from 0.9.6 to 0.9.11 (#281)
- Bump tokio from 1.4.0 to 1.5.0 (#275)
- Bump serde-aux from 2.1.1 to 2.2.0 (#267)
- Bump tokio-util from 0.6.5 to 0.6.6 (#272)
- Bump bincode from 1.3.2 to 1.3.3 (#266)
- Bump futures-util from 0.3.13 to 0.3.14 (#268)
- Bump reqwest from 0.11.2 to 0.11.3 (#271)
- Bump anyhow from 1.0.38 to 1.0.39 (#243)
- Bump tokio from 1.2.0 to 1.4.0 (#242)
- Bump elliptic-curve from 0.9.4 to 0.9.5 (#237)
- Bump reqwest from 0.11.1 to 0.11.2 (#223)
- Bump serde from 1.0.123 to 1.0.124 (#222)
- Bump hex from 0.4.2 to 0.4.3 (#220)
- Bump once_cell from 1.7.0 to 1.7.2 (#218)
- Bump bincode from 1.3.1 to 1.3.2 (#211)
- Bump futures-executor from 0.3.12 to 0.3.13 (#213)
- Bump serde_json from 1.0.62 to 1.0.64 (#215)
- Bump futures-channel from 0.3.12 to 0.3.13 (#208)
- Bump futures-util from 0.3.12 to 0.3.13 (#207)
- Bump once_cell from 1.6.0 to 1.7.0 (#212)
- Bump tracing from 0.1.24 to 0.1.25 (#210)
- Bump once_cell from 1.5.2 to 1.6.0 (#206)
- Bump url from 2.2.0 to 2.2.1 (#201)
- Bump tracing from 0.1.23 to 0.1.24 (#199)
- Bump elliptic-curve from 0.9.3 to 0.9.4 (#203)
- Bump thiserror from 1.0.23 to 1.0.24 (#204)
- Bump reqwest from 0.11.0 to 0.11.1 (#202)
- Bump elliptic-curve from 0.9.2 to 0.9.3 (#198)
- Bump tracing-futures from 0.2.4 to 0.2.5 (#197)
- Update deps (#196)
- Bump sha2 from 0.9.2 to 0.9.3 (#185)
- Bump serde_json from 1.0.61 to 1.0.62 (#190)
- Bump pin-project from 1.0.4 to 1.0.5 (#187)
- Bump yubihsm from 0.37.0 to 0.38.0 (#186)
- Bump tokio from 1.1.1 to 1.2.0 (#189)
- Bump tracing from 0.1.22 to 0.1.23 (#188)
- Bump tokio from 1.1.0 to 1.1.1 (#184)
- Bump serde from 1.0.120 to 1.0.123 (#181)
- Bump tokio from 1.0.2 to 1.1.0 (#179)
- Bump serde from 1.0.119 to 1.0.120 (#176)
- Bump futures-executor from 0.3.11 to 0.3.12 (#173)
- Bump futures-util from 0.3.11 to 0.3.12 (#171)
- Bump k256 from 0.7.1 to 0.7.2 (#156)
- Bump tokio from 1.0.1 to 1.0.2 (#160)
- Bump futures-channel from 0.3.11 to 0.3.12 (#167)
- Bump futures-executor from 0.3.9 to 0.3.11 (#158)
- Bump futures-core from 0.3.11 to 0.3.12 (#166)
- Bump futures-util from 0.3.9 to 0.3.11 (#159)
Documentation
Features
- Add wasm http provider support (#403)
- Wasm support (#390)
- Add basic policy middleware (#400)
- Drop WS server on when WS connection closes (#396)
- Fee estimation with custom/default fn (#369)
- Improve gas oracles (#392)
- Add legacy feature to ethers crate (#384)
- Generate rust structs from solidity JSON ABI (#378)
- Multiple addresses on Filter (#375)
- Typed txs (part 4) (#362)
- Typed txs provider / middleware changes (part 3) (#357)
- 1559/2930 txs (part 2) (#355)
- Eip2930/1559 response type adjustments (part 1) (#353)
- Add support for
eth_getBlockReceipts
(#365) - Detect ethers crate paths in derive macros (#366)
- Signer using aws kms (#358)
- Stream_with_meta (#354)
- Support additional ganache arguments (#347)
- Initial delay in PendingTransaction (#339)
- PendingTransaction returns Option (#327)
- Allow using native-tls or rustls (#330)
- Extend Middleware trait customized for celo (#314)
- Add filter utility function (#316)
- Introduce tx stream (#303)
- Make I256::from_raw() as const (#305)
- Support parsing solc contract abi output in string and array form (#301)
- Signature derives Copy trait (#288)
- Implement IPC transport support (#260)
- Mnemonic phrase support for wallet (#256)
- Add async setup utility functions (#241)
- Extend ethevent trait methods and decoding (#239)
- Update ethabi (#233)
- Add support for EIP-234 and EIP-1898 (#231)
- Include ethevent proc macro in abigen code gen workflow (#232)
- Add EthEvent proc macro derive support (#227)
- Add struct parsing support for human readable ABI (#226)
- Report path on failed abigen load (#205)
- Transformer middleware with DsProxy impl (#165)
Miscellaneous Tasks
- Pull ethers to top level directory (#398)
- Disable all ethers features by default and expose them individually (#394)
- Add explanation on
legacy
flag - Remove default feature on futures-util from all crates
- Skip tx rlp test in celo
- Allow clippy enum variant names (#364)
- Re-export aws signer error (#359)
- Fix lints (#329)
- Use latest ethabi (#253)
- Fix two small typos (#249)
- Use upstream ethabi (#248)
- Use upgraded version for eth-keystore-rs (#193)
Other
- Fix RLP encoding of gas price (#408)
- Refactor WS handling code (#397)
- Add uncle related missing api (#385)
- Log streams properly end when internal stream closes (#387)
- Sign_transaction_sync (#388)
- Disable type serialization when legacy feature is set (#383)
- Add Flashbots middleware to projects section (#381)
- Add impl_fixed_types!(18) (fixes opensea abigen) (#373)
- Cargo clippy --fix (#346)
- Add util functions for bytes32 string encoding/decoding (#337)
- Add xDai multicall contract address (#324)
- Change types of block number and returned keys (#320)
- Make request error to be confined per request, not a global websocket error (#315)
- Fix tests failing on solc 0.8.0 or above (#310)
- Update sign.rs (#304)
- Upgrade to GitHub-native Dependabot (#283)
- Prevent interleaving websocket ID load/store operations (#217)
- Make abigen reproducible (#200)
- Feat/is middleware signer (#182)
- I256 implementation (#175)
- Handle ping/pong messages for Ws provider (#163)
Refactor
Styling
- Expose
LogMeta
type and add more fields, and expose FilterBlockOption (#294) - Replace println usage in ws provider (#263)
- Remove token instead cloning them (#236)
Testing
[0.2.0] - 2021-01-13
Bug Fixes
- Bump to tokio-tungstenite 13.0
- Reschedule waker for >1 confs (#112)
- Reschedule waker even if receipt is not available (#104)
- Reschedule waker if receipt is immediately available (#103)
- Default param name if not found following memory/calldata (#91)
- Update signature error
- Replace FilterStream with concrete type (#69)
- Return Option for txs/receipts/blocks (#64)
- Serialize filters properly and always rewake (#61)
- Make multicall work by reference (#58)
- Make token decoding abiencoderv2 friendly
- Add Randomness when using celo (#44)
- Add Send trait bound to PendingTx state future (#39)
Depedencies
- Bump to 0.2.0 (#151)
- Bump tempfile from 3.1.0 to 3.2.0 (#149)
- Bump serde from 1.0.118 to 1.0.119 (#146)
- Bump bytes from 1.0.0 to 1.0.1 (#145)
- Bump anyhow from 1.0.37 to 1.0.38 (#139)
- Bump pin-project from 1.0.2 to 1.0.3 (#135)
- Upgrade to Tokio 1.0 and remove async-std (#120)
- Trim some dependencies (#116)
Documentation
- Add more docs (#130)
- Add solc-select to the readme
- Fix broken links
- Add telegram to README
Features
- Add tracing (#113)
- Expose to_eip_155 (#111)
- Derives &, Arc and Box for Middleware (#109)
- Add a mock transport (#99)
- Add method for parity_getBlockReceipts
- Port over tracing from rust-web3 (#93)
- Allow encoding/decoding function data (#90)
- Transaction Gas Price Escalator middleware (#81)
- Generalize wallet/private key + yubihsm2 (#75)
- Convert signing to k256 (#72)
- Middleware Architecture (#65)
- Ledger support (#66)
- Add epochSnarkData to the celo block (#46)
- Tokenize tuples
- Ethers-core wasm32 arch compatibility (#38)
- Add helper to query events w/ metadata (block num + tx hash) (#33)
- Make Signer on Client optional (#34)
- Introduce a pending tx polling delay so that we do not spam the chain (#31)
Miscellaneous Tasks
- Use published crate (#148)
- Upgrade to latest ethtypes (#137)
- Use published coins-ledger (#132)
- Remove dead code
- Add example for ledger
- Make websockets optional (#45)
Other
- Support for encrypted JSON keystore (#138)
- Upgrade reqwest to 0.11.0 to ensure only 1 version of tokio used (#136)
- Fix broken link to TG group in readme. (#110)
- Returning a
PendingTransaction
after sending a tx (#107) - Update README.md
- Contract & Provider eth_subscribe support (#100)
- Update README.md
- Misc Fixes (#97)
- Add Sync trait to middleware error (#94)
- Geth TxPool API Support (#86)
- Address checksum (#85)
- Nonce manager (#59)
- (feat) gas oracle support (#56)
- Add support for gas estimate and calldata from ContractCall (#53)
- Add get_storage_at
- Reschedule rewaking when unpausing pending tx future (#50)
- Implement Multicall functionality for batched calls (#43)
- Fix buggy non-nested tuples (#48)
- Update README.md (#47)
- Improve Ganache Flexibility (#37)
- Replace contract client references with Arc (#35)
- Websockets + TLS for Async-Std / Tokio (#30)
Refactor
- Extract minimal features of Contract into BaseContract (#88)
- Pending txns don't wait to poll futures until interval elapses (#49)
Styling
- Bug #55: prevent request from serializing ZSTs as null (#57)
[0.1.3] - 2020-06-20
Bug Fixes
- Fix intradoc links and add missing cargo metadata (#29)
- Make Signature.v a u64 instead of a u8 and expose
verify
(#21) - Pass array arguments (#10)
- Simplify ENS interfaces
- Make wallet non-optional
- Serialize null filters
- Adjust to rest of contract fixes
- Fix examples
Depedencies
- Skip tests with external deps
Documentation
- Add missing attribution to Althea for the lean JSON RPC client
- Add missing attribution to Gnosis for codegen & macros
- Add ethers.js as a reference
- Add contributing.md
- Add some templates (#14)
- Further expand the docs
- Update struct
- Expand contract docs
- Expand Wallet examples
- Add more docs
- Improve struct level docs
- Add doctests and examples
- Add some more docs
- Add docs to ethers-providers
- Docs
Features
- Implement Serde and make Wallet API smaller (#20)
- Add various new utility methods (#13)
- Join the transaction futures
- Allow querying logs with their respective tx hashes
- Add solc bindings
- Adds support for launching ganache-cli
- Add ens support
- Add tokenization and improve contract API for events
- Add basic contract support
- Add fetching logs
- Add receipts
- Add get_block
Miscellaneous Tasks
- Remove leftover file
- Do not run the doctests since the abi paths cannot be found
- Fix doctest
- Fix examples
- Remove unnecessary stuff
- Comment out some bothersome tests
Other
- Dual license under MIT/Apache 2 (#28)
- Provider Fixes on filters and gas estimation (#23)
- Add Celo support (#8)
- Fix Pending Transactions and EIP-155 (#22)
- ABI Encoder v2 + ABI Spec v6.6 (#17)
- Switch to github actions (#18)
- Add json rpc bindings for eth_getCode (#15)
- Add pending tx type to wait for tx confirmations (#11)
- Update docs path (#12)
- Add streamed logs to the provider (#9)
- Re-enable paths/etherscan and enable more complex tokens
- Simplify structs and re-enable file/remote codegen
- Simplify lifetimes
- Allow connecting to many clients/addresses
- Simplify errors and generics
- Remove provider/signers trait bound
- Simplify signers
- Remove type-safe networks
- Simplify provider type declaration
- Ensure functions do not clash with event names
- Use pure rust libsecp
- Reorganize docs
- Add a prelude to make importing stuff easier
- Add deployer
- Add ContractFactory
- Add docs to ethers-signer
- Ethers-types docs
- Add some block tests
- Add test for utils
- Make ENS a first class citizen
- Integrate ENS at the provider level
- Install cargo-audit and clippy
- Add versions for publishing
- Fix ci
- Progress
- Specify the datatype when creating the call
- Complete refactor
- WIP
- Wip
- WIP
- Wip
- El refactor
- WIP add contract abi
- Filters
- Add circleci
- Update readme
- Do not expose fields
- Use builder pattern for txs
- Add eth_balance and eth_accounts
- Rename type
- Deduplicate tx types
- Cleanup
- Lock
- Abuse Deref for using provider methods in the Client
- Lints and more examples
- Wallet refactor
- WIP
- Init
Refactor
- Pull crates to root dir
- Refactor ethers-types -> ethers-core
- Refactor ethers-utils to be part of ethers-types
- Refactor ethers-abi to be part of ethers-types
- Split to modules
- Refactor
Styling
- Improve Stream performance (#25)
- Cargo fmt
- Fmt
Testing
- Re-enable tests