[package] name = "libp2p-rs" version = "0.3.0" license = "MIT" description = "Minimal implementation for a multiplexed p2p network framework" authors = ["Netwarps Technologies admin@paradeum.com"] repository = "https://github.com/netwarps/libp2p-rs" keywords = ["peer-to-peer", "libp2p", "networking"] categories = ["network-programming", "asynchronous"] edition = "2018" [features] default = [ "dns-async-std", "exporter", "floodsub-async-std", "infoserver", "kad-async-std", "rt-async-std", "mdns-async-std", "mplex", "noise", "plaintext", "secio", "swarm-async-std", "tcp-async-std", "websocket-async-std", "yamux", ] tokio = [ "dns-tokio", "floodsub-tokio", "kad-tokio", "rt-tokio", "mdns-tokio", "mplex", "noise", "plaintext", "secio", "swarm-tokio", "tcp-tokio", "websocket-tokio", "yamux", ] rt-tokio = ["libp2prs-runtime/tokio"] rt-async-std = ["libp2prs-runtime/async-std"] dns-async-std = ["libp2prs-dns/async-std"] dns-tokio = ["libp2prs-dns/tokio"] floodsub-async-std = ["libp2prs-floodsub/async-std"] floodsub-tokio = ["libp2prs-floodsub/tokio"] infoserver = ["libp2prs-infoserver"] exporter = ["libp2prs-exporter"] kad-async-std = ["libp2prs-kad/async-std"] kad-tokio = ["libp2prs-kad/tokio"] mdns-async-std = ["libp2prs-mdns/async-std"] mdns-tokio = ["libp2prs-mdns/tokio"] mplex = ["libp2prs-mplex"] noise = ["libp2prs-noise"] plaintext = ["libp2prs-plaintext"] runtime = ["libp2prs-runtime"] secio = ["libp2prs-secio"] swarm-async-std = ["libp2prs-swarm/async-std"] swarm-tokio = ["libp2prs-swarm/tokio"] tcp-async-std = ["libp2prs-tcp/async-std"] tcp-tokio = ["libp2prs-tcp/tokio"] websocket-async-std = ["libp2prs-websocket/async-std"] websocket-tokio = ["libp2prs-websocket/tokio"] yamux = ["libp2prs-yamux"] [dependencies] libp2prs-runtime = { path = "runtime", version = "0.3.0", optional = true } libp2prs-multiaddr = { path = "multiaddr", version = "0.3.0" } libp2prs-core = { path = "core", version = "0.3.0" } libp2prs-yamux = { path = "protocols/yamux", version = "0.3.0", optional = true } libp2prs-mplex = { path = "protocols/mplex", version = "0.3.0", optional = true } libp2prs-secio = { path = "protocols/secio", version = "0.3.0", optional = true } libp2prs-plaintext = { path = "protocols/plaintext", version = "0.3.0", optional = true } libp2prs-noise = { path = "protocols/noise", version = "0.3.0", optional = true } libp2prs-floodsub = { path = "protocols/floodsub", version = "0.3.0", optional = true } libp2prs-mdns = { path = "protocols/mdns", version = "0.3.0", optional = true } libp2prs-tcp = { path = "transports/tcp", version = "0.3.0", optional = true } libp2prs-dns = { path = "transports/dns", version = "0.3.0", optional = true } libp2prs-websocket = { path = "transports/websocket", version = "0.3.0", optional = true } libp2prs-swarm = { path = "swarm", version = "0.3.0" } libp2prs-kad = { path = "protocols/kad", version = "0.3.0", optional = true } libp2prs-infoserver = { path="infoserver", version = "0.3.0", optional = true } libp2prs-exporter = { path="exporter", version = "0.3.0", optional = true } async-trait = "0.1" log = "0.4" xcli = "0.5" #xcli = { git = "https://github.com/kingwel-xie/xcli-rs.git", branch = "master"} [target.'cfg(unix)'.dependencies.libc] version = "0.2" [target.'cfg(windows)'.dependencies.winapi] version = "0.3.7" features = ["minwindef", "ws2def", "winerror", "heapapi"] [dev-dependencies] env_logger = "0.8" crossbeam-channel = "0.3.6" systemstat = "0.1.3" futures = { version = "0.3", features = ["std"], default-features = false } futures-test = "0.3.5" rand = "0.7" lazy_static = "1.4" rustls = "0.19" structopt = "0.3.9" libp2p-pnet = "0.20.0" [target.'cfg(unix)'.dev-dependencies] nix = "0.13.0" [workspace] members = [ "runtime", "protocols/yamux", "protocols/mplex", "protocols/secio", "protocols/plaintext", "protocols/noise", "protocols/floodsub", "protocols/mdns", "protocols/kad", "core", "transports/tcp", "transports/dns", "transports/websocket", "multiaddr", "swarm", ] [[example]] name = "secio_simple" path = "protocols/secio/examples/secio_simple.rs" [[example]] name = "chat" path = "examples/chat/chat.rs" [[example]] name = "websocket" path = "examples/websocket/websocket.rs" [[example]] name = "websocket_tls" path = "examples/websocket/websocket_tls.rs"