mirror of
https://github.com/AtHeartEngineering/rust-libp2p-dandelion.git
synced 2026-01-09 05:08:11 -05:00
With if-watch `2.0.0` `IfWatcher::new` is not async anymore, hence the `IfWatch` wrapping logic is obsolete. Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
179 lines
6.3 KiB
TOML
179 lines
6.3 KiB
TOML
[package]
|
|
name = "libp2p"
|
|
edition = "2021"
|
|
rust-version = "1.60.0"
|
|
description = "Peer-to-peer networking library"
|
|
version = "0.49.0"
|
|
authors = ["Parity Technologies <admin@parity.io>"]
|
|
license = "MIT"
|
|
repository = "https://github.com/libp2p/rust-libp2p"
|
|
keywords = ["peer-to-peer", "libp2p", "networking"]
|
|
categories = ["network-programming", "asynchronous"]
|
|
|
|
[features]
|
|
default = [
|
|
"autonat",
|
|
"deflate",
|
|
"dns-async-std",
|
|
"floodsub",
|
|
"identify",
|
|
"kad",
|
|
"gossipsub",
|
|
"mdns-async-io",
|
|
"mplex",
|
|
"noise",
|
|
"ping",
|
|
"plaintext",
|
|
"pnet",
|
|
"relay",
|
|
"request-response",
|
|
"rendezvous",
|
|
"rsa",
|
|
"secp256k1",
|
|
"tcp-async-io",
|
|
"uds",
|
|
"wasm-ext",
|
|
"websocket",
|
|
"yamux",
|
|
]
|
|
|
|
autonat = ["dep:libp2p-autonat"]
|
|
dcutr = ["dep:libp2p-dcutr", "libp2p-metrics?/dcutr"]
|
|
deflate = ["dep:libp2p-deflate"]
|
|
dns-async-std = ["dep:libp2p-dns", "libp2p-dns?/async-std"]
|
|
dns-tokio = ["dep:libp2p-dns", "libp2p-dns?/tokio"]
|
|
floodsub = ["dep:libp2p-floodsub"]
|
|
identify = ["dep:libp2p-identify", "libp2p-metrics?/identify"]
|
|
kad = ["dep:libp2p-kad", "libp2p-metrics?/kad"]
|
|
gossipsub = ["dep:libp2p-gossipsub", "libp2p-metrics?/gossipsub"]
|
|
metrics = ["dep:libp2p-metrics"]
|
|
mdns-async-io = ["dep:libp2p-mdns", "libp2p-mdns?/async-io"]
|
|
mdns-tokio = ["dep:libp2p-mdns", "libp2p-mdns?/tokio"]
|
|
mplex = ["dep:libp2p-mplex"]
|
|
noise = ["dep:libp2p-noise"]
|
|
ping = ["dep:libp2p-ping", "libp2p-metrics?/ping"]
|
|
plaintext = ["dep:libp2p-plaintext"]
|
|
pnet = ["dep:libp2p-pnet"]
|
|
relay = ["dep:libp2p-relay", "libp2p-metrics?/relay"]
|
|
request-response = ["dep:libp2p-request-response"]
|
|
rendezvous = ["dep:libp2p-rendezvous"]
|
|
tcp-async-io = ["dep:libp2p-tcp", "libp2p-tcp?/async-io"]
|
|
tcp-tokio = ["dep:libp2p-tcp", "libp2p-tcp?/tokio"]
|
|
uds = ["dep:libp2p-uds"]
|
|
wasm-bindgen = ["futures-timer/wasm-bindgen", "instant/wasm-bindgen", "getrandom/js", "rand/wasm-bindgen"]
|
|
wasm-ext = ["dep:libp2p-wasm-ext"]
|
|
wasm-ext-websocket = ["wasm-ext", "libp2p-wasm-ext?/websocket"]
|
|
websocket = ["dep:libp2p-websocket"]
|
|
yamux = ["dep:libp2p-yamux"]
|
|
secp256k1 = ["libp2p-core/secp256k1"]
|
|
rsa = ["libp2p-core/rsa"]
|
|
serde = ["libp2p-core/serde", "libp2p-kad?/serde", "libp2p-gossipsub?/serde"]
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
|
|
[dependencies]
|
|
bytes = "1"
|
|
futures = "0.3.1"
|
|
futures-timer = "3.0.2" # Explicit dependency to be used in `wasm-bindgen` feature
|
|
getrandom = "0.2.3" # Explicit dependency to be used in `wasm-bindgen` feature
|
|
instant = "0.1.11" # Explicit dependency to be used in `wasm-bindgen` feature
|
|
lazy_static = "1.2"
|
|
|
|
libp2p-autonat = { version = "0.7.0", path = "protocols/autonat", optional = true }
|
|
libp2p-core = { version = "0.36.0", path = "core", default-features = false }
|
|
libp2p-dcutr = { version = "0.6.0", path = "protocols/dcutr", optional = true }
|
|
libp2p-floodsub = { version = "0.39.0", path = "protocols/floodsub", optional = true }
|
|
libp2p-identify = { version = "0.39.0", path = "protocols/identify", optional = true }
|
|
libp2p-kad = { version = "0.40.0", path = "protocols/kad", optional = true }
|
|
libp2p-metrics = { version = "0.9.0", path = "misc/metrics", optional = true }
|
|
libp2p-mplex = { version = "0.36.0", path = "muxers/mplex", optional = true }
|
|
libp2p-noise = { version = "0.39.0", path = "transports/noise", optional = true }
|
|
libp2p-ping = { version = "0.39.0", path = "protocols/ping", optional = true }
|
|
libp2p-plaintext = { version = "0.36.0", path = "transports/plaintext", optional = true }
|
|
libp2p-pnet = { version = "0.22.0", path = "transports/pnet", optional = true }
|
|
libp2p-relay = { version = "0.12.0", path = "protocols/relay", optional = true }
|
|
libp2p-rendezvous = { version = "0.9.0", path = "protocols/rendezvous", optional = true }
|
|
libp2p-request-response = { version = "0.21.0", path = "protocols/request-response", optional = true }
|
|
libp2p-swarm = { version = "0.39.0", path = "swarm" }
|
|
libp2p-swarm-derive = { version = "0.30.0", path = "swarm-derive" }
|
|
libp2p-uds = { version = "0.35.0", path = "transports/uds", optional = true }
|
|
libp2p-wasm-ext = { version = "0.36.0", path = "transports/wasm-ext", default-features = false, optional = true }
|
|
libp2p-yamux = { version = "0.40.0", path = "muxers/yamux", optional = true }
|
|
multiaddr = { version = "0.14.0" }
|
|
parking_lot = "0.12.0"
|
|
pin-project = "1.0.0"
|
|
rand = "0.7.3" # Explicit dependency to be used in `wasm-bindgen` feature
|
|
smallvec = "1.6.1"
|
|
|
|
[target.'cfg(not(any(target_os = "emscripten", target_os = "wasi", target_os = "unknown")))'.dependencies]
|
|
libp2p-deflate = { version = "0.36.0", path = "transports/deflate", optional = true }
|
|
libp2p-dns = { version = "0.36.0", path = "transports/dns", optional = true, default-features = false }
|
|
libp2p-mdns = { version = "0.40.0", path = "protocols/mdns", optional = true, default-features = false }
|
|
libp2p-tcp = { version = "0.37.0", path = "transports/tcp", default-features = false, optional = true }
|
|
libp2p-websocket = { version = "0.38.0", path = "transports/websocket", optional = true }
|
|
|
|
[target.'cfg(not(target_os = "unknown"))'.dependencies]
|
|
libp2p-gossipsub = { version = "0.41.0", path = "protocols/gossipsub", optional = true }
|
|
|
|
[dev-dependencies]
|
|
async-std = { version = "1.6.2", features = ["attributes"] }
|
|
async-trait = "0.1"
|
|
env_logger = "0.9.0"
|
|
clap = {version = "3.1.6", features = ["derive"]}
|
|
tokio = { version = "1.15", features = ["io-util", "io-std", "macros", "rt", "rt-multi-thread"] }
|
|
|
|
[workspace]
|
|
members = [
|
|
"core",
|
|
"misc/metrics",
|
|
"misc/multistream-select",
|
|
"misc/rw-stream-sink",
|
|
"misc/keygen",
|
|
"misc/prost-codec",
|
|
"muxers/mplex",
|
|
"muxers/yamux",
|
|
"protocols/dcutr",
|
|
"protocols/autonat",
|
|
"protocols/floodsub",
|
|
"protocols/gossipsub",
|
|
"protocols/rendezvous",
|
|
"protocols/identify",
|
|
"protocols/kad",
|
|
"protocols/mdns",
|
|
"protocols/ping",
|
|
"protocols/relay",
|
|
"protocols/request-response",
|
|
"swarm",
|
|
"swarm-derive",
|
|
"transports/deflate",
|
|
"transports/dns",
|
|
"transports/noise",
|
|
"transports/plaintext",
|
|
"transports/pnet",
|
|
"transports/tcp",
|
|
"transports/uds",
|
|
"transports/websocket",
|
|
"transports/wasm-ext"
|
|
]
|
|
|
|
[[example]]
|
|
name = "chat"
|
|
required-features = ["floodsub"]
|
|
|
|
[[example]]
|
|
name = "chat-tokio"
|
|
required-features = ["tcp-tokio", "mdns-tokio"]
|
|
|
|
[[example]]
|
|
name = "file-sharing"
|
|
required-features = ["request-response"]
|
|
|
|
[[example]]
|
|
name = "gossipsub-chat"
|
|
required-features = ["gossipsub"]
|
|
|
|
[[example]]
|
|
name = "ipfs-private"
|
|
required-features = ["gossipsub"]
|