DaniPopes
733c5d3dfd
fix(contract): relax Middleware trait bound for getters ( #1728 )
...
* wip
* fix(contract): relax Middleware trait bound for getters
* chore: clippy
* move
* fix: multicall
2022-09-23 17:32:24 -07:00
dependabot[bot]
139b4ae818
chore(deps): bump once_cell from 1.14.0 to 1.15.0 ( #1725 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.14.0...v1.15.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-21 09:57:22 -07:00
DaniPopes
db75e3628e
feat(core): add utility methods to NameOrAddress ( #1720 )
...
* feat: NameOrAddress impls
* feat: add to_addr to TypedTransaction
* fix: use NameOrAddress for ens
* chore: clippy
* dont clone
2022-09-19 10:51:04 -07:00
DaniPopes
3926749213
docs: add MSRV ( #1712 )
2022-09-18 08:45:45 -07:00
DaniPopes
c341f31fc4
chore: add abigen to default features ( #1684 )
...
* chore: add abigen to default features
* docs: update CHANGELOG.md
2022-09-09 16:19:29 -07:00
Matthias Seitz
513ed588ca
chore: export abi related types ( #1677 )
...
* chore: export abi related types
* feat: expose function
2022-09-08 09:07:38 -07:00
Matthias Seitz
0e7f46b03d
feat(abigen): subsitute structs in event bindings ( #1674 )
...
* fix(abigen): handle event defaults
* feat(abigen): subsitute structs in event bindings
* update changelog
* chore: rustfmt
* fix broken tests
* chore(clippy): make clippy happy
2022-09-07 09:14:13 -07:00
dependabot[bot]
96cc8242ee
chore(deps): bump once_cell from 1.13.1 to 1.14.0 ( #1669 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.13.1 to 1.14.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.13.1...v1.14.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-05 09:55:30 -07:00
DaniPopes
72449c09e1
feat(contract): add extra Multicall helper methods ( #1666 )
...
* feat(contract): add extra Multicall helper methods
* docs: update CHANGELOG.md
* normalize helper methods' names
2022-09-05 09:54:49 -07:00
Matthias Seitz
6a86d4ff22
chore(clippy): make clippy happy ( #1659 )
2022-09-04 10:57:52 -07:00
Matthias Seitz
430c56ee4a
fix(abigen): only derive default of no arrays len > 32 ( #1653 )
...
* fix(abigen): only derive default of no arrays len > 32
* impl default
2022-08-31 08:24:21 -07:00
Danilo Tuler
ea8bcd11be
feat: add support for Optimism Goerli ( #1641 )
2022-08-30 09:45:43 -07:00
Matthias Seitz
792d415845
fix: set chain id explicitly ( #1647 )
2022-08-30 09:45:36 -07:00
Matthias Seitz
6e6d827f1f
test: add large tuple test ( #1642 )
2022-08-29 17:03:12 -07:00
DaniPopes
edc00054b1
feat(contract): update Multicall to Multicall3 ( #1584 )
...
* chore: update multicall_contract binding
* feat: update multicall_contract.rs to Multicall3
* fix multicall_contract.rs exports
* update test Multicall.sol contract
* feat: update Multicall to Multicall3
* update exports
* update tests
* perf: use aggregate3 when no value is being sent
* feat: handle revert data
* test: add multicall v2 and v3 tests
* fix: clippy
* docs: add documentation, improve comments
* docs: add more documentation
* fix: solidity minimum version for Multicall.sol
* fix: multicall_contract.rs imports
* docs: add explanation for previous commit
* docs
* docs
* fix: remove unused re-export, feature gate Multicall
* fix: address review
* chore: improve error handling
* chore: export MulticallError
* docs
2022-08-28 12:18:58 -07:00
Matthias Seitz
0b04ffe787
feat: add uint8 type ( #1639 )
...
* feat: add uint8 type
* update changelog
* derive default
* fix: failing test
2022-08-28 12:17:48 -07:00
Clifton King
b1124441ec
feat(abigen): descriptive deserialization errors ( #1633 )
...
* feat(abigen): descriptive deserialization errors
* update changelog
* map_err -> wrap_err
2022-08-23 17:54:56 -07:00
Nicolas Gotchac
68fba606c2
Don't auto-generate an AccessList when sending/filling a tx ( #1619 )
...
Add an optionnal `block` parameter to the gas estimation method
2022-08-19 14:33:12 -07:00
Matthias Seitz
c51dcffec6
test: comment out etherscan abigen! test ( #1616 )
2022-08-19 08:18:03 -07:00
dependabot[bot]
4655c44481
chore(deps): bump once_cell from 1.13.0 to 1.13.1 ( #1606 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.13.0 to 1.13.1.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.13.0...v1.13.1 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-17 14:13:59 -07:00
Matthias Seitz
43b8bb5251
fix(abigen): use correct str Regex ( #1566 )
2022-08-04 10:03:43 -07:00
Matthias Seitz
52ead7c645
chore(abigen): reexport filter ( #1565 )
2022-08-04 10:03:25 -07:00
Matthias Seitz
e6c1927a1c
feat(abigen): add contract filter ( #1564 )
...
* feat(abigen): add contract filter
* refactor: move to top of file
* add tests
* update changelog
2022-08-04 08:22:00 -07:00
Matthias Seitz
27a184db45
feat: add EthError trait and derive ( #1549 )
...
* feat: add EthError trait and derive
* update changelog
2022-08-02 11:03:52 -07:00
Matthias Seitz
6bb25e5228
fix(abigen): resolve output struct types correctly ( #1546 )
...
* fix(abigen): resolve output struct types correctly
* chore(clippy): make clippy happy
2022-08-01 09:45:31 -07:00
Matthias Seitz
c75608eda1
ci: rm pinned nightly ( #1541 )
...
* ci: rm pinned nightly
* chore(clippy): make clippy happy
2022-07-31 19:00:31 -07:00
Matthias Seitz
1f69ec7679
revert: add back dev-deps ( #1532 )
...
* Revert "disable dev deps"
This reverts commit 97bdcb9d82
.
* fix: add back removed dev-deps
2022-07-28 17:36:22 -07:00
Georgios Konstantopoulos
1ef7735e3d
MBlockerge branch 'master' of github.com:gakonst/ethers-rs
2022-07-28 11:45:59 -07:00
Matthias Seitz
b354102073
fix: use fully qualified path for Result ( #1527 )
2022-07-28 11:06:06 -07:00
Georgios Konstantopoulos
6f22e67044
(cargo-release) version 0.17.0
2022-07-28 10:58:50 -07:00
Georgios Konstantopoulos
3fce0cca25
(cargo-release) version 0.17.0
2022-07-28 10:58:50 -07:00
Georgios Konstantopoulos
842c321678
(cargo-release) version 0.17.0
2022-07-28 10:58:50 -07:00
Georgios Konstantopoulos
2b7d035324
(cargo-release) version 0.17.0
2022-07-28 10:58:49 -07:00
Georgios Konstantopoulos
8d3e796b47
(cargo-release) version 0.17.0
2022-07-28 10:58:49 -07:00
Georgios Konstantopoulos
de2ed3391d
(cargo-release) version 0.17.0
2022-07-28 10:58:49 -07:00
Georgios Konstantopoulos
97bdcb9d82
disable dev deps
2022-07-28 10:57:38 -07:00
Clifton King
c418f4ef34
fix(abigen): abigen feature required for bindings ( #1508 )
...
* fix(abigen): abigen feature required for bindings
traits such as ethers::contract::EthDisplay require abigen
* update changelog
* abigen now uses re-exported version of serde_json
2022-07-26 08:28:39 -07:00
Matthias Seitz
6b713958d1
feat: bump abi/token tuple limit ( #1506 )
2022-07-26 08:27:19 -07:00
Matthias Seitz
d22fb2bd0b
test: update broken test and use it module for ethers-contract ( #1502 )
...
* refactor: make ethers-contract tests it module
* update failing test
* assert console is generated
* chore(clippy): make clippy happy
* update broken test
* move sol files back
* chore: rustfmt
* chore(clippy): make clippy happy
2022-07-24 14:41:06 -07:00
Clifton King
aa008727ee
fix(abigen): contract names can be reserve words ( #1498 )
...
* fix(abigen): contract names can be reserve words
* update changelog
* clippy warning
* module names consistent with other safe_*
* update refs to generated abis
* move reserved words tests to their own fn
* added note to changelog re: module name changes
2022-07-24 03:18:24 +02:00
Matthias Seitz
a958b4fd28
fix(eip712): improve argument parsing ( #1485 )
...
* fix(eip712): improve argument parsing
* use reexported serde_json
* chore: rustfmt
* fix: add missing salt
2022-07-20 00:09:11 -07:00
James Prestwich
13ce18fd3b
feature: allow event builder to stream with meta ( #1483 )
...
* feature: allow event builder to stream with meta
* doc: improve rustdoc
* feature: subscribe_with_meta
* chore: fmt
2022-07-17 11:26:16 -07:00
Matthias Seitz
841b75430e
chore(deps): bump pin-project to silence new clippy lints ( #1464 )
2022-07-06 13:22:55 -07:00
dependabot[bot]
dc01d0c9ed
chore(deps): bump once_cell from 1.12.0 to 1.13.0 ( #1453 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.12.0...v1.13.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-05 08:54:50 -07:00
jole
b287fcca4d
Generate structs for the return data of abigen-erated contracts ( #1440 )
...
* convert some helper functions
* use said helpers
* more
* don't derive EthCall on return structs
* move return structs to separate function
* remove unused
* remove duplicate code
* reduce code duplication
also use an iterator instead of a presized vector
* comments
* stuck
* fix wrong field
* rename
* don't generate structs for no-output functions
* cosmetic changes
* test: decode and verify result
* more testing
unnamed output (tuple struct)
no output (doesn't exist) -> can't verify this in code though
* Update ethers-contract/ethers-contract-abigen/src/contract/methods.rs
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* remove dbg print
oops :(
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2022-07-04 11:54:02 -07:00
Matthias Seitz
c31eec5008
docs(contract): improve EventStream docs ( #1450 )
2022-07-04 11:47:11 -07:00
Matthias Seitz
7c6462be02
chore(core): convenience impls for Bytes ( #1421 )
...
* chore(core): convenience impls for Bytes
* update asserts
2022-06-28 09:30:59 -07:00
Matthias Seitz
f17f900d01
fix(abigen): remove redundant index adjustment for many overloads ( #1419 )
2022-06-27 11:52:06 -07:00
Matthias Seitz
659ac061b2
refactor(abigen): replace ethabi::Reader ( #1417 )
...
* feat: add human readable function parser
* clippy fix
* revert bad clippy
* refactor(abigen): replace ethabi::Reader
* fix: add token to tuple token parsing
2022-06-26 17:26:43 -07:00
Matthias Seitz
2524663674
fix(abigen): use abi signature attribute if provided ( #1409 )
2022-06-23 02:53:24 -04:00
Matthias Seitz
69095c15cf
feat: add eth filter deserialization and matching ( #1389 )
...
* feat: add eth filter deserialization and matching
* chore: rustfmt
* extend test
* add missing conversion
2022-06-17 09:34:16 -07:00
Georgios Konstantopoulos
e991148790
Revert "release: disable dev deps"
...
This reverts commit b3159507a8
.
2022-06-14 14:23:10 +03:00
Georgios Konstantopoulos
b3159507a8
release: disable dev deps
2022-06-14 14:15:25 +03:00
Georgios Konstantopoulos
5e0f38ae40
(cargo-release) version 0.13.0
2022-06-14 13:59:12 +03:00
Georgios Konstantopoulos
ed6c3f8413
(cargo-release) version 0.13.0
2022-06-14 13:59:11 +03:00
Georgios Konstantopoulos
54b81e6b7f
(cargo-release) version 0.13.0
2022-06-14 13:59:11 +03:00
Georgios Konstantopoulos
89f86d801e
(cargo-release) version 0.13.0
2022-06-14 13:59:11 +03:00
Georgios Konstantopoulos
fdccd80551
(cargo-release) version 0.13.0
2022-06-14 13:59:11 +03:00
Georgios Konstantopoulos
f3096ce177
(cargo-release) version 0.13.0
2022-06-14 13:59:11 +03:00
Georgios Konstantopoulos
ce275f1838
(cargo-release) version 0.13.0
2022-06-14 13:59:11 +03:00
Georgios Konstantopoulos
3017e09146
(cargo-release) version 0.13.0
2022-06-14 13:59:10 +03:00
Georgios Konstantopoulos
4791bb6a07
(cargo-release) version 0.13.0
2022-06-14 13:59:10 +03:00
Gio
a532eb4d29
Add call builder and eth_call state overrides ( #1340 )
...
* Add call builder and eth_call state overrides
* Fix <Caller as Future>::poll impl
* Move call overrides to ethers_provider::call_raw
* Add example for call_raw overrides
* Add support for contract call overrides
* Documentation and convenience impls for call_raw types
* Test for eth_call state overrides
* ci: install geth
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-06-04 14:18:25 -07:00
Matthias Seitz
89bc6420bb
test: replace ganache with anvil ( #1286 )
...
* ci: install anvil
* test: use anvil instead of ganache
* ci: fix anvil ver
* ci: re-enable example tests
* test: remove unnecessary assertions
* test: enable anvil launch test
* docs: typo
* test: fix anvil chain id
* ci: install ganache
Ganache is needed for the Ganache tests
* chore: remove legacy feature from some examples
* ci: correctly build examples
* test: use correct account balance for anvil
* chore: remove sub_id == 1 check
this was only possible in ganache because it gives serial
sub ids, but in every other reasonable client the ids are generated
randomly, so we cannot test for its value
* test: ensure txs are different
There is a bug in Ganache's mempool which accepts duplicate transactions (here with the same nonce), whereas here we pre-set all the nonces so that they end up having a different transaction hash.
* test: ignore ganache tests
* fix: terzor api changes
* ci(examples): install Anvil, remove geth/ganache
* test(provider): Anvil instead of Geth
some tests start to fail now
* fix: revert usage of Anvil in ipc tests
Anvil does not support IPC yet
* fix: update examples script
* ci: use anvil for wasm example
* replace last ganache usage
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-06-01 08:22:39 -07:00
tri-joe
eb3945097d
make abigen-ed modules pub ( #1332 )
2022-05-31 13:29:02 -07:00
Clifton King
a41ae901e5
fix(abigen): non-snake-case modules out of order ( #1331 )
...
eg: `console` and `shared_types` were out of order and would fail
rustfmt check
2022-05-31 09:44:24 -07:00
Matthias Seitz
d2c46867c1
chore(deps): make tokio required dependency ( #1322 )
...
* chore(deps): make tokio non optional
* chore(deps): bump tokio 0.18
* Update ethers-providers/Cargo.toml
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-05-28 17:54:45 -07:00
Clifton King
7b9503c8b0
fix(abigen): clippy warnings on solidity bindings ( #1319 )
...
eg the `console` contract throws a clippy warning
2022-05-27 13:32:57 -07:00
dependabot[bot]
37f3df5234
chore(deps): bump once_cell from 1.11.0 to 1.12.0 ( #1306 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.11.0...v1.12.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-24 00:31:40 -07:00
rakita
4301447155
relax thiserror minor version constraint ( #1294 )
2022-05-23 11:41:30 -07:00
Meet Mangukiya
2f34fc9705
feat(ethers-contract-abigen): opt out of checking cargo.toml for consistency ( #1301 )
2022-05-23 11:41:05 -07:00
Matthias Seitz
cffcc7bbec
chore(clippy): fix newest nightly lints ( #1298 )
2022-05-22 15:18:57 -07:00
dependabot[bot]
2883ed7e2d
chore(deps): bump once_cell from 1.10.0 to 1.11.0 ( #1288 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.10.0...v1.11.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-21 17:50:00 -07:00
Meet Mangukiya
5d604edd5c
feat(ContractDeployer): add tx builder methods ( #1289 )
2022-05-21 17:48:41 -07:00
Meet Mangukiya
6d5bebd860
Release process and CI ( #1240 )
...
* Fix the crate versions
* release.toml: add cargo-release config
* CONTRIBUTING.md: Update Releasing section
* feat: add release github workflow
* feat: generate CHANGELOGs and create github releases in CI
2022-05-13 13:10:05 -07:00
Matthias Seitz
847110a3fe
fix: filter out empty bytecode ( #1248 )
2022-05-11 07:34:41 -07:00
Matthias Seitz
4b462e6ef2
test(abigen): ensure structs in events work ( #1235 )
...
* test(abigen): ensure structs in events work
* chore: rename vars
* chore: use ganache chain id
* chore: disable ganache test on celo
2022-05-09 09:26:36 -07:00
Matthias Seitz
fd994d7fde
feat(abigen): support overloaded events ( #1233 )
...
* feat(abigen): support overloaded events
* chore: update CHANGELOG
2022-05-07 09:31:53 -07:00
Matthias Seitz
ce3ebaefa0
chore(clippy): make clippy happy ( #1230 )
2022-05-06 08:15:49 -07:00
dependabot[bot]
c44872f62e
chore(deps): bump thiserror from 1.0.30 to 1.0.31 ( #1206 )
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.30 to 1.0.31.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.30...1.0.31 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-02 11:54:22 -07:00
oblique
6faceb20d7
feat: Relax `Clone` requirements when `Arc<M>` is used ( #1183 )
...
`#[derive(Clone)]` was implementing `Clone` only if `M` was `Clone`,
however because of `Arc<M>` this can be relaxed.
2022-04-27 15:33:22 +03:00
Nicolas Gailly
9d53c73af0
Update event.rs ( #1173 )
2022-04-24 16:10:21 +02:00
Matthias Seitz
77bd9d49c8
test: add ethcall derive test for vec tuples ( #1144 )
2022-04-23 03:09:29 -07:00
Matthias Seitz
9047f96d95
feat: make stream mod public ( #1160 )
2022-04-21 19:29:40 +02:00
Matthias Seitz
969d4e01c0
feat: accept different middlewares for contract connect ( #1159 )
2022-04-21 17:05:23 +02:00
inconspicuous99
5f1f967ec1
ContractDeployer: pub deployer can modify defaults ( #1156 )
2022-04-19 13:20:59 -07:00
Matthias Seitz
a99dd1328b
fix: support display for bytes ( #1148 )
2022-04-16 13:08:31 -07:00
Dan Cline
1d14f9d26e
Ensure a consistent chain ID between a signer and provider in SignerMiddleware ( #1095 )
...
* feat(middleware): fetch chainid from middleware
Require SignerMiddleware to fetch the inner middleware's to set for the
signer. SignerMiddleware now requires an instantiated middleware with
an accessible get_chainid method.
* ci: update ganache
newer ganache version is needed to specify the ganache provider chain id
in tests
* set SignerMiddleware constructor return to result
* create new method for pulling chainid
* add consistent chainid CHANGELOG entry
* remove awaits
* switch test_derive_eip712 to use consistent signer
* remove gas estimation equality assert in deploy_and_call_contract -
updated version of ganache no longer returns the same value for gas
estimation and gas_used
* revert with_signer to non-async non-result
* cargo fmt
* expand SignerMiddleware::new comment
* remove doc indent
2022-04-10 10:55:30 -07:00
Matthias Seitz
a43a9b8806
fix(abi): change abiarraytype trait bounds for tuple ( #1079 )
2022-03-24 17:40:34 -07:00
Matthias Seitz
916e9a7334
chore(clippy): add some deny lints ( #1064 )
...
* feat: add deny lints
* trim ethers core
* trim ethers eip712
* deny ethers contract derive
* deny ethers contract abigen
* deny ethers contract
* deny ethers providers
* chore: add denies and fix unused deps
* doc: fix links
* fix: wasm build
* doc: fix links
* doc: fix links
* doc: fix inline doc links
* docs: fix intra doc links
2022-03-19 10:05:39 -07:00
Matthias Seitz
b6b5b09f4a
feat(abigen): add abi object deserializer and generate deploy function ( #1030 )
...
* feat(abigen): add abi object deserializer
* chore: rustfmt
* refactor: use enum type for deser abi
* refactor: use enum types for deser
* chore: rustfmt
* feat: add bytecode field
* feat: generate bytecode static
* feat: generate deployment function
* refactor: deploy function
* feat: add contract deployer type
* feat: make 0x prefix optional
* feat: add deploy function
* feat: add deploy example
* chore: update CHANGELOG
* chore(clippy): make clippy happy
2022-03-18 21:23:33 -07:00
Matthias Seitz
3d4feccabf
fix(core): check against ethers internal crate names ( #1060 )
...
* fix(core): check against ethers internal crate names
* fix: add import back
2022-03-17 15:14:53 -07:00
Georgios Konstantopoulos
3244364060
chore: do not pin eyre patch version
2022-03-17 14:10:31 +02:00
Matthias Seitz
22bc981fd5
chore(abigen): improve error message when bindings out of sync ( #1025 )
2022-03-14 13:29:23 +02:00
oblique
46d7afd65b
fix(abigen): safe ident field names ( #989 )
2022-03-05 20:25:03 +02:00
dependabot[bot]
010217c407
chore(deps): bump once_cell from 1.9.0 to 1.10.0 ( #987 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.9.0...v1.10.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-04 05:29:34 -08:00
Georgios Konstantopoulos
9626cc1335
feat: add contract interface helpers ( #982 )
...
* feat(contract): add helpers for decoding as raw Token
This allows decoding Events and Function data without knowing the return type
* feat(contract): add helpers for decoding function outputs
* chore(contract): remove redundant generic param
2022-03-02 15:58:18 +02:00
Georgios Konstantopoulos
94e2d1b122
feat(abigen): add helper for getting number of abigen'd contracts
2022-03-01 14:44:34 +02:00
Matthias Seitz
960b873b00
fix(abigen): safe ident underscore followed by numeric ( #970 )
2022-02-28 00:04:43 +02:00
Matthias Seitz
d6d66b37dd
chore: add rate limit message ( #971 )
2022-02-27 17:41:26 +02:00
Matthias Seitz
10fcf60791
fix(abigen): support functions with different casing ( #972 )
2022-02-27 17:40:57 +02:00
Matthias Seitz
b6c22e9bcc
fix(abigen): dont generate empty shared_types module ( #965 )
2022-02-25 00:13:06 +02:00
Matthias Seitz
f5ef8149e5
feat(abigen): support shared type during multiabigen ( #959 )
...
* refactor: move type deduplication to abigen crate
* refactor: separate expansion process
* feat: support shared type during multiabigen
* test: add type deduplication test
* chore: rustfmt
* typos
* chore(clippy): make clippy happy
* chore: add anonymous field
2022-02-24 22:09:08 +02:00
Matthias Seitz
72da5913d2
test(abigen): add etherscan test case ( #964 )
2022-02-24 22:07:58 +02:00
Matthias Seitz
f1eaee52ef
feat: add contract code not verified check ( #962 )
2022-02-24 14:07:34 +02:00
Matthias Seitz
184cffaca3
fix(abigen/solc): make abigen work with ethers-solc and abiencoderv2 ( #952 )
...
* feat(solc): add lossless abi
* fix(abigen): make abigen work with ethers-solc and abiencoderv2
* chore: update CHANGELOG
2022-02-23 12:46:52 +02:00
Matthias Seitz
9876b49e6c
docs(abigen): improve abigen type docs ( #953 )
...
* docs(abigen): improve abigen type docs
* Update ethers-contract/ethers-contract-abigen/src/lib.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-23 12:36:14 +02:00
Matthias Seitz
45a37faa3d
fix(abigen): handle lossy ethabi generated abi structs ( #950 )
...
* fix(abigen): handle lossy ethabi generated abi structs
* chore: rustfmt
2022-02-22 20:26:21 +02:00
georgewhewell
ce8c671218
Add Ftm multicall addresses ( #927 )
...
* add multicall addresses for fantom
* update changelog
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-18 16:05:08 +02:00
Georgios Konstantopoulos
16b9de5134
fix(abigen): add serde json to created crate
2022-02-18 00:17:22 +02:00
Matthias Seitz
19d2fd1155
feat(solc): add configurable Artifact type ( #907 )
...
* refactor: make artifacts a sub mod
* feat: more options for output selection
* feat(solc): make ArtifactOutput struct functions
* fix: migrate all features
* feat: add configurable artifacts type
* refactor: move configurable to separate file
* feat: impl ArtifactOutput
* refactor: write extras
* simplify write extra
* feat: more helper functions
* feat: implement delegate
* fix: failing doc test
* fix: rustfmt
* chore: update CHANGELOG
* feat: add helper functions
* refactor: remove flatten
* feat: add link function
* feat: replace default type
* fix: doc tests
* feat: more utility functions
* fix: failing tests
* chore: rename types
* chore: bump ethers-solc 0.3.0
* fix: set metadata file extension properly
2022-02-17 17:31:35 +02:00
Jim
e3f0621d43
Expose New `call_raw` API that permits MultiCalls without Detokenization ( #915 )
...
* Add `call_raw` method that forgoes detokenization for MultiCall. Have `call` wrap around `call_raw` permitting user to handle detokenization themselves if they wish
* Improve documentation: Add details to the documentation example that informs the user of their responsibility to detokenize results
2022-02-15 22:38:01 +02:00
Mark Tyneway
100f121202
feat(ethers-contract): add `send_with_receipt` to `Deployer` ( #865 )
...
* feat(ethers-contract): add `send_with_receipt` to `Deployer`
The `Deployer` is used to deploy contracts and its `send`
function returns an attached instance of a `Contract`.
There is no way to know the transaction hash of the
deployment transaction, so this commit adds another
method `send_with_receipt` that returns an attached
`Contract` as well as a `TransactionReceipt`.
* changelog: update
* tests: call `send_with_receipt` in tests
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-05 16:37:09 +02:00
Matthias Seitz
b295d73c4a
refactor(solc): rewrite compiler passes and cache change detection ( #802 )
...
* chore: clippy
* refactor: rewrite compiler passes and cache
* feat: more work on compile pipeline
* feat: add cache constructor
* add artifact filtering
* fine tune api
* feat: prepare version integration
* docs: more docs
* feat: add cacheentry2
* replace cacheentry types
* integrate new api
* docs: more docs
* feat: implement new output handler
* feat: integrate cached files in new compile pipeline
* refactor: more cache refactor
* docs: more docs
* feat: add source name mapping
* feat: implement new parallel solc
* refactor: do a little cleanup
* refactor: even more cleanup
* even more cleanup
* chore: make it compile
* chore: make it compile with all features
* chore: clippy fix
* feat: integrate new compiler pipeline
* docs: more docs
* refactor: move stuff around
* refactor: start deprecating output type
* chore: make it compile again
* chore(deps): bump solc version 0.2.0
* feat: unify output types
* cargo fix
* refactor: add contracts wrapper
* chore: replace ProjectCompileOutput
* docs: add more docs
* feat: add offline mode
* feat: more artifact helpers
* chore: cleanup cache
* chore: streamline types
* fix: better artifacts mapping
* chore: some cleanup
* chore: change artifact
* chore: add configure solc fn
* feat: add artifact reading
* feat: implement retain and extend
* feat: add cache extending
* feat: write to disk
* chore: make clippy happy
* feat: implement path mapping
* chore: nits
* feat: introduce states
* feat: add compiler state machine
* chore: move cache types to cache mod
* chore: make clippy happy
* feat: add debug derives
* fix: use resolved import source unit names
* fix: failing tests
* test: test multiple libs properly
* chore: make clippy happy
* chore: update CHANGELOG
* fix: doc tests
* fix: set offline mode correctly
* chore: make it compile again
* Update ethers-solc/src/artifacts.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* feat: find remappings by default
* typos
* add eth_syncing RPC (#848 )
* add eth_syncing RPC
* Changelo updated
* small comments
* Intermediate SyncingStatus
* fix(core): adjust Ganache for new cli output (#851 )
* fix: review comments
* fix: cache relative path bug
* chore: add cache example
* chore: use absolute paths
* fix: remove overwritten files from cache
* fix: rustfmt
* chore: more helper functions
* chore: export AggregatedOutput
* feat: implement helper functions
* feat: even more helpers
* fix: failing doc tests
* refactor: remove source name map tracking
* fix: determine artifacts in ephemeral mode
* refactor: allowed paths should not fail
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: rakita <rakita@users.noreply.github.com>
Co-authored-by: wolflo <33909953+wolflo@users.noreply.github.com>
2022-02-04 18:20:24 +02:00
James Prestwich
7e4e8e200a
refactor: replace anyhow with eyre ( #858 )
...
* refactor: replace anyhow with eyre
* chore: update changelog
* refactor: simplify bail logic for duplicate method signatures
* refactor: simplify bail logic throughout
* refactor: use eyre::ensure
* refactor: more idiomatic use of eyre
2022-02-02 22:44:53 +02:00
James Prestwich
5f68bf52d2
refactor: MultiAbigen rework ( #852 )
...
* refactor: MultiAbigen rework
* docs: update ensure family docs
* feature: FromIterator for MultiAbigen
* refactor: cleaner instantiation of Abigen from files
* docs: update examples to use build step
* chore: add 854 to changelog
* lint: clippy
* Update ethers-contract/ethers-contract-abigen/src/lib.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-02 15:57:31 +02:00
Matthias Seitz
8c07861b09
feat(codec): impl codec for Bytes ( #856 )
2022-02-02 13:57:39 +02:00
Rohit Narurkar
af94479d81
fix: derive serde Ser and De for log metadata ( #823 )
2022-01-21 14:30:57 +02:00
Eugene
cbfbd6052c
Implement trace_callMany ( #792 )
...
* Implement trace_callMany
* cargo fix and ignore flaky test for now
* Update ethers-providers/src/provider.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-01-15 12:41:43 +02:00
Matthias Seitz
d4f8984f59
chore(deps): bump ethabi master ( #787 )
2022-01-13 02:58:11 +02:00
thasarito
8e0eddbb57
feat: change abi_str to abi from contract in for hardhat abi ( #740 )
2022-01-08 11:17:36 +02:00
Matthias Seitz
2a98b34195
feat(abigen): search json recursively ( #733 )
2021-12-25 06:51:44 +02:00
thasarito
183c0d21c4
reexport multiabigen ( #731 )
2021-12-24 16:34:18 +02:00
Matthias Seitz
11406ee8d4
feat: add EventStream::select to combine multiple event streams ( #725 )
...
* feat: add EventStream::select to combine multiple event streams
* chore: update changelog
2021-12-23 21:23:55 +02:00
Matthias Seitz
c7cf5bedbd
feat(abigen): add MultiAbigen to generate multiple contract bindings ( #724 )
...
* feat(abigen): add MultiAbigen to generate multiple contract bindings
* docs: more docs
* chore: update changelog
* rustmft
* chore: add json extension check
2021-12-23 16:38:07 +02:00
Matthias Seitz
1f4ecc6e75
feat(abigen): add provided derives for call and event enums ( #721 )
...
* feat(abigen): add provided derives for call and event enums
* chore: update CHANGELOG
2021-12-20 23:24:21 +02:00
Georgios Konstantopoulos
be468bcf32
fix(abigen): use lib for parsing paths correctly in windows
2021-12-19 22:06:38 +02:00
Georgios Konstantopoulos
d7c29cc615
fix: configure rustls & openssl via feature flag ( #703 )
...
* chore(etherscan): allow specifying openssl or rustls
* chore(contract): allow specifying openssl or rustls
* chore(solc): allow specifying openssl or rustls
* chore: expose new rustls/openssl features at top level crate
* chore: bump tokio-tungstenite / remove dup rustls version
* chore: bump svm-rs
* fix: feature gate sha2-asm
* ci: remove --all-features from windows tests
* chore: do not enable sha2-asm by default
* fix: do not pull in svm-rs in wasm builds
* chore: use upstream svm again
2021-12-19 16:56:54 +02:00
Matthias Seitz
3c164bc9bf
feat(abigen): add EthAbiCodec proc macro ( #704 )
...
* feat(abigen): add EthAbiCodec proc macro
* rustfmt
* fix: tuple codec
2021-12-19 16:40:17 +02:00
Matthias Seitz
e24117a1e1
chore(clippy): make clippy happy ( #705 )
2021-12-19 06:28:38 +02:00
joshieDo
cf53924334
add deploy_tokens to ContractFactory ( #699 )
2021-12-17 00:01:00 +02:00
Alex Xiong
6cbdc89187
fix: avoid futures-util yanked err ( #693 )
2021-12-15 03:32:36 +01:00
Matthias Seitz
0769174b40
chore: allow unused http_get ( #674 )
...
* chore: allow unused http_get
* Update ethers-contract/ethers-contract-abigen/src/util.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* chore: update cfgs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-12-11 02:37:18 -07:00
Ivan Porto Carrero
a8b0885c25
add support for polygonscan and snowtrace for abigen ( #666 )
2021-12-10 09:05:45 -07:00
Matthias Seitz
59cf991828
feat(abigen): use structs for outputs ( #664 )
...
* feat(abigen): use structs for outputs
* update CHANGELOG
* make clippy happy
* fix lints
2021-12-09 16:00:59 -07:00
Matthias Seitz
0b1f3b1dcf
feat(solc): add support for library linking ( #656 )
...
* feat(solc): add support for library linking
* chore: update changelog
* fixbreaking compactref api
* rm check
* return Bytes instead
* revert changes
* simplify resolve
* test: add lost tests
2021-12-08 02:38:29 +02:00
Matthias Seitz
279a2c316c
feat(abigen): support overloaded functions with different casing ( #650 )
...
* fix: support overloaded functions with different casing
* chore: fmt
* chore: typos
* feat: better method alias handling
2021-12-05 12:36:49 -08:00
Matthias Seitz
2a3fcbbb40
feat(abigen): use AbiType when parsing Function abi signature fails at compile time ( #647 )
...
* refactor: improved from token impl
* feat: add AbiType support
* feat: no need for expect
* feat: add missing abiarraytype impl
* test: add struct derive test
* chore: rustfmt
* chore: update changelog
* chore: rustfmt
2021-12-04 06:19:00 +02:00
Matthias Seitz
5dfc1bd171
fix: source parsing for local paths ( #633 )
2021-11-29 19:02:11 +02:00
Matthias Seitz
e15252dd8f
fix: conditional http support ( #632 )
...
* fix: conditional http support
* chore: update changelog
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-11-29 16:31:39 +02:00
Matthias Seitz
f6e803b4eb
fix: use CARGO_MANIFEST_DIR as root for relative paths in abigen! ( #631 )
...
* feat: resolve env vars in abigen paths
* docs: add env interpolation note
* chore: docs
2021-11-29 15:37:11 +02:00
Matthias Seitz
9b6cc37ca0
fix: method deduplication ( #619 )
...
* fix: method deduplication
* fix: handle name conflicts in parameters
* fix: order of numerated aliases
2021-11-27 14:31:36 +02:00
Matthias Seitz
2c30468b70
fix(codec)!: ambiguity unit8[] and bytes ( #613 )
...
* fix: unit8 encoding
* feat: use ethers::types::Bytes for solidity bytes type
* feat: add const generic from impls
* fix: failing tests
* fix: make compatible with bytes
* update changelog
* make compatible with encoding changes
* chore rm write to file
2021-11-24 22:15:17 +02:00
Georgios Konstantopoulos
bb3a2fd27c
release: 0.6.0 ( #611 )
...
* release(core): 0.6.0
* release(providers): 0.6.0
* release(contract-abigen): 0.6.0
* release(contract-derive): 0.6.0
* release(derive-eip712): 0.2.0
* release(ethers-solc): 0.1.0
* release(contract): 0.6.0
* release(etherscan): 0.2.0
* release(signers): 0.6.0
* release(middleware): 0.6.0
* chore: update dev deps
* refactor(core): move docs to readme
* refactor(contract): move docs to readme
* refactor(providers): move docs to readme
* chore: bump ethers cargo toml
* refactor(signers): move docs to readme
* refactor(middleware): move docs to readme
* fix(ethers): adjust re-exports to allow searching internal packages
* docs: fix broken links
we cannot use relative crate imports because the readmes
are also imported by the parent crate
* alias readmes to be accessible to ethers crate
2021-11-23 21:23:12 +02:00
dependabot[bot]
fb42f043a2
chore(deps): bump futures-util from 0.3.17 to 0.3.18 ( #609 )
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.17 to 0.3.18.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.17...0.3.18 )
---
updated-dependencies:
- dependency-name: futures-util
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-23 13:23:53 +02:00
Ivan Porto Carrero
1d65c9394f
add support for polygon and avalanche ( #606 )
...
* add support for polygon and avalanche, include the block explorers
* add multicall addresses for polygon
2021-11-22 11:02:28 +02:00
univerz
a68f4ec9a7
perf(contract): remove clone ( #602 )
2021-11-21 18:12:49 +02:00
Matthias Seitz
d53ca0ea56
feat: make reqwest optional but enabled by default ( #580 )
...
* feat: make reqwest optional but enabled by default
* update changelog
2021-11-14 14:27:05 +02:00
Sebastian Martinez
e72636210c
Refactor crate determination in new ethers-macro crate ( #555 )
...
* fix: compute ethers-core path in derive eip712
Co-authored-by: Ryan <ryan.tate@fieldresponder.io>
* refactor: move crate determination to ethers-macro
* docs: update fmt command
* fix: change cargo_metadata dep to optional
Co-authored-by: Ryan <ryan.tate@fieldresponder.io>
2021-11-05 15:00:01 +02:00
Francesco Iannelli
bd3a704200
Feat/add call deployer ( #554 )
...
* contract: add .call() method to Deployer
It is now possible to dry run a contract deployment.
* add .call() method of Deployer to unreleased
* add PR to changelog
2021-11-04 15:02:05 +02:00