[package] name = "ethers" authors = ["Georgios Konstantopoulos "] readme = "../README.md" description = "A complete Ethereum and Celo Rust library" 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 [features] default = ["abigen", "rustls"] celo = [ "ethers-core/celo", "ethers-providers/celo", "ethers-signers/celo", "ethers-contract/celo", "ethers-middleware/celo", "legacy", ] legacy = ["ethers-core/legacy", "ethers-contract/legacy"] # individual features per sub-crate ## providers ws = ["ethers-providers/ws"] ipc = ["ethers-providers/ipc"] rustls = [ "ethers-middleware/rustls", "ethers-providers/rustls", "ethers-etherscan/rustls", "ethers-contract/rustls", "ethers-solc/rustls", ] openssl = [ "ethers-middleware/openssl", "ethers-providers/openssl", "ethers-etherscan/openssl", "ethers-contract/openssl", "ethers-solc/openssl", ] dev-rpc = ["ethers-providers/dev-rpc"] ## signers ledger = ["ethers-signers/ledger"] trezor = ["ethers-signers/trezor"] yubi = ["ethers-signers/yubi"] ## contracts abigen = ["ethers-contract/abigen"] ### abigen without reqwest abigen-offline = ["ethers-contract/abigen-offline"] ## solc solc-full = ["ethers-solc/full"] solc-tests = ["ethers-solc/tests"] # Deprecated solc-sha2-asm = [] [dependencies] ethers-addressbook.workspace = true ethers-contract.workspace = true ethers-core.workspace = true ethers-etherscan = { workspace = true, features = ["ethers-solc"] } ethers-middleware.workspace = true ethers-providers.workspace = true ethers-signers.workspace = true ethers-solc.workspace = true [dev-dependencies] serde.workspace = true tokio = { workspace = true, features = ["macros", "rt-multi-thread"] } ethers-contract.workspace = true ethers-providers = { workspace = true, features = ["rustls"] } # allow https connections ethers-solc = { workspace = true, features = ["svm-solc"] }