[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 rustdoc-args = ["--cfg", "docsrs"] [package.metadata.playground] all-features = true [features] default = ["abigen", "rustls", "etherscan"] # workspace-wide features legacy = ["ethers-core/legacy", "ethers-contract/legacy"] celo = [ "ethers-contract/celo", "ethers-core/celo", "ethers-middleware/celo", "ethers-providers/celo", "ethers-signers/celo", "legacy", ] optimism = [ "ethers-core/optimism", "ethers-providers/optimism", "ethers-signers/optimism", "ethers-middleware/optimism", "ethers-contract/optimism", ] rustls = [ "ethers-contract/rustls", "ethers-etherscan?/rustls", "ethers-middleware/rustls", "ethers-providers/rustls", "ethers-solc?/rustls", ] openssl = [ "ethers-contract/openssl", "ethers-etherscan?/openssl", "ethers-middleware/openssl", "ethers-providers/openssl", "ethers-solc?/openssl", ] # ethers-providers ws = ["ethers-providers/ws"] legacy-ws = ["ethers-providers/legacy-ws"] ipc = ["ethers-providers/ipc"] dev-rpc = ["ethers-providers/dev-rpc"] # ethers-signers aws = ["ethers-signers/aws"] ledger = ["ethers-signers/ledger"] trezor = ["ethers-signers/trezor"] yubi = ["ethers-signers/yubi"] # ethers-contracts abigen = ["ethers-contract/abigen"] abigen-online = ["ethers-contract/abigen-online"] # ethers-etherscan etherscan = ["dep:ethers-etherscan", "ethers-middleware/etherscan"] # ethers-solc solc = ["dep:ethers-solc", "ethers-etherscan?/ethers-solc"] solc-full = ["ethers-solc?/full"] solc-tests = ["ethers-solc?/tests"] # Deprecated abigen-offline = ["abigen"] eip712 = [] ethers-solc = ["solc"] solc-sha2-asm = [] [dependencies] ethers-addressbook.workspace = true ethers-contract = { workspace = true, features = ["providers"] } ethers-core.workspace = true ethers-middleware.workspace = true ethers-providers.workspace = true ethers-signers.workspace = true ethers-etherscan = { workspace = true, optional = true } ethers-solc = { workspace = true, optional = true }