[package] name = "ethers-middleware" authors = ["Georgios Konstantopoulos "] readme = "README.md" description = "Middleware implementations for the ethers-rs crate" version.workspace = true edition.workspace = true rust-version.workspace = true license.workspace = true documentation.workspace = true repository.workspace = true homepage.workspace = true categories.workspace = true keywords.workspace = true exclude.workspace = true [package.metadata.docs.rs] all-features = true rustc-args = ["--cfg", "docsrs"] rustdoc-args = ["--cfg", "docsrs"] [package.metadata.playground] all-features = true [dependencies] ethers-contract = { workspace = true, features = ["abigen"] } ethers-core.workspace = true ethers-etherscan.workspace = true ethers-providers.workspace = true ethers-signers.workspace = true async-trait.workspace = true auto_impl.workspace = true serde.workspace = true thiserror.workspace = true futures-util.workspace = true futures-locks.workspace = true futures-channel.workspace = true tracing.workspace = true tracing-futures.workspace = true instant.workspace = true # for gas oracles reqwest.workspace = true url.workspace = true serde_json.workspace = true [target.'cfg(not(target_arch = "wasm32"))'.dependencies] tokio.workspace = true [dev-dependencies] ethers-providers = { workspace = true, features = ["ws", "rustls"] } ethers-solc.workspace = true hex.workspace = true rand.workspace = true once_cell.workspace = true reqwest = { workspace = true, features = ["json", "rustls"] } [target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] tokio = { workspace = true, features = ["rt-multi-thread", "macros", "time"] } [features] default = ["rustls"] celo = ["ethers-core/celo", "ethers-providers/celo", "ethers-signers/celo", "ethers-contract/celo"] openssl = ["reqwest/native-tls"] rustls = ["reqwest/rustls-tls"]