James Prestwich
f78edfeabb
feature: add legacy feature to ethers crate ( #384 )
2021-08-17 09:48:02 +03:00
James Prestwich
e98288d0d5
bugfix: disable type serialization when legacy feature is set ( #383 )
2021-08-17 00:12:30 +03:00
Georgios Konstantopoulos
6cb7cac675
Release: 0.4 ( #382 )
...
* fix(abigen): use `no_deps` to avoid touching a Cargo.lock
* fix: use once_cell default features
* release: publish versions
core/providers/signers: 0.4.6
contract: 0.4.7
middleware: 0.4.8
ethers: 0.4.0
2021-08-16 11:54:12 +03:00
Matthias Seitz
ba5f650dec
feat: generate rust structs from solidity JSON ABI ( #378 )
...
* add raw abi model
* feat: simplify struct representation
* feat: add struct generation
* use structs as function input
* fix: failing test
* add example
* rustfmt
2021-08-16 10:29:44 +03:00
Georgios Konstantopoulos
453504cb78
chore: remove default feature on futures-util from all crates
2021-08-15 20:25:11 +03:00
Rohit Narurkar
3c89c732b7
fix: signature fields should be U256 instead of H256 ( #379 )
...
* fix: signature fields should be U256 instead of H256
* fix: relevant changes for aws and ledger signer
2021-08-15 14:30:44 +03:00
Georgios Konstantopoulos
60ff4660df
feat: multiple addresses on Filter ( #375 )
...
* feat: support multiple addresses in filters
To support filtering of 1..n addresses we had to add the ValueOrArray
enum to the log types and refactor some ethers-contract code
Fixes : #240
Signed-off-by: Sebastian Martinez <sebastinez@me.com>
* chore: fmt
* fix: use legacy tx in unit test due to Ganache
Co-authored-by: Sebastian Martinez <sebastinez@me.com>
2021-08-12 19:19:24 +03:00
Georgios Konstantopoulos
99e9a687ca
fix: make gasPrice optional (since Type 2 transactions) ( #374 )
...
* fix: make gasPrice optional (since Type 2 transactions)
* chore: use new pkey for testnet txs to avoid nonce conflicts
2021-08-12 19:01:52 +03:00
georgewhewell
4cae82849f
add impl_fixed_types!(18) (fixes opensea abigen) ( #373 )
2021-08-12 17:43:55 +03:00
Georgios Konstantopoulos
4d4436a894
fix(core): use async-await-macro to fix docs.rs publishing
2021-08-12 17:08:51 +03:00
Georgios Konstantopoulos
1d79ec1360
chore: skip tx rlp test in celo
2021-08-09 04:01:17 +03:00
Georgios Konstantopoulos
25c2e0e199
feat(ethers-contract): typed txs (part 4) ( #362 )
...
* feat(contract): use eip-1559 txs by default
This may break any tests which use Ganache, since it only supports legacy transactions.
We should replace Ganache with hardhat where possible
* fix(providers): always try setting default_sender
* chore: make all test transactions legacy
* feat(multicall): allow submitting legacy txs
* chore: default to legacy txs via feature flag
This is useful for chains like Celo that do not support the Typed Envelope
* fix: use legacy txs in ds proxy deployment / tests
* chore: fix review comments
2021-08-09 03:50:38 +03:00
Georgios Konstantopoulos
dcbfacf5bc
feat: typed txs provider / middleware changes (part 3) ( #357 )
...
* feat(providers): add eth_feeHistory api
* add access list
* feat: fill transactions with access list / default sender info
* feat: add helpers for operating on the txs enum
* feat: send_transaction takes TypedTransaction now
* fix(contract): temp wrap all contract txs as Legacy txs
* feat(middleware): use TypedTransaction in Transformer
* feat(signers): use TypedTransaction in Wallet/Ledger
* feat(core): add helpers for setting typed tx fields
* feat(signer): use typed transactions
* fix(middleware): adjust nonce/gas/escalators for TypedTxs
The GPO and the Escalators will throw an error if they are provided an EIP1559 transaction
* fix(providers): ensure the correct account's nonce is filled
* fix: add .into() to txs until we make the fn call more generic
* Revert "fix: add .into() to txs until we make the fn call more generic"
This reverts commit 04dc34b26d0e3f418ed3fc69ea35ad538b83dd50.
* feat: generalize send_transaction interface
* fix: only set the nonce manually in the Signer middleware
* fix(transformer): fill the transaction after transformation
* chore: fix compilation errors & lints
* fix(signer): set the correct account's nonce
* feat: make trace_call / call take TypedTransaction
* fix: set sender to transaction in signer
* chore: ethgasstation broke
* chore: cargo fmt / lints
* Fix(signer): pass the chain id
* fix: final tx encoding fixes
1. Normalize v values for eip1559/2730
2. Make access lists mandatory for 1559
3. do not double-rlp on rlp_signed
* fix: set access list only if available
* test: check 1559 / 2930 txs
* fix: do not prepend a 0 for Legacy txs & test
* chore: code review comments
* chore: fix aws signer signature
2021-08-09 03:31:11 +03:00
Georgios Konstantopoulos
ccff9fc98f
feat: 1559/2930 txs (part 2) ( #355 )
...
* feat: add eip2930 tx type
* feat: add typed transaction enum
* chore: rlp_opt take reference to option
* feat: add eip-1559 tx type
* feat: add eip-1559 to the typed tx enum
* fix: references to rlp_opt / add access list setter
* chore: ignore etherchain and ethgasstation
Their APIs had a breaking change
* fix(1559/2930): serialize properly
1. The AccessList struct should have used RlpEncodableWrapper, otherwise we get extra bytes
2. The 1559/2930 types do not use eip-155-style replay protection
* feat: add helpers for operating on the txs enum
* chore: cargo fmt / lints
2021-08-09 01:59:07 +03:00
Georgios Konstantopoulos
09ff480f19
feat: eip2930/1559 response type adjustments (part 1) ( #353 )
...
* refactor: move tx types to subdirectory
* feat(receipt): add tx-type and effective gas price for eip1559
* feat: add base_fee_per_gas to Block
* feat(tx): add eip1559/2930/2718 ret values
* fix(middleware): return signed raw rlp from tx signer / adjust tests
* chore: remove unused vars
* chore(core): remove funty lock from Cargo.toml
* chore: rename json var / cargo fmt
* add more context on eip1559 fees
2021-08-09 01:49:23 +03:00
Georgios Konstantopoulos
9dca606eaf
fix: make chain_id mandatory ( #286 )
...
* chore: update deps (#352 )
* chore(deps): bump elliptic-curve from 0.10.4 to 0.10.5
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.10.4 to 0.10.5.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.10.4...elliptic-curve-v0.10.5 )
---
updated-dependencies:
- dependency-name: elliptic-curve
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* chore: bump deps
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix(core): make chain id mandatory
* fix(signers): make chain id mandatory
* test: make chain id mandatory
* test: add missing chain id
* fix: add missing chain id
* chore(wallet): set chain_id by default to 1
* ci: run CI on master
* fix(yubi): add missing chain id
* chore: skip ganache test with celo features
* ci: run only on push to master
* fix: add missing chain id
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-29 23:22:25 +03:00
Georgios Konstantopoulos
1cb2fe0247
chore: update deps ( #352 )
...
* chore(deps): bump elliptic-curve from 0.10.4 to 0.10.5
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.10.4 to 0.10.5.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.10.4...elliptic-curve-v0.10.5 )
---
updated-dependencies:
- dependency-name: elliptic-curve
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* chore: bump deps
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-27 23:55:55 +03:00
dependabot[bot]
19f95ad6ff
chore(deps): bump hex-literal from 0.3.2 to 0.3.3 ( #344 )
...
Bumps [hex-literal](https://github.com/RustCrypto/utils ) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/RustCrypto/utils/releases )
- [Commits](https://github.com/RustCrypto/utils/compare/hex-literal-v0.3.2...hex-literal-v0.3.3 )
---
updated-dependencies:
- dependency-name: hex-literal
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-07-26 11:23:47 +03:00
dependabot[bot]
faeec7d316
chore(deps): bump futures-util from 0.3.15 to 0.3.16 ( #348 )
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.15 to 0.3.16.
- [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.15...0.3.16 )
---
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-07-26 11:23:34 +03:00
Matthias Seitz
985509ac1c
feat: support additional ganache arguments ( #347 )
...
* feat: support additional ganache arguments
* feat: add fork argument option
2021-07-25 17:37:38 +03:00
Matthias Seitz
ed83223b93
cargo clippy --fix ( #346 )
2021-07-24 21:53:40 +03:00
dependabot[bot]
7ad94c2c5f
chore(deps): bump elliptic-curve from 0.10.3 to 0.10.4 ( #340 )
...
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.10.3 to 0.10.4.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.10.3...elliptic-curve-v0.10.4 )
---
updated-dependencies:
- dependency-name: elliptic-curve
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-07-13 12:54:59 +03:00
Jonathan LEI
4afa1c9517
Add util functions for bytes32 string encoding/decoding ( #337 )
2021-07-12 11:20:38 +03:00
Georgios Konstantopoulos
330b62c986
chore: bump ethabi to 14.1.0
2021-07-08 19:06:20 +03:00
Georgios Konstantopoulos
fc5f84e090
fix: use ethabi from master w/ fixed abiv2 bug
2021-07-08 15:05:46 +03:00
Zaki Manian
371b7d1576
Update crypto deps for ethers ( #333 )
...
* Update crypto deps for ethers
* Update version 0.4.0
* Missed a version
* Fix internal version dependencies
* chore: use published eth-keystore-rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-07-07 20:18:14 +03:00
dependabot[bot]
3234942d87
chore(deps): bump futures-util from 0.3.14 to 0.3.15 ( #290 )
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.14 to 0.3.15.
- [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.14...0.3.15 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-05 14:20:58 +03:00
dependabot[bot]
176d930cd9
chore(deps): bump elliptic-curve from 0.10.0 to 0.10.3 ( #323 )
...
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.10.0 to 0.10.3.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.10.0...elliptic-curve-v0.10.3 )
---
updated-dependencies:
- dependency-name: elliptic-curve
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-07-05 14:15:11 +03:00
dependabot[bot]
ffcef0afa8
chore(deps): bump thiserror from 1.0.24 to 1.0.26 ( #328 )
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.24 to 1.0.26.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.24...1.0.26 )
---
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>
2021-07-05 14:14:51 +03:00
Georgios Konstantopoulos
0453ea84df
chore: fix lints ( #329 )
2021-07-05 14:03:38 +03:00
dependabot[bot]
ce20e312e3
chore(deps): bump once_cell from 1.7.2 to 1.8.0 ( #317 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.7.2 to 1.8.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.7.2...v1.8.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>
2021-06-16 19:17:00 +03:00
Matthias Seitz
1dda336a78
feat: add filter utility function ( #316 )
...
* feat: add filter utility function
* chore: typo
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* chore: typo
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-06-13 20:39:36 +03:00
dependabot[bot]
c5b7ab66c6
chore(deps): bump elliptic-curve from 0.9.11 to 0.10.0 ( #311 )
...
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.9.11 to 0.10.0.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.9.11...elliptic-curve-v0.10.0 )
---
updated-dependencies:
- dependency-name: elliptic-curve
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>
2021-06-09 16:21:17 +03:00
guanqun
01cc80769c
feat: make I256::from_raw() as const ( #305 )
...
* feat: make I256::from_raw() as const
* misc: fix 'cargo fmt' issue
2021-06-01 17:36:02 +03:00
Matthias Seitz
4690f8effc
feat: support parsing solc contract abi output in string and array form ( #301 )
2021-05-28 10:46:44 +03:00
guanqun
28c5c4febd
docs: typo fix ( #292 )
2021-05-13 13:51:43 +03:00
Gabriel Coutinho de Paula
6ec8312b8c
Expose `LogMeta` type and add more fields, and expose FilterBlockOption ( #294 )
...
* Expose `LogMeta` and add more fields
* Add tests for `query_with_meta`
* Expose `FilterBlockOption`
* Run rustfmt
2021-05-13 13:51:27 +03:00
James Prestwich
b014ac9f27
feature: Signature derives Copy trait ( #288 )
...
* feature: Signature derives Copy trait
* drive-by: set Celo chain ID in tests
2021-05-09 12:47:21 +03:00
dependabot-preview[bot]
244f6b7606
chore(deps): bump k256 from 0.7.2 to 0.7.3 ( #277 )
...
Bumps [k256](https://github.com/RustCrypto/elliptic-curves ) from 0.7.2 to 0.7.3.
- [Release notes](https://github.com/RustCrypto/elliptic-curves/releases )
- [Commits](https://github.com/RustCrypto/elliptic-curves/compare/k256/v0.7.2...k256/v0.7.3 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-04-27 23:18:16 +03:00
dependabot-preview[bot]
3e2d818d4a
chore(deps): bump elliptic-curve from 0.9.6 to 0.9.11 ( #281 )
...
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.9.6 to 0.9.11.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.9.6...elliptic-curve-v0.9.11 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-04-27 20:52:39 +03:00
dependabot-preview[bot]
2b94066cd5
chore(deps): bump tokio from 1.4.0 to 1.5.0 ( #275 )
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.4.0...tokio-1.5.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-04-16 10:09:43 +03:00
dependabot-preview[bot]
b7b706b935
chore(deps): bump bincode from 1.3.2 to 1.3.3 ( #266 )
...
Bumps [bincode](https://github.com/servo/bincode ) from 1.3.2 to 1.3.3.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/compare/v1.3.2...v1.3.3 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-04-15 19:46:51 +03:00
dependabot-preview[bot]
332fe4887b
chore(deps): bump futures-util from 0.3.13 to 0.3.14 ( #268 )
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.13 to 0.3.14.
- [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.13...0.3.14 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-04-15 19:46:45 +03:00
Austin Abell
42b10cca9a
feat: implement IPC transport support ( #260 )
...
* Initial IPC setup
* Cleanup
* Oops
* change futures dependency reference
* Document, add prints, cleanup
* Fix logic
* Make result type consistent with crate
* Setup geth ipc config and tests
* Cleanup subscription test
* Switch hash function to siphash
* Update dep usage for ordering
* Use tempfile for better cleanup (and OS support)
* Replace prints with tracing logs
* Ignore test with Celo feat
* chore: remove debug logs and use default geth ipc path
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-04-08 09:52:31 +03:00
Rohit Narurkar
79862ffda5
feat: mnemonic phrase support for wallet ( #256 )
...
* feat: mnemonic phrase support for wallet
* refactor: better error handling and clippy linting
* fix: derive from path and tests
* chore: renamed package coins-bip39
* refactor: convenient builder API to setup mnemonic wallet
* refactor: re-export coins-bip39 for convenience
* clippy: fix warnings for multiple complex types in provider
* feat: randomly generated mnemonic phrase can be written to storage
2021-04-05 10:44:58 +03:00
Georgios Konstantopoulos
5eb31ceae9
chore: use latest ethabi ( #253 )
...
* chore: use latest ethabi
* chore: use re-exported ethereum types
2021-04-01 20:02:34 +03:00
Georgios Konstantopoulos
5dbed7cbd2
chore: use upstream ethabi ( #248 )
...
* chore: use upstream ethabi
* chore: make clippy happy
2021-03-31 11:20:08 +03:00
dependabot-preview[bot]
f3cb4f4f88
chore(deps): bump tokio from 1.2.0 to 1.4.0 ( #242 )
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.2.0 to 1.4.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.2.0...tokio-1.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-03-22 20:37:58 +02:00
Matthias Seitz
109337f138
feat: add async setup utility functions ( #241 )
...
* feat: add async compile and launch functions
* chore: update examples with new setup functions
* chore: disable setup for wasm32
2021-03-22 13:09:12 +02:00
dependabot-preview[bot]
021f79cb77
chore(deps): bump elliptic-curve from 0.9.4 to 0.9.5 ( #237 )
...
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.9.4 to 0.9.5.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.9.4...elliptic-curve-v0.9.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-03-18 07:33:03 +02:00
Matthias Seitz
c525c71d96
style: remove token instead cloning them ( #236 )
2021-03-18 07:31:49 +02:00
Georgios Konstantopoulos
05d2aa8579
feat: update ethabi ( #233 )
2021-03-17 00:28:06 +02:00
Gabriel Coutinho de Paula
530bfe2b71
feat: add support for EIP-234 and EIP-1898 ( #231 )
...
* Add support for EIP-234
* Add support for EIP-1898
* Remove redundant field names
* Remove useless conversion
* Change `unwrap_or` to `unwrap_or_else`
2021-03-16 21:46:07 +02:00
Matthias Seitz
57010c1c60
feat(abigen): include ethevent proc macro in abigen code gen workflow ( #232 )
...
* fix: make EthEvent name method a trait method
* refactor: make expand methods members of Context
* fix: make AbiParser parsing non consumeable
* feat: add struct expanding
* feat: use derive(EthEvent) in abigen workflow
* test: check EthEvent in abigen macro
* test: make test compile again
* refactor: simplify and optimize abi parsing from single str
* test: add human readable abigen tests
2021-03-16 21:37:19 +02:00
Matthias Seitz
7b10b76e20
feat: add EthEvent proc macro derive support ( #227 )
...
* refactor: extract error module and use error macros
* feat: add solidity struct parser
* refactor: add AbiParse and support struct parsing
* test: add more struct parsing tests
* feat: add EthAbiType proc macro derive for deriving Tokenizable trait
* test: add EthAbiType derive tests
* refactor: extract tokenizeable implementation in separate method
* chore(test): use EthAbiType derive instead implementing Detokenizeable
* feat: introduce EthEvent trait
* feat: add EthEvent proc macro derive support
* test: add proc macro derive tests
* chore: rustfmt
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-03-15 13:59:52 +02:00
Matthias Seitz
cf8e2391c8
feat: add struct parsing support for human readable ABI ( #226 )
...
* refactor: extract error module and use error macros
* feat: add solidity struct parser
* refactor: add AbiParse and support struct parsing
* test: add more struct parsing tests
2021-03-15 13:49:28 +02:00
Matthias Seitz
f599ae66f4
refactor: make human readable abi parsing more robust ( #225 )
...
* refactor: event parser
* refactor: function parser
* refactor: add constructor parser
* refactor: replace parsers
* style: extract event arg parsing into separate method
* fix: add missing returns statement
* chore(clippy): make clippy happy
* fix: support unnamed event argument parsing
2021-03-12 16:57:46 +02:00
dependabot-preview[bot]
08cacfeee8
chore(deps): bump serde from 1.0.123 to 1.0.124 ( #222 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.123 to 1.0.124.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.123...v1.0.124 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-03-08 09:48:24 +02:00
dependabot-preview[bot]
b425e2bd9a
chore(deps): bump hex from 0.4.2 to 0.4.3 ( #220 )
...
Bumps [hex](https://github.com/KokaKiwi/rust-hex ) from 0.4.2 to 0.4.3.
- [Release notes](https://github.com/KokaKiwi/rust-hex/releases )
- [Commits](https://github.com/KokaKiwi/rust-hex/compare/v0.4.2...v0.4.3 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-03-04 09:30:36 +02:00
Georgios Konstantopoulos
61767c8dd2
release: 0.2.2 ( #219 )
2021-03-04 09:30:27 +02:00
dependabot-preview[bot]
0c3bb7b9c1
chore(deps): bump once_cell from 1.7.0 to 1.7.2 ( #218 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.7.0 to 1.7.2.
- [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.7.0...v1.7.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-03-03 10:36:06 +02:00
dependabot-preview[bot]
ba536e4c32
chore(deps): bump bincode from 1.3.1 to 1.3.2 ( #211 )
...
Bumps [bincode](https://github.com/servo/bincode ) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/compare/v1.3.1...v1.3.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-03-03 00:30:00 +02:00
dependabot-preview[bot]
5081ca2ad1
chore(deps): bump serde_json from 1.0.62 to 1.0.64 ( #215 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.62 to 1.0.64.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.62...v1.0.64 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-03-02 14:53:33 +02:00
dependabot-preview[bot]
cf643e5ef1
chore(deps): bump once_cell from 1.6.0 to 1.7.0 ( #212 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.6.0 to 1.7.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.6.0...v1.7.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-25 09:17:02 +02:00
dependabot-preview[bot]
e88da4501c
chore(deps): bump once_cell from 1.5.2 to 1.6.0 ( #206 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.5.2 to 1.6.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.5.2...v1.6.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-23 09:31:12 +02:00
dependabot-preview[bot]
a3f7aabb7a
chore(deps): bump elliptic-curve from 0.9.3 to 0.9.4 ( #203 )
...
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.9.3 to 0.9.4.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.9.3...elliptic-curve-v0.9.4 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-22 10:04:30 +02:00
dependabot-preview[bot]
eb318a2689
chore(deps): bump thiserror from 1.0.23 to 1.0.24 ( #204 )
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.23 to 1.0.24.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.23...1.0.24 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-22 10:04:18 +02:00
dependabot-preview[bot]
6f26490385
chore(deps): bump elliptic-curve from 0.9.2 to 0.9.3 ( #198 )
...
Bumps [elliptic-curve](https://github.com/RustCrypto/traits ) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/elliptic-curve-v0.9.2...elliptic-curve-v0.9.3 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-18 11:27:22 +02:00
Georgios Konstantopoulos
e82b09f521
Update deps ( #196 )
...
* chore: bump ethtypes and ethabi
* chore: bump elliptic curve
2021-02-16 20:58:45 +02:00
Georgios Konstantopoulos
a43299c838
fix(abigen): correctly parse params in human readable abi ( #194 )
...
* fix(abigen): correctly parse params in human readable abi
* chore: make clippy happy
* test: remove unwrap
* chore: make clippy happy again
* chore: fix contract.rs example
* chore: rename to contract using human readable format
* examples: add abigen example with path to abi
* fix: pin funty version to fix bitvec error
* chore: remove unused import
* chore: fix deps
2021-02-16 19:10:26 +02:00
dependabot-preview[bot]
6e5fd198cb
chore(deps): bump serde_json from 1.0.61 to 1.0.62 ( #190 )
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.61 to 1.0.62.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.61...v1.0.62 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-10 11:55:48 +02:00
Rohit Narurkar
4c8d3c81e7
Feat/is middleware signer ( #182 )
...
* feat: signature from_str can handle 0x-prefixed strings
* feat: add is_signer method to the middleware trait
* fix: eth_sign Signature deserialisation
* chore: refactor for cleaner decoding of Signature
2021-01-28 08:51:53 +02:00
dependabot-preview[bot]
b69f68f089
chore(deps): bump serde from 1.0.120 to 1.0.123 ( #181 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.120 to 1.0.123.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.120...v1.0.123 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-01-26 17:41:58 +02:00
dependabot-preview[bot]
11e3284f22
chore(deps): bump serde from 1.0.119 to 1.0.120 ( #176 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.119 to 1.0.120.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.119...v1.0.120 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-01-23 12:31:24 +02:00
James Prestwich
1048652a8c
doc: note EIP-658 in TransactionReceipt ( #178 )
2021-01-23 10:38:21 +02:00
Rohit Narurkar
3105431007
feat: Transformer middleware with DsProxy impl ( #165 )
...
* feat: basic structure of proxy wallet middleware with DsProxy
* feat: build DsProxy contract, minor fixes, naming convention changes
* fix: add provider error in contract error
* fix: left pad storage value
* fix: delete gnosis safe for now
* feat(ds_proxy): execute code or target
* test(ds_proxy): transformer middleware tests
* fix: clippy should be happy
* fix(tests): ds proxy execute code
* chore: add documentation
* chore: formatting
2021-01-22 11:25:22 +02:00
Georgios Konstantopoulos
1b12fd8aff
I256 implementation ( #175 )
...
* Resolve: add I256 implementation
* Resolve: add I256 implementation - Untracked files
* fix: make i256 tests work
Co-authored-by: 1saf <me@ansaf.net>
2021-01-19 14:21:46 +02:00
dependabot-preview[bot]
fe4de53d84
chore(deps): bump k256 from 0.7.1 to 0.7.2 ( #156 )
...
Bumps [k256](https://github.com/RustCrypto/elliptic-curves ) from 0.7.1 to 0.7.2.
- [Release notes](https://github.com/RustCrypto/elliptic-curves/releases )
- [Commits](https://github.com/RustCrypto/elliptic-curves/compare/k256/v0.7.1...k256/v0.7.2 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-01-17 14:23:51 +02:00
Georgios Konstantopoulos
0b9375688e
fix: switch between units correctly ( #170 )
2021-01-17 14:10:30 +02:00
Georgios Konstantopoulos
fc4b3e4ce4
release: bump to 0.2.0 ( #151 )
2021-01-13 20:10:50 +02:00
dependabot-preview[bot]
177f0c3eb9
chore(deps): bump serde from 1.0.118 to 1.0.119 ( #146 )
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.118 to 1.0.119.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.118...v1.0.119 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-01-12 10:02:30 +02:00
dependabot-preview[bot]
c74b31a394
chore(deps): bump bytes from 1.0.0 to 1.0.1 ( #145 )
...
Bumps [bytes](https://github.com/tokio-rs/bytes ) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/tokio-rs/bytes/releases )
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md )
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.0.0...v1.0.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-01-12 10:01:57 +02:00
Rohit Narurkar
b1461cc48d
Support for encrypted JSON keystore ( #138 )
...
* feat: add support for encrypted json keystores
* fix: ignore gitkeep file from keystore tests
* feat: use tempfile crate for temporary test dir/files
2021-01-11 11:39:14 +02:00
Georgios Konstantopoulos
29a3a16085
chore: upgrade to latest ethtypes ( #137 )
...
* chore: upgrade to latest ethtypes
* chore: fix doctests
2021-01-10 14:03:37 +02:00
Georgios Konstantopoulos
5c1f8f532a
Upgrade to Tokio 1.0 and remove async-std ( #120 )
...
* feat(providers): tokio 1.0
BREAKING: This removes async-std as a compatibility option
* feat: tokio 1.0 in rest of crates
* fix: patch Cargo.toml until deps are released
* fix(contract): load ws deps
* feat: bytes 1.0 (#121 )
* feat(core): move to bytes::Bytes
* feat: adjust rest of crates to Bytes
* chore: bump deps
CI fails due to:
https://github.com/snapview/tokio-tungstenite/pull/142#discussion_r550445144
* chore: use latest tokio-tungstenite
* ci: split tests into jobs (#129 )
* Switch to `hex` (#128 )
* fix(core): replace rustc_hex with hex
* fix(providers): replace rustc_hex with hex
* chore: replace rustc-hex with hex
* chore: cargo fmt
* fix(ledger): copy address from string correctly
* chore: fix flaky tests
Fixes #105
2020-12-31 19:19:14 +02:00
Georgios Konstantopoulos
5860a1df6c
Trim some dependencies ( #116 )
...
* core: trim deps
* providers: trim deps
* contract: trim deps
* middleware: trim deps
* signers: trim deps
2020-12-25 02:17:21 +02:00
Georgios Konstantopoulos
dc4c2a807e
feat(providers): add tracing ( #113 )
...
* feat(provider): add async tracing
* feat(middleware): add tracing to gas escalator
* chore: make clippy happy
2020-12-24 22:23:05 +02:00
Georgios Konstantopoulos
e9204ac72d
chore: remove dead code
2020-12-24 17:47:32 +02:00
Georgios Konstantopoulos
ca1283b23a
docs: fix broken links
2020-12-24 17:44:26 +02:00
Georgios Konstantopoulos
b0bfd550fb
fix: reschedule waker if receipt is immediately available ( #103 )
...
* fix: reschedule waker if receipt is immediately available
* chore: update minor deps
`cargo update`
* chore: make clippy happy
2020-12-16 14:05:16 +02:00
Georgios Konstantopoulos
1ece5d2020
Contract & Provider eth_subscribe support ( #100 )
...
* fix(block): fix block decoding from ws
* feat(pubsub): add pubsub traits and sub stream
Also use DeserializeOwned alias
* feat(transports): add notification type
* feat(ws): rewrite Ws for subscription support
* feat(provider): add eth_subscribe
* fix(celo): disable some celo tests due to ganache incompatibilities
* test(rinkeby): fix flaky test
* feat(contract): WS subscription bindings (#101 )
* feat(middleware): add subscriptions to middleware methods
* feat(contract): add subscribe method to contracts
2020-11-30 11:33:06 +02:00
Georgios Konstantopoulos
84aafbbd1f
Misc Fixes ( #97 )
...
* fix: use generic instead of impl Trait
* fix: do not skip first 4 bytes when decoding outputs
2020-11-12 12:08:20 +02:00
Georgios Konstantopoulos
c30f45fc72
feat: port over tracing from rust-web3 ( #93 )
2020-10-31 12:44:08 +02:00
Rohit Narurkar
d67efc9190
fix: default param name if not found following memory/calldata ( #91 )
2020-10-30 12:15:34 +02:00
Georgios Konstantopoulos
eb26915081
feat: allow encoding/decoding function data ( #90 )
...
* feat: allow encoding/decoding function data
* feat: allow decoding event data
* feat: human readable abi
inspired from https://blog.ricmoo.com/human-readable-contract-abis-in-ethers-js-141902f4d917
* test: add event / fn decoding tests
* chore: fix clippy
* feat(abigen): allow providing args in human readable format
2020-10-29 09:48:24 +02:00
Georgios Konstantopoulos
a22f1f9aa0
Geth TxPool API Support ( #86 )
...
* feat: support for txpool API
* feat: add a geth spawner test helper
* fix(txpool): use TxRequest instead of new data struct
The `raw` field is no longer present in latest geth's response.
* fix(txpool): use proper api response format
ref: https://github.com/ethereum/go-ethereum/pull/21720
Also add a Geth test
* ci: install geth 1.9.23
Co-authored-by: Rohit Narurkar <rohit.narurkar@protonmail.com>
2020-10-24 11:13:13 +03:00
Georgios Konstantopoulos
938972e9cc
Address checksum ( #85 )
...
* feat: addr checksum encoding
* fix: replace format! with encode to hex
* chore: Fix celo tests
* perf(checksum): convert loop to iterator
Co-authored-by: Rohit Narurkar <rohit.narurkar@protonmail.com>
2020-10-18 13:22:10 +03:00
Georgios Konstantopoulos
ac93c0bc65
fix: update signature error
2020-10-14 14:59:31 +03:00
Georgios Konstantopoulos
aa37f74c4b
feat: generalize wallet/private key + yubihsm2 ( #75 )
...
* feat: generalize wallet/private key
* fix: adjust celo tests
* YubiHSM2 Support (#76 )
* feat: support YubiHSM2
2020-10-02 11:41:16 +03:00
Georgios Konstantopoulos
c65497543e
feat: convert signing to k256 ( #72 )
...
* feat: convert signing to k256
* fix: pass pre-hashed message to sig verification
* feat: wrap the hash to a Digest implementation
* refactor: cleanup and move digest impl to separate file
* chore: adjust abigen tests due to rust update
* test: add byte equality test between ethers-rs / web3.js signatures
* fix(keys): use 512 blocks for sha256
Co-authored-by: Rohit Narurkar <rohit.narurkar@protonmail.com>
Co-authored-by: Alex Vlasov <alex.m.vlasov@gmail.com>
2020-10-01 11:02:21 +03:00