[package]
description = "Substrate network protocol"
name = "sc-network"
version = "0.31.0"
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
authors.workspace = true
edition.workspace = true
homepage = "https://substrate.io"
repository.workspace = true
documentation = "https://docs.rs/sc-network"
readme = "README.md"
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
array-bytes = "6.1"
async-channel = "1.8.0"
async-trait = "0.1"
asynchronous-codec = "0.6"
bytes = "1"
codec = { package = "parity-scale-codec", version = "3.6.1", features = ["derive"] }
either = "1.5.3"
fnv = "1.0.6"
futures = "0.3.21"
futures-timer = "3.0.2"
ip_network = "0.4.1"
libp2p = { version = "0.51.3", features = ["dns", "identify", "kad", "macros", "mdns", "noise", "ping", "tcp", "tokio", "yamux", "websocket", "request-response"] }
linked_hash_set = "0.1.3"
log = "0.4.17"
mockall = "0.11.3"
parking_lot = "0.12.1"
partial_sort = "0.2.0"
pin-project = "1.0.12"
rand = "0.8.5"
serde = { version = "1.0.188", features = ["derive"] }
serde_json = "1.0.107"
smallvec = "1.11.0"
thiserror = "1.0"
unsigned-varint = { version = "0.7.1", features = ["futures", "asynchronous_codec"] }
zeroize = "1.4.3"
prometheus-endpoint = { package = "substrate-prometheus-endpoint", path = "../../utils/prometheus", version = "0.16.0" }
sc-client-api = { version = "25.0.0", path = "../api" }
sc-network-common = { version = "0.30.0", path = "common" }
sc-utils = { version = "11.0.0", path = "../utils" }
sp-arithmetic = { version = "20.0.0", path = "../../primitives/arithmetic" }
sp-blockchain = { version = "25.0.0", path = "../../primitives/blockchain" }
sp-core = { version = "25.0.0", path = "../../primitives/core" }
sp-runtime = { version = "28.0.0", path = "../../primitives/runtime" }
wasm-timer = "0.2"
[dev-dependencies]
assert_matches = "1.3"
mockall = "0.11.3"
multistream-select = "0.12.1"
rand = "0.8.5"
tempfile = "3.1.0"
tokio = { version = "1.22.0", features = ["macros"] }
tokio-util = { version = "0.7.4", features = ["compat"] }
tokio-test = "0.4.2"
sc-network-light = { path = "light" }
sc-network-sync = { path = "sync" }
sp-test-primitives = { path = "../../primitives/test-primitives" }
sp-tracing = { path = "../../primitives/tracing" }
substrate-test-runtime = { path = "../../test-utils/runtime" }
substrate-test-runtime-client = { path = "../../test-utils/runtime/client" }
[features]
default = []