alloy-provider 0.6.1

Interface with an Ethereum blockchain
Documentation
[package]
name = "alloy-provider"
description = "Interface with an Ethereum blockchain"

version.workspace = true
edition.workspace = true
rust-version.workspace = true
authors.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
exclude.workspace = true

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

[lints]
workspace = true

[dependencies]
alloy-eips.workspace = true
alloy-consensus.workspace = true
alloy-json-rpc.workspace = true
alloy-network.workspace = true
alloy-network-primitives.workspace = true
alloy-node-bindings = { workspace = true, optional = true }
alloy-signer-local = { workspace = true, optional = true }
alloy-signer = { workspace = true, optional = true }
alloy-rpc-client.workspace = true
alloy-rpc-types-admin = { workspace = true, optional = true }
alloy-rpc-types-anvil = { workspace = true, optional = true }
alloy-rpc-types-eth = { workspace = true, features = ["serde"] }
alloy-rpc-types-trace = { workspace = true, optional = true }
alloy-rpc-types-txpool = { workspace = true, optional = true }
alloy-rpc-types-engine = { workspace = true, optional = true, features = [
    "serde",
] }
alloy-rpc-types = { workspace = true, optional = true }
alloy-transport-http = { workspace = true, optional = true }
alloy-transport-ipc = { workspace = true, optional = true }
alloy-transport-ws = { workspace = true, optional = true }
alloy-pubsub = { workspace = true, optional = true }
alloy-transport.workspace = true
alloy-primitives.workspace = true

alloy-chains.workspace = true
async-stream = "0.3"
async-trait.workspace = true
auto_impl.workspace = true
dashmap = "6.0"
futures-utils-wasm.workspace = true
futures.workspace = true
schnellru.workspace = true
lru.workspace = true
pin-project.workspace = true
reqwest = { workspace = true, optional = true }
serde_json.workspace = true
serde.workspace = true
thiserror.workspace = true
tokio = { workspace = true, features = ["sync", "macros"] }
tracing.workspace = true
url = { workspace = true, optional = true }

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
parking_lot.workspace = true
[target.'cfg(target_arch = "wasm32")'.dependencies]
wasmtimer.workspace = true

[dev-dependencies]
alloy-consensus = { workspace = true, features = ["kzg"] }
alloy-primitives = { workspace = true, features = ["rand"] }
alloy-node-bindings.workspace = true
alloy-rpc-client = { workspace = true, features = ["reqwest"] }
alloy-rlp.workspace = true
alloy-sol-types.workspace = true
alloy-signer.workspace = true
alloy-signer-local.workspace = true
alloy-transport-http = { workspace = true, features = ["reqwest", "jwt-auth"] }

itertools.workspace = true
reqwest.workspace = true
tokio = { workspace = true, features = ["macros", "rt-multi-thread"] }
tracing-subscriber = { workspace = true, features = ["fmt"] }
tempfile.workspace = true
tower.workspace = true
tower-http = { workspace = true, features = [
    "set-header",
    "sensitive-headers",
] }
http-body-util.workspace = true
http.workspace = true
alloy-rpc-types-engine = { workspace = true, features = ["jwt"] }
ci_info.workspace = true

[features]
default = ["reqwest", "reqwest-default-tls"]
pubsub = ["alloy-rpc-client/pubsub", "dep:alloy-pubsub"]
reqwest = [
    "dep:reqwest",
    "dep:url",
    "dep:alloy-transport-http",
    "alloy-rpc-client/reqwest",
]
hyper = ["dep:alloy-transport-http", "dep:url", "alloy-rpc-client/hyper"]
ws = ["pubsub", "alloy-rpc-client/ws", "alloy-transport-ws"]
ipc = ["pubsub", "alloy-rpc-client/ipc", "alloy-transport-ipc"]
reqwest-default-tls = ["alloy-transport-http?/reqwest-default-tls"]
reqwest-rustls-tls = ["alloy-transport-http?/reqwest-rustls-tls"]
reqwest-native-tls = ["alloy-transport-http?/reqwest-native-tls"]
admin-api = ["dep:alloy-rpc-types-admin"]
anvil-api = ["dep:alloy-rpc-types-anvil"]
anvil-node = [
    "anvil-api",
    "reqwest",
    "dep:alloy-node-bindings",
    "dep:alloy-signer-local",
    "dep:alloy-signer",
]
debug-api = ["dep:alloy-rpc-types-trace"]
erc4337-api = []
engine-api = ["dep:alloy-rpc-types-engine"]
net-api = []
trace-api = ["dep:alloy-rpc-types-trace"]
rpc-api = ["dep:alloy-rpc-types"]
txpool-api = ["dep:alloy-rpc-types-txpool"]