Commit Graph

103 Commits

Author SHA1 Message Date
Andrea Simeoni 10310ce3ad
refactor: examples (#1940)
* ToC

* Big numbers section

* Middleware examples: builder

* Middleware examples: gas_escalator

* Middleware examples: gas_oracle

* Middleware examples: signer

* Middleware examples: missing stubs

* review: applied DaniPopes suggestions to big numbers

* typo

* Middleware examples: nonce_manager

* cargo +nightly fmt

* update roadmap

* Middleware examples: policy

* Middleware examples: added docs

* Contracts examples: created folder; included abigen example

* Contracts examples: refactor abigen docs. Fixed cargo example reference

* Contracts examples: contract_events; minor docs changes

* Moved each example under its own crate.
Cargo builds locally
TODO: Fix broken examples CI

* Big numbers examples: used regular operators for math

* Single examples run correctly (missing overall CI execution)
Example crates dependencies
Removed duplicates

* review: Applied gakonst note to remove commented items in workspace manifest

* review: Applied gakonst note to restore visibility on contract constructor

* ci:
- Run/Build  examples in a single step to avoid duplicated scripts
- Removed ci.yaml step "Build all examples"

* cargo +nightly fmt

* ci: fix WASM step error

* Removed deprecated EthGasStation example

* WASM example uses local copy of `contract_abi.json`. In this way we keep the WASM example auto-consistent, at the cost of a small duplication

* Cargo.lock aligned to master branch

* Removed useless comments in examples

* review: Applied gakonst note to add panic!() on the policy middleware example

* review: Applied gakonst suggestion to add a custom middleware example

* typos in docs

* Update examples/big-numbers/examples/bn_math_operations.rs

review: Accepted commit suggested by DaniPopes

Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>

* review: Applied DaniPopes suggestion on assert_eq!

* Update examples/big-numbers/README.md

review: Accepted DaniPopes suggestion on big-numbers docs

Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>

* review: All imports now reference the "ethers" crate

* ci: added features ["ws", "rustls"] where needed
cargo +nigthly fmt

* Examples with special features (e.g. ipc, trezor etc.) are built alongside them. This is expressed as a "default" requirement in their respective Cargo.toml

* cargo +nightly fmt

* Examples: Gas oracle API keys from env
Added missing features in middleware Cargo.toml

* typo: use expect() instead of unwrap()

* Updated ToC
Moved 2 examples under more relevant folders

* Gas oracle examples raise panic on middleware errors

* review: removed useless [[example]] in Cargo.toml

* review: removed #[allow(unused_must_use)] from gas_escalator example

* review: Removed prefixes from file names

* review: removed useless [[example]] in Cargo.toml

* docs: Updated description to run examples in the workspace README.md

Co-authored-by: Andrea Simeoni <>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2022-12-29 14:53:11 +02:00
DaniPopes 5008006767
fix: ethers-etherscan solc feature (#1965) 2022-12-22 20:57:00 +02:00
Yiannis M 813600e6c9
fix: Add `openssl` and `rustls` feature flags in ethers-middleware (#1961)
* fix: ethers-middleware: Add `openssl` and `rustls` feature flags

* fix: ethers-contract-derive: Disable default features of ethers-contract-abigen

Without this fix, `rustls` was enabled by default even if user had `openssl` feature flag
2022-12-21 16:44:42 +02:00
DaniPopes 022f082cee
fix(msrv): bump in .clippy.toml and add a comment in root Cargo.toml (#1945) 2022-12-18 13:41:11 +02:00
Dan Cline 80d887b67e
docs: update MRSV to 1.64 (#1926)
* IntoFuture was implemented in #1826, which means the MSRV should now
   be 1.64
2022-12-05 22:04:48 -08:00
Georgios Konstantopoulos f2ebb16372 (cargo-release) version 1.0.2 2022-11-27 12:27:58 -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
DaniPopes 64a70cfd57
fix: failing CI (#1847)
* fix gasprice

* fmt

* docs

* fix examples typo

* fix examples

* clippy
2022-11-09 08:09:03 -08:00
Georgios Konstantopoulos 87b10bdf24 Revert "chore: disable dev deps for release"
This reverts commit d8a1be6fb1.
2022-10-25 11:12:50 -07:00
Georgios Konstantopoulos d8a1be6fb1 chore: disable dev deps for release 2022-10-25 11:04:28 -07:00
Georgios Konstantopoulos 1e4e4353f8 (cargo-release) version 1.0.0 2022-10-25 11:03:01 -07:00
Georgios Konstantopoulos 237accb957 (cargo-release) version 1.0.0 2022-10-25 11:03:01 -07:00
Georgios Konstantopoulos de02d08ff7 (cargo-release) version 1.0.0 2022-10-25 11:03:01 -07:00
Georgios Konstantopoulos 9ec8d9cdad (cargo-release) version 1.0.0 2022-10-25 11:03:00 -07:00
Georgios Konstantopoulos ab24c5558a (cargo-release) version 1.0.0 2022-10-25 11:03:00 -07:00
Georgios Konstantopoulos e34c487a85 (cargo-release) version 1.0.0 2022-10-25 11:03:00 -07:00
Georgios Konstantopoulos aac5fab028 (cargo-release) version 1.0.0 2022-10-25 11:03:00 -07:00
Georgios Konstantopoulos 266a40e2bc (cargo-release) version 1.0.0 2022-10-25 11:02:59 -07:00
Georgios Konstantopoulos 79024ebbe9 (cargo-release) version 1.0.0 2022-10-25 11:02:59 -07:00
DaniPopes 5c762c44d7
fmt: all (#1751)
* fmt: all

* fmt: eol
2022-09-28 11:58:26 -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
dependabot[bot] 140b90d9b4
chore(deps): bump bytes from 1.2.0 to 1.2.1 (#1542)
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.2.0 to 1.2.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/commits)

---
updated-dependencies:
- dependency-name: bytes
  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-07-31 21:14:44 -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 c7eefc6058 (cargo-release) version 0.17.0 2022-07-28 10:58:51 -07:00
Georgios Konstantopoulos 0298f2a5b9 (cargo-release) version 0.17.0 2022-07-28 10:58:51 -07:00
Georgios Konstantopoulos c35f673dc5 (cargo-release) version 0.17.0 2022-07-28 10:58:51 -07:00
Georgios Konstantopoulos 2ef60411ea (cargo-release) version 0.17.0 2022-07-28 10:58:50 -07:00
Georgios Konstantopoulos 73e8d85d74 (cargo-release) version 0.17.0 2022-07-28 10:58:50 -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 a5b91a0f74 (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
dependabot[bot] 9e586cd9f6
chore(deps): bump bytes from 1.1.0 to 1.2.0 (#1488)
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.1.0 to 1.2.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/compare/v1.1.0...v1.2.0)

---
updated-dependencies:
- dependency-name: bytes
  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-20 00:08:00 -07:00
Matthias Seitz fb3fb161c0
chore: make ethers-solc optional (#1463)
* chore: make ethers-solc optional

* chore: update CHANGELOG

* add missing requirement

* add abigen req
2022-07-06 14:11:56 -07:00
Georgios Konstantopoulos 09057c250e (cargo-release) version 0.13.0 2022-06-14 13:59:12 +03:00
Georgios Konstantopoulos 5e0f38ae40 (cargo-release) version 0.13.0 2022-06-14 13:59:12 +03:00
Georgios Konstantopoulos 83affb4c9c (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 04d2ab6056 (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
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
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 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 3edbcc1967
chore: add examples with required features (#1109) 2022-04-04 15:33:06 -07:00
Georgios Konstantopoulos 3244364060 chore: do not pin eyre patch version 2022-03-17 14:10:31 +02:00