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
Meet Mangukiya
e0db2f0606
`get_paginated_logs` fixes and refactoring ( #1328 )
...
* fix(providers): do not load boundry blocks on every page
* refactor(providers): make get_paginated_logs TryStream
2022-05-31 09:43:03 -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
Meet Mangukiya
e3ab2feada
feat(providers): add `RetryClient` ( #1302 )
...
* feat(providers): add RateAwareClient
* feat(providers): add RetryClient
* remove RateAwareClient
* feat(providers): add RetryPolicy, Backoff traits and some implementations
* remove backoff abstractions
* fix doc tests
* add helper methods for RetryClient Provider
* remove backoff wasm dependency
* remove conflicitng impl for TryFrom<&str>, etc.
* update docs and remove backoff crate dependency
* fix tests
* fix backoff formula
* use value, string is not leading to corerct serialization
* catch 429 error thrown as JsonRpcError
* fix requests_enqueued, make backoff and max retries configurable
* fix doc tests
* fix tests
* use match statement
* revert incorrect change
* ms precision backoffs, remove reduntant continue
2022-05-27 14:02:16 -07:00
Meet Mangukiya
266b1f4777
chore: fix wasm warnings ( #1312 )
2022-05-27 10:10:51 -04: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
Meet Mangukiya
a150666d54
feat: add paginated logs ( #1285 )
...
* feat: add paginated logs
* docs: add paginated_logs example
* remove unpin
2022-05-23 14:23:35 -07:00
Georgios Konstantopoulos
f237f85959
chore: log error on ws unexpected close
2022-05-23 11:58:49 -07:00
Bryan Stitt
9ed9395c2c
return instead of ignore error ( #1287 )
...
* return error instead of swallow error
* changelog
Co-authored-by: Bryan Stitt <bryan@satoshiandkin.com>
2022-05-23 11:58:41 -07:00
rakita
4301447155
relax thiserror minor version constraint ( #1294 )
2022-05-23 11:41:30 -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
Georgios Konstantopoulos
4c75e4ae19
test: expose test provider url
2022-05-18 13:41:11 -07:00
Matthias Seitz
7509e42d3b
fix: serialize eth_getStorageAt position param as quantity ( #1281 )
...
* fix: serialize eth_getStorageAt position param as quantity
* test: add quantity test
2022-05-18 07:49:32 -07:00
dependabot[bot]
6053c928b1
chore(deps): bump tokio-util from 0.7.1 to 0.7.2 ( #1270 )
...
Bumps [tokio-util](https://github.com/tokio-rs/tokio ) from 0.7.1 to 0.7.2.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.1...tokio-util-0.7.2 )
---
updated-dependencies:
- dependency-name: tokio-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>
2022-05-16 10:21:27 -07:00
Meet Mangukiya
b15d0f8643
feat(providers): load previous logs before subscribing ( #1264 )
...
* feat(providers): load previous logs before subscribing
Load previous logs and stream it back to the user before establishing
a new stream for streaming future logs.
Closes #988
* docs: add subscribe_logs example
* fix clippy errors
* refactor: use VecDeque and address review
2022-05-16 08:11:25 -07:00
oliver-giersch
3df1527cef
fix: all request ids start at 1 ( #1265 )
...
Co-authored-by: Oliver Giersch <oliver.giersch@gmail.com>
2022-05-14 16:31:40 -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
ce3ebaefa0
chore(clippy): make clippy happy ( #1230 )
2022-05-06 08:15:49 -07:00
James Prestwich
c70cd81de0
feature: pending transaction retries repeatedly before assuming dropped ( #1221 )
2022-05-05 07:22:47 -07:00
Georgios Konstantopoulos
f5de81e783
chore: fix typo in provider readme
...
supersedes https://github.com/gakonst/ethers-rs/pull/1203
2022-05-02 22:47:42 +03:00
Astronaut Sleuth
fcc2151b1a
update document to enable ws & rustls / openssl if user wants to use websockets ( #1197 )
2022-05-02 12:33:55 -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
oliver-giersch
a115e957db
refactors ipc transport internals ( #1174 )
...
* refactors ipc transport internals
ran cargo +nightly fmt
fixes typo
remove some commented out code
* remove one unnecessary return stmt
Co-authored-by: Oliver Giersch <oliver.giersch@b-tu.de>
Co-authored-by: Oliver Giersch <oliver.giersch@gmail.com>
2022-04-24 16:09:56 +02:00
Matthias Seitz
35c29c82c6
chore: silence unused warnings ( #1162 )
2022-04-21 19:30:02 +02:00
dependabot[bot]
4d43cb822a
chore(deps): bump tracing from 0.1.33 to 0.1.34 ( #1147 )
...
Bumps [tracing](https://github.com/tokio-rs/tracing ) from 0.1.33 to 0.1.34.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.33...tracing-0.1.34 )
---
updated-dependencies:
- dependency-name: tracing
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-04-18 09:56:07 -07:00
Matthias Seitz
02ad93a1cf
feat(provider): add RwClient ( #1016 )
...
* feat(provider): add RwClient
* docs: fix failing doc test
2022-04-13 13:21:52 -07:00
dependabot[bot]
b4caa25c45
chore(deps): bump tracing from 0.1.32 to 0.1.33 ( #1132 )
...
Bumps [tracing](https://github.com/tokio-rs/tracing ) from 0.1.32 to 0.1.33.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.32...tracing-0.1.33 )
---
updated-dependencies:
- dependency-name: tracing
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-04-11 01:02:53 -07:00
oliver-giersch
db1870c891
Fix IPC handling of jsonrpc errors ( #1123 )
...
* fixes ipc jsonrpc error handling, use json RawValue where sensible
* ran cargo +nightly fmt
Co-authored-by: Oliver Giersch <oliver.giersch@b-tu.de>
2022-04-08 19:11:53 -07:00
dependabot[bot]
fdd2d902c3
chore(deps): bump tokio-util from 0.7.0 to 0.7.1 ( #1089 )
...
Bumps [tokio-util](https://github.com/tokio-rs/tokio ) from 0.7.0 to 0.7.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.0...tokio-util-0.7.1 )
---
updated-dependencies:
- dependency-name: tokio-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>
2022-03-28 22:16:53 -07:00
Matthias Seitz
df855b045e
feat: add TryFrom String reference for http provider ( #1084 )
2022-03-27 14:37:15 -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
Meet Mangukiya
cde52c7c20
fix(core/TypedTransaction): eip1559 gas price should be max_fee_per_gas ( #1062 )
...
* fix(core/TypedTransaction): eip1559 gas price should be max_fee_per_gas
* fix tests
* tests(nonce_manager): reduce flakiness
2022-03-19 09:41:03 -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
dependabot[bot]
72e280d2cc
chore(deps): bump reqwest from 0.11.9 to 0.11.10 ( #1031 )
...
Bumps [reqwest](https://github.com/seanmonstar/reqwest ) from 0.11.9 to 0.11.10.
- [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.9...v0.11.10 )
---
updated-dependencies:
- dependency-name: reqwest
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-03-15 02:16:53 -07:00
Georgios Konstantopoulos
beffe32f15
fix: feature-gate TestProvider.ws fn
2022-03-13 11:29:11 -07:00
Georgios Konstantopoulos
4f37287859
feat: rotate infura keys for ws
2022-03-13 10:11:27 -07:00
Georgios Konstantopoulos
ae125bcfc7
feat: rotating infura keys ( #1017 )
...
* feat: add providers which rotate api keys
* test: use rotating key in provider instead of hardcoded
* chore: fmt
2022-03-13 09:04:09 -07:00
oblique
367f3444ec
fix: Export `ethers_providers::IpcError` and `ethers_providers::QuorumError` ( #1012 )
2022-03-13 13:58:29 +02:00
th4s
b05136e173
Fix websocket connection request ( #1005 )
...
In tungstenite 0.17 a change was introduced considering the logic of
`IntoClientRequest`. When using this trait on a `HttpRequest` it just
uses the request without any changes to inititate the websocket
connection.
This makes it necessary for the consumer of the api to supply the
correct http headers for initiating a websocket connection when using
`IntoClientRequest` on `HttpRequest`.
This commit adapts the logic in `connect_with_auth` to this new
behavior.
2022-03-10 13:36:42 -08:00
dependabot[bot]
37c25df5a5
chore(deps): bump tracing from 0.1.31 to 0.1.32 ( #1001 )
...
Bumps [tracing](https://github.com/tokio-rs/tracing ) from 0.1.31 to 0.1.32.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.31...tracing-0.1.32 )
---
updated-dependencies:
- dependency-name: tracing
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-03-10 06:41:10 -08:00
Simon Bihel
1641be7395
Enforce commutativity of reverse resolution ( #996 )
...
As specified in https://docs.ens.domains/dapp-developer-guide/resolving-names#reverse-resolution
2022-03-08 06:45:45 -08:00
wolflo
a1accbf6ac
fix(providers): Propogate gas limit with access list ( #901 )
...
* fix(providers): Propogate gas price with access list
* Update CHANGELOG.md
* Fix clippy lint
* Clarify fill_transaction comments
* Fill tx gas price before gas limit
Updates Provider::fill_transaction() to fill the gas price of a
transaction before filling the gas limit. There are cases where the gas
used by a transaction may be dependent on the gas price. For example,
the following contract bytecode branches based on the result of the GASPRICE
opcode:
GASPRICE PUSH1 0xff GT PUSH1 {label} JUMPI
* Cleanup
* Propogate eth_estimateGas failure
2022-03-01 14:13:06 +02:00
dependabot[bot]
a6999f377e
chore(deps): bump tokio-tungstenite from 0.16.1 to 0.17.1 ( #945 )
...
* chore(deps): bump tokio-tungstenite from 0.16.1 to 0.17.1
Bumps [tokio-tungstenite](https://github.com/snapview/tokio-tungstenite ) from 0.16.1 to 0.17.1.
- [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.16.1...v0.17.1 )
---
updated-dependencies:
- dependency-name: tokio-tungstenite
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* fix: no-op raw websocket frames
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-28 10:40:42 +02:00
Meet Mangukiya
133c32d64a
feat(ethers-providers): expose pending tx_hash with a getter ( #968 )
2022-02-26 16:36:29 +02:00
joshieDo
7afde0ca0a
handle case where the data from the resolver is empty ( #963 )
...
* handle case where the data from the resolver is empty
* is_empty instead of 0 comparison
2022-02-24 18:42:32 +02:00
dependabot[bot]
a7fabb114d
chore(deps): bump tracing from 0.1.30 to 0.1.31 ( #923 )
...
Bumps [tracing](https://github.com/tokio-rs/tracing ) from 0.1.30 to 0.1.31.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.30...tracing-0.1.31 )
---
updated-dependencies:
- dependency-name: tracing
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-02-18 15:37:52 +02:00
Nicolas Trippar
f9f466ef07
change visibility of the function request in Provider<JsonRpcClient> to public so one can implement Middleware's with custom call to the node ( #919 )
2022-02-17 14:30:03 +02:00
Simon Bihel
cd8a9b5a97
Add ENS avatar and TXT records resolution ( #889 )
...
* Add ENS avatar resolution
As well as arbitrary fields.
* Use try_join
* Improve reqwest's error passing
* Split avatar resolution in ERC token parsing and resolution
* no_run examples
* Rename token to NFT
* A bit more documentation
* Nightly cargo fmt
* Use different ERC-721 test
* Update CHANGELOG
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-16 16:25:41 +02:00
dependabot[bot]
903edab7bf
chore(deps): bump tokio-util from 0.6.9 to 0.7.0 ( #895 )
...
Bumps [tokio-util](https://github.com/tokio-rs/tokio ) from 0.6.9 to 0.7.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/commits )
---
updated-dependencies:
- dependency-name: tokio-util
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-02-11 13:12:20 +02:00