James Prestwich
d6fea13d23
feature: providererror conversion to middleware error ( #1920 )
...
* feature: providererror conversion to middleware error
* chore: update changelog
2022-12-02 12:12:14 -08:00
Dan Cline
5af2800f15
fix(core): always set p2p port in non-dev mode ( #1919 )
...
* if geth is in non-dev mode, it has been explicitly set by either
disabling discovery or setting a p2p port. To prevent geth from
crashing if another process is using the default p2p port, always set
the p2p port if geth is in non-dev mode.
2022-12-02 12:11:31 -08:00
Andrea Simeoni
c4e09f261e
Fix: handle panic on Ws error ( #1915 )
...
* On Ws error close all active subscriptions and force clients to reconnect. the Websocket.
* Comment typos
* Unit tests
Lint
cargo +nightly fmt
* - Added CHANGELOG entry
- Added `#` prefix to issue IDs where missing
* ownership typo
Co-authored-by: Andrea Simeoni <>
2022-12-01 11:00:10 -08:00
Matthias Seitz
0ce6b107d6
fix: make version detection infallible ( #1916 )
2022-12-01 06:14:51 -08:00
Dan Cline
4b685621ed
feat(providers): add a subset of admin namespace ( #1880 )
...
* tell Geth to expose the admin namespace
* wip: add admin namespace support
* add networking and peer related structs
* add rest of chain config fields
* add datadir to geth
* fix data dir ref
* add dev flag to geth
* set dev only if block_time is not set
* put mutually exclusive options in an enum
* make block_time use the devmode enum
* add p2p port to geth
* add basic impls for admin endpoints
* move from_int_or_hex to ethers-core utils
* fix nodeinfo protocol field
* the type is better represented by a struct which can have either eth
or snap
* add chain id and discovery toggle for Geth
* remove PeerEvent
* should re-add when peer event endpoints are implemented
* simplify serde options for admin responses
* change signature for peer modification apis
* these admin apis accept an enode, which _may_ be an enr, but could
also be a legacy enode "v4" url.
* add note on where `ChainConfig` fields come from
* add note on PeerInfo about the source of fields
* add admin namespace support to CHANGELOG
* update pr number in changelog
* cargo fmt
* move chainconfig to genesis in utils
* accept genesis file in geth
* add genesis writing to geth spawn
* finally get geth nodes to connect
* import io::Read in provider tests
* fix PeerInfo and use enode id for provider test
* make clippy happy
* improve documentation for genesis module
* remove not(wasm) attributes on genesis module
* remove debugging printlns
* remove io::Read from provider tests
* add failing post merge test case
* add full mainnet nodeinfo for testing
* support deserializing json bignums to U256
* the serde_json arbitrary_precision feature is necessary so the
serde_json::Number variant of `IntOrHexOrBigNum` can be converted
into a string and fed into U256::from_dec_string
* fix from_int_or_hex_opt doc string
* remove third variant from IntOrHex
* unnecessary since serde_json::Number handles smaller ints as well
* add comments for ids
* fix enode id type in admin_peers provider test
* fix admin typo in Cargo.toml
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* add method to wait on a gethinstance adding a peer
* fix dial loop and wait_to_add_peer doc comments
* update geth
* the build can be updated by changing the GETH_BUILD env var
* wait for geth to exit on drop
* remove unnecessary wait
* fix mid-handshake PeerInfo deserialization
* remove println
* make tests less flaky
* handle discovery with the rest of the non dev opts
* dump geth stderr to debug failing ci test
* add method which dumps the unread stderr of the geth instance into a
string
* remove call_raw debug println
* bug is due to authrpc endpoint being in use
* use unused port when authrpc port is not specified
* remove dump_stderr from GethInstance
* did not work properly anyways
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-11-30 13:22:44 -08:00
DaniPopes
2d793edc94
fix(contract): multicall decode error ( #1907 )
...
* wip
* use empty bytes for reverts
* minor improvements
* fix test
* use is_empty
* docs
* clippy
* fix: rust-analyzer bug
* revert rename
2022-11-30 13:20:22 -08:00
dependabot[bot]
bbe53bfa2a
chore(deps): bump tokio-tungstenite from 0.17.2 to 0.18.0 ( #1908 )
...
Bumps [tokio-tungstenite](https://github.com/snapview/tokio-tungstenite ) from 0.17.2 to 0.18.0.
- [Release notes](https://github.com/snapview/tokio-tungstenite/releases )
- [Changelog](https://github.com/snapview/tokio-tungstenite/blob/master/CHANGELOG.md )
- [Commits](https://github.com/snapview/tokio-tungstenite/compare/v0.17.2...v0.18.0 )
---
updated-dependencies:
- dependency-name: tokio-tungstenite
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-11-30 13:20:04 -08:00
DaniPopes
866d30593a
feat(core): Chain impls and refactoring ( #1909 )
...
* sort
* derive Default
* use u64 for conversions and add impl
* one impl block and comments
2022-11-30 13:19:05 -08:00
Matthias Seitz
17addcfd91
fix(abigen): rm wrong brackets ( #1914 )
2022-11-30 13:14:40 -08:00
MouseLess.eth
82f19e0789
fix: txpool_inspect unable to parse contract creations ( #1905 )
...
* Fixes #1899
* replace match with if let some() else
* fix error: number too large to fit in target type
* Apply suggestions from code review
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2022-11-29 13:18:18 -08:00
Matthias Seitz
d48187ac0d
feat(provider): check for serde error with missing req id ( #1910 )
2022-11-29 07:48:58 -08:00
dependabot[bot]
79e64a8378
chore(deps): bump chrono from 0.4.20 to 0.4.23 ( #1900 )
...
Bumps [chrono](https://github.com/chronotope/chrono ) from 0.4.20 to 0.4.23.
- [Release notes](https://github.com/chronotope/chrono/releases )
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md )
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.20...v0.4.23 )
---
updated-dependencies:
- dependency-name: chrono
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-11-28 12:20:56 -08:00
dependabot[bot]
4d5e032129
chore(deps): bump syn from 1.0.103 to 1.0.104 ( #1901 )
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.103 to 1.0.104.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.103...1.0.104 )
---
updated-dependencies:
- dependency-name: syn
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-11-28 12:20:47 -08:00
Andrea Simeoni
16ab3d5820
Feat middleware stack builder ( #1890 )
...
* ProviderBuilder struct + docs
* README
* Docs typos
* Removed useless Arc
Rename module
* Unit tests
* cargo +nightly fmt
* CHANGELOG
* CHANGELOG typo
* ci: fix docs job
* review: Removed Option<M>. Builder functions directly consume self.
* feat: `with_signer` builder function
* feat: `nonce_manager` builder function
* feat: `gas_oracle` builder function
* Unit tests
* Docs
* fix: cargo +nightly fmt
* Update ethers-middleware/src/builder.rs
Typo
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* Builder functions provided as a trait
Update docs
Update tests
* cargo +nightly fmt
* CHANGELOG
Co-authored-by: Andrea Simeoni <>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2022-11-28 12:16:21 -08:00
Georgios Konstantopoulos
ed47eaadad
chore: pin env-logger
2022-11-27 12:32:57 -08:00
Georgios Konstantopoulos
f2ebb16372
(cargo-release) version 1.0.2
2022-11-27 12:27:58 -08:00
Georgios Konstantopoulos
93b2723d74
(cargo-release) version 1.0.2
2022-11-27 12:27:58 -08:00
Georgios Konstantopoulos
3e29aaa82d
(cargo-release) version 1.0.2
2022-11-27 12:27:57 -08:00
Georgios Konstantopoulos
71e2727ae3
(cargo-release) version 1.0.2
2022-11-27 12:27:57 -08:00
Georgios Konstantopoulos
f6f150ca28
(cargo-release) version 1.0.2
2022-11-27 12:27:57 -08:00
Georgios Konstantopoulos
78e89f8efa
(cargo-release) version 1.0.2
2022-11-27 12:27:57 -08:00
Georgios Konstantopoulos
8034fd0e91
(cargo-release) version 1.0.2
2022-11-27 12:27:56 -08:00
Georgios Konstantopoulos
c627765871
(cargo-release) version 1.0.2
2022-11-27 12:27:56 -08:00
Georgios Konstantopoulos
4a70dc5614
(cargo-release) version 1.0.2
2022-11-27 12:27:56 -08:00
Georgios Konstantopoulos
758a0e5b6e
(cargo-release) version 1.0.2
2022-11-27 12:27:56 -08:00
Georgios Konstantopoulos
e993d4c953
(cargo-release) version 1.0.2
2022-11-27 12:27:55 -08:00
Georgios Konstantopoulos
1b495dd143
(cargo-release) version 1.0.2
2022-11-27 12:27:55 -08:00
DaniPopes
97eecaf03b
fix(core): format_units overflow ( #1894 )
...
* fix(core): format_units overflow
* fix: formatting
* remove dbg
* add comment and rerun ci
* tests
* fix test
* refactor: move magic nums to consts
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-11-27 12:27:27 -08:00
Andrea Simeoni
b0ef1343dd
fix: close example subscriptions after 2 emitted items ( #1892 )
...
cargo +nightly fmt
Co-authored-by: Andrea Simeoni <>
2022-11-26 08:42:41 -08:00
dependabot[bot]
585280f29c
chore(deps): bump env_logger from 0.9.3 to 0.10.0 ( #1891 )
...
Bumps [env_logger](https://github.com/rust-cli/env_logger ) from 0.9.3 to 0.10.0.
- [Release notes](https://github.com/rust-cli/env_logger/releases )
- [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-cli/env_logger/compare/v0.9.3...v0.10.0 )
---
updated-dependencies:
- dependency-name: env_logger
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-11-25 13:10:09 -08:00
Matthias Seitz
c542844424
fix: handle non existing Cargo.toml edge case ( #1886 )
2022-11-23 07:35:55 -08:00
Matthias Seitz
84f896f47b
chore(clippy): make clippy happy ( #1888 )
2022-11-23 07:35:38 -08:00
dependabot[bot]
c17c0c3c95
chore(deps): bump cargo_metadata from 0.15.1 to 0.15.2 ( #1878 )
...
Bumps [cargo_metadata](https://github.com/oli-obk/cargo_metadata ) from 0.15.1 to 0.15.2.
- [Release notes](https://github.com/oli-obk/cargo_metadata/releases )
- [Changelog](https://github.com/oli-obk/cargo_metadata/blob/main/CHANGELOG.md )
- [Commits](https://github.com/oli-obk/cargo_metadata/compare/v0.15.1...v0.15.2 )
---
updated-dependencies:
- dependency-name: cargo_metadata
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-11-22 13:16:56 -08:00
dependabot[bot]
fa96f4ef10
chore(deps): bump serde-aux from 4.1.0 to 4.1.2 ( #1874 )
...
Bumps [serde-aux](https://github.com/vityafx/serde-aux ) from 4.1.0 to 4.1.2.
- [Release notes](https://github.com/vityafx/serde-aux/releases )
- [Commits](https://github.com/vityafx/serde-aux/commits )
---
updated-dependencies:
- dependency-name: serde-aux
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-11-22 13:16:48 -08:00
dependabot[bot]
3e7f307cd2
chore(deps): bump rayon from 1.5.3 to 1.6.0 ( #1875 )
...
Bumps [rayon](https://github.com/rayon-rs/rayon ) from 1.5.3 to 1.6.0.
- [Release notes](https://github.com/rayon-rs/rayon/releases )
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md )
- [Commits](https://github.com/rayon-rs/rayon/compare/v1.5.3...rayon-core-v1.6.0 )
---
updated-dependencies:
- dependency-name: rayon
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-11-22 13:16:37 -08:00
Noah Citron
fa0ce0c750
feat: retry client wasm support ( #1877 )
...
* wasm support for retry client
* fix conection err check
* fix lockfile
* remove unused comment
2022-11-22 13:16:23 -08:00
dependabot[bot]
6b5f130ba2
chore(deps): bump bytes from 1.2.1 to 1.3.0 ( #1879 )
...
Bumps [bytes](https://github.com/tokio-rs/bytes ) from 1.2.1 to 1.3.0.
- [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/commits )
---
updated-dependencies:
- dependency-name: bytes
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-11-22 13:15:45 -08:00
Andrea Simeoni
845aa4920f
feat: Instantiate an event builder without a contract instance ( #1882 )
...
* Build an `Event` without requiring a contract instance
* Contract unit test
* Function to set Event address
* Example
* Typo to improve readability
* CHANGELOG
* cargo +nightly fmt
* FIX conflict
* review: applied Address alias
Co-authored-by: Andrea Simeoni <>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-11-22 13:15:36 -08:00
Matthias Seitz
f4b6178332
chore: add missing ParseUnit impls ( #1885 )
2022-11-22 13:08:23 -08:00
Matthias Seitz
49dc487676
feat: add another rate limit retry check ( #1881 )
2022-11-22 13:08:04 -08:00
Matthias Seitz
616bd92cc4
fix: mock ethers mod layout ( #1884 )
2022-11-22 13:07:51 -08:00
Andrea Simeoni
f3eee4cf3f
Get gas price in USD using a Chainlink oracle ( #1872 )
...
Co-authored-by: Andrea Simeoni <>
2022-11-20 12:39:14 -08:00
Dave Belvedere
95d6567adc
chore: bump trezor, fix clippy ( #1871 )
...
* chore: bump trezor, fix clippy
* update cargo lock
Co-authored-by: Dave Belvedere <dave@protonmail.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-11-20 12:38:41 -08:00
Georgios Konstantopoulos
f829bd6876
chore: bump open-fastrlp
2022-11-18 12:01:07 -08:00
Will Smith
9d75e5f178
Fix: use cwd manifest ( #1869 )
...
* fix(abigen): make compatible with older rust versions
* Update ethers-contract/ethers-contract-abigen/src/multi.rs
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* fix: linting
* fix(abigen): use active cargo.toml over crate cargo.toml
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2022-11-17 11:23:10 -08:00
dependabot[bot]
f5da30d23b
chore(deps): bump ethabi from 17.2.0 to 18.0.0 ( #1865 )
...
* chore(deps): bump ethabi from 17.2.0 to 18.0.0
Bumps [ethabi](https://github.com/rust-ethereum/ethabi ) from 17.2.0 to 18.0.0.
- [Release notes](https://github.com/rust-ethereum/ethabi/releases )
- [Changelog](https://github.com/rust-ethereum/ethabi/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-ethereum/ethabi/compare/v17.2.0...v18.0.0 )
---
updated-dependencies:
- dependency-name: ethabi
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
* chore: bump open-fastrlp
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-11-17 11:17:22 -08:00
Will Smith
a525659f5d
fix(abigen): make compatible with older rust versions ( #1868 )
...
* fix(abigen): make compatible with older rust versions
* Update ethers-contract/ethers-contract-abigen/src/multi.rs
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* fix: linting
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2022-11-17 10:43:41 -08:00
dependabot[bot]
0e51835a33
chore(deps): bump reqwest from 0.11.12 to 0.11.13 ( #1866 )
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.11.12 to 0.11.13.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.11.12...v0.11.13 )
---
updated-dependencies:
- dependency-name: reqwest
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-11-16 20:40:09 -08:00
Dave Belvedere
29fb49b712
Rust already exists on the platform - update it instead ( #1864 )
...
Co-authored-by: Dave Belvedere <dave@protonmail.com>
2022-11-16 16:03:15 -08:00
Dave Belvedere
a0fb1bf196
I256 parse support ( #1863 )
...
* Added support for I256 in format_units. Added two complement support for I256.
* Add I256 support into parse_units
Co-authored-by: Dave Belvedere <dave@protonmail.com>
2022-11-16 16:03:07 -08:00