Files
pezkuwi-subxt/substrate/client/network/Cargo.toml
T
Max Inden 918a0c8077 *: Bump async-std to v1.6.5 (#7306)
* *: Bump async-std to v1.6.5

Prevent users from using v1.6.4 which faces issues receiving incoming
TCP connections. See https://github.com/async-rs/async-std/issues/888
for details.

* client/network/src/gossip: Use channel instead of condvar

`async_std::sync::Condvar::wait_timeout` uses
`gloo_timers::callback::Timeout` when compiled for
`wasm32-unknown-unknown`. This timeout implementation does not fulfill
the requirement of being `Send`.

Instead of using a `Condvar` use a `futures::channel::mpsc` to signal
progress from the `QueuedSender` to the background `Future`.

* client/network/Cargo.toml: Remove async-std unstable feature

* client/network/src/gossip: Forward all queued messages

* client/network/gossip: Have QueuedSender methods take &mut self

* client/network/gossip: Move queue_size_limit into QueuedSender

The `queue_size_limit` field is only accessed by `QueuedSender`, thus
there is no need to share it between the background future and the
`QueuedSender`.

* client/network/gossip: Rename background task to future

To be a bit picky the background task is not a task in the sense of an
asynchonous task, but rather a background future in the sense of
`futures::future::Future`.
2020-10-20 09:23:27 +00:00

85 lines
2.9 KiB
TOML

[package]
description = "Substrate network protocol"
name = "sc-network"
version = "0.8.0"
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
authors = ["Parity Technologies <admin@parity.io>"]
edition = "2018"
homepage = "https://substrate.dev"
repository = "https://github.com/paritytech/substrate/"
documentation = "https://docs.rs/sc-network"
readme = "README.md"
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
[build-dependencies]
prost-build = "0.6.1"
[dependencies]
async-trait = "0.1"
async-std = "1.6.5"
bitflags = "1.2.0"
bs58 = "0.3.1"
bytes = "0.5.0"
codec = { package = "parity-scale-codec", version = "1.3.4", features = ["derive"] }
derive_more = "0.99.2"
either = "1.5.3"
erased-serde = "0.3.9"
fnv = "1.0.6"
fork-tree = { version = "2.0.0", path = "../../utils/fork-tree" }
futures = "0.3.4"
futures-timer = "3.0.2"
futures_codec = "0.4.0"
hex = "0.4.0"
ip_network = "0.3.4"
linked-hash-map = "0.5.2"
linked_hash_set = "0.1.3"
log = "0.4.8"
lru = "0.4.0"
nohash-hasher = "0.2.0"
parking_lot = "0.10.0"
pin-project = "0.4.6"
prometheus-endpoint = { package = "substrate-prometheus-endpoint", version = "0.8.0", path = "../../utils/prometheus" }
prost = "0.6.1"
rand = "0.7.2"
sc-block-builder = { version = "0.8.0", path = "../block-builder" }
sc-client-api = { version = "2.0.0", path = "../api" }
sc-peerset = { version = "2.0.0", path = "../peerset" }
serde = { version = "1.0.101", features = ["derive"] }
serde_json = "1.0.41"
slog = { version = "2.5.2", features = ["nested-values"] }
slog_derive = "0.2.0"
smallvec = "0.6.10"
sp-arithmetic = { version = "2.0.0", path = "../../primitives/arithmetic" }
sp-blockchain = { version = "2.0.0", path = "../../primitives/blockchain" }
sp-consensus = { version = "0.8.0", path = "../../primitives/consensus/common" }
sp-core = { version = "2.0.0", path = "../../primitives/core" }
sp-runtime = { version = "2.0.0", path = "../../primitives/runtime" }
sp-utils = { version = "2.0.0", path = "../../primitives/utils" }
thiserror = "1"
unsigned-varint = { version = "0.4.0", features = ["futures", "futures-codec"] }
void = "1.0.2"
wasm-timer = "0.2"
zeroize = "1.0.0"
[dependencies.libp2p]
version = "0.28.1"
default-features = false
features = ["identify", "kad", "mdns-async-std", "mplex", "noise", "ping", "request-response", "tcp-async-std", "websocket", "yamux"]
[dev-dependencies]
assert_matches = "1.3"
libp2p = { version = "0.28.1", default-features = false }
quickcheck = "0.9.0"
rand = "0.7.2"
sp-keyring = { version = "2.0.0", path = "../../primitives/keyring" }
sp-test-primitives = { version = "2.0.0", path = "../../primitives/test-primitives" }
sp-tracing = { version = "2.0.0", path = "../../primitives/tracing" }
substrate-test-runtime = { version = "2.0.0", path = "../../test-utils/runtime" }
substrate-test-runtime-client = { version = "2.0.0", path = "../../test-utils/runtime/client" }
tempfile = "3.1.0"
[features]
default = []