[package] name = "tet-libp2p" edition = "2018" description = "Tetsy peer-to-peer networking library" version = "0.34.0" authors = ["Parity Technologies ", "Tetcoin Developers ", "Tetcoin Developers "] license = "MIT" repository = "https://github.com/tetcoin/tet-libp2p" keywords = ["tetcoin", "tetcore", "crypto", "blockchain", "framework"] categories = ["cryptography::cryptocurrencies", "network-programming", "asynchronous"] homepage = "https://core.tetcoin.org" documentation = "https://docs.rs/tet-libp2p" [features] default = [ "deflate", "dns", "flood", "identify", "kad", "gossip", "mdns", "mpx", "noise", "ping", "plain", "pnet", "req-res", "secp256k1", "tcp-async-io", "uds", "wasm-x", "websocket", "remux", ] deflate = ["tet-libp2p-deflate"] dns = ["tet-libp2p-dns"] flood = ["floodsub"] identify = ["tet-libp2p-identify"] kad = ["tet-libp2p-kad"] gossip = ["gossipsub"] mdns = ["tet-libp2p-mdns"] mpx = ["mplex"] noise = ["tet-libp2p-noise"] ping = ["tet-libp2p-ping"] plain = ["plaintext"] pnet = ["tet-libp2p-pnet"] req-res = ["request-response"] tcp-async-io = ["tet-libp2p-tcp", "tet-libp2p-tcp/async-io"] tcp-tokio = ["tet-libp2p-tcp", "tet-libp2p-tcp/tokio"] uds = ["tet-libp2p-uds"] wasm-x = ["tet-libp2p-wasm-ext"] wasm-ext-websocket = ["wasm-x", "tet-libp2p-wasm-ext/websocket"] websocket = ["tet-libp2p-websocket"] remux = ["tet-libp2p-remux"] secp256k1 = ["tet-libp2p-core/secp256k1"] [package.metadata.docs.rs] all-features = true [dependencies] atomic = "0.5.0" bytes = "1" futures = "0.3.1" lazy_static = "1.2" tet-libp2p-core = { version = "0.27.0", path = "core" } tet-libp2p-core-derive = { version = "0.21.0", path = "misc/core-derive" } floodsub = { version = "0.27.0", path = "protocols/floodsub", optional = true } gossipsub = { version = "0.27.0", path = "./protocols/gossipsub", optional = true } tet-libp2p-identify = { version = "0.27.0", path = "protocols/identify", optional = true } tet-libp2p-kad = { version = "0.28.0", path = "protocols/kad", optional = true } mplex = { version = "0.27.0", path = "muxers/mplex", optional = true } tet-libp2p-noise = { version = "0.29.0", path = "protocols/noise", optional = true } tet-libp2p-ping = { version = "0.27.0", path = "protocols/ping", optional = true } plaintext = { version = "0.27.0", path = "protocols/plaintext", optional = true } tet-libp2p-pnet = { version = "0.20.0", path = "protocols/pnet", optional = true } request-response = { version = "0.9.0", path = "protocols/request-response", optional = true } tet-libp2p-swarm = { version = "0.27.0", path = "swarm" } tet-libp2p-uds = { version = "0.27.0", path = "transports/uds", optional = true } tet-libp2p-wasm-ext = { version = "0.27.0", path = "transports/wasm-ext", optional = true } tet-libp2p-remux = { version = "0.30.0", path = "muxers/remux", optional = true } multiaddr = { package = "tet-multiaddr", version = "0.11.0", path = "misc/multiaddr" } parking_lot = "0.11.0" pin-project = "1.0.0" smallvec = "1.0" wasm-timer = "0.2.4" [target.'cfg(not(any(target_os = "emscripten", target_os = "wasi", target_os = "unknown")))'.dependencies] tet-libp2p-deflate = { version = "0.27.0", path = "protocols/deflate", optional = true } tet-libp2p-dns = { version = "0.27.0", path = "transports/dns", optional = true } tet-libp2p-mdns = { version = "0.28.0", path = "protocols/mdns", optional = true } tet-libp2p-tcp = { version = "0.27.0", path = "transports/tcp", optional = true } tet-libp2p-websocket = { version = "0.28.0", path = "transports/websocket", optional = true } [dev-dependencies] async-std = { version = "1.6.2", features = ["attributes"] } env_logger = "0.8.1" tokio = { version = "1.0.1", features = ["io-util", "io-std", "macros", "rt", "rt-multi-thread"] } [workspace] members = [ "core", "misc/core-derive", "misc/multiaddr", "misc/multistream-select", "misc/peer-id-generator", "muxers/mplex", "muxers/remux", "protocols/deflate", "protocols/floodsub", "protocols/gossipsub", "protocols/identify", "protocols/kad", "protocols/mdns", "protocols/noise", "protocols/ping", "protocols/plaintext", "protocols/pnet", "protocols/request-response", "protocols/secio", "swarm", "transports/dns", "transports/tcp", "transports/uds", "transports/websocket", "transports/wasm-ext" ] [[example]] name = "chat-tokio" required-features = ["tcp-tokio", "mdns"]