# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO # # When uploading crates to the registry Cargo will automatically # "normalize" Cargo.toml files for maximal compatibility # with all versions of Cargo and also rewrite `path` dependencies # to registry (e.g., crates.io) dependencies. # # If you are reading this file be aware that the original Cargo.toml # will likely look very different (and much more reasonable). # See Cargo.toml.orig for the original contents. [package] edition = "2021" rust-version = "1.75.0" name = "libp2p" version = "0.54.1" authors = ["Parity Technologies "] description = "Peer-to-peer networking library" keywords = [ "peer-to-peer", "libp2p", "networking", ] categories = [ "network-programming", "asynchronous", ] license = "MIT" repository = "https://github.com/libp2p/rust-libp2p" [package.metadata.docs.rs] all-features = true [dependencies.bytes] version = "1" [dependencies.either] version = "1.9.0" [dependencies.futures] version = "0.3.30" [dependencies.futures-timer] version = "3.0.2" [dependencies.getrandom] version = "0.2.3" [dependencies.libp2p-allow-block-list] version = "0.4.0" [dependencies.libp2p-autonat] version = "0.13.0" optional = true [dependencies.libp2p-connection-limits] version = "0.4.0" [dependencies.libp2p-core] version = "0.42.0" [dependencies.libp2p-dcutr] version = "0.12.0" optional = true [dependencies.libp2p-floodsub] version = "0.45.0" optional = true [dependencies.libp2p-gossipsub] version = "0.47.0" optional = true [dependencies.libp2p-identify] version = "0.45.0" optional = true [dependencies.libp2p-identity] version = "0.2.9" features = ["rand"] [dependencies.libp2p-kad] version = "0.46.1" optional = true [dependencies.libp2p-metrics] version = "0.15.0" optional = true [dependencies.libp2p-noise] version = "0.45.0" optional = true [dependencies.libp2p-ping] version = "0.45.0" optional = true [dependencies.libp2p-plaintext] version = "0.42.0" optional = true [dependencies.libp2p-pnet] version = "0.25.0" optional = true [dependencies.libp2p-relay] version = "0.18.0" optional = true [dependencies.libp2p-rendezvous] version = "0.15.0" optional = true [dependencies.libp2p-request-response] version = "0.27.0" optional = true [dependencies.libp2p-swarm] version = "0.45.1" [dependencies.libp2p-websocket-websys] version = "0.4.0" optional = true [dependencies.libp2p-webtransport-websys] version = "0.4.0" optional = true [dependencies.libp2p-yamux] version = "0.46.0" optional = true [dependencies.multiaddr] version = "0.18.1" [dependencies.pin-project] version = "1.0.0" [dependencies.rw-stream-sink] version = "0.4.0" [dependencies.thiserror] version = "1.0" [dev-dependencies.async-std] version = "1.6.2" features = ["attributes"] [dev-dependencies.async-trait] version = "0.1" [dev-dependencies.clap] version = "4.1.6" features = ["derive"] [dev-dependencies.libp2p-mplex] version = "0.42.0" [dev-dependencies.libp2p-noise] version = "0.45.0" [dev-dependencies.libp2p-tcp] version = "0.42.0" features = ["tokio"] [dev-dependencies.tokio] version = "1.38" features = [ "io-util", "io-std", "macros", "rt", "rt-multi-thread", ] default-features = false [dev-dependencies.tracing-subscriber] version = "0.3" features = ["env-filter"] [features] async-std = [ "libp2p-swarm/async-std", "libp2p-mdns?/async-io", "libp2p-tcp?/async-io", "libp2p-dns?/async-std", "libp2p-quic?/async-std", ] autonat = ["dep:libp2p-autonat"] cbor = ["libp2p-request-response?/cbor"] dcutr = [ "dep:libp2p-dcutr", "libp2p-metrics?/dcutr", ] dns = ["dep:libp2p-dns"] ecdsa = ["libp2p-identity/ecdsa"] ed25519 = ["libp2p-identity/ed25519"] floodsub = ["dep:libp2p-floodsub"] full = [ "async-std", "autonat", "cbor", "dcutr", "dns", "ecdsa", "ed25519", "floodsub", "gossipsub", "identify", "json", "kad", "macros", "mdns", "memory-connection-limits", "metrics", "noise", "ping", "plaintext", "pnet", "quic", "relay", "rendezvous", "request-response", "rsa", "secp256k1", "serde", "tcp", "tls", "tokio", "uds", "wasm-bindgen", "websocket-websys", "websocket", "webtransport-websys", "yamux", "upnp", ] gossipsub = [ "dep:libp2p-gossipsub", "libp2p-metrics?/gossipsub", ] identify = [ "dep:libp2p-identify", "libp2p-metrics?/identify", ] json = ["libp2p-request-response?/json"] kad = [ "dep:libp2p-kad", "libp2p-metrics?/kad", ] macros = ["libp2p-swarm/macros"] mdns = ["dep:libp2p-mdns"] memory-connection-limits = ["dep:libp2p-memory-connection-limits"] metrics = ["dep:libp2p-metrics"] noise = ["dep:libp2p-noise"] ping = [ "dep:libp2p-ping", "libp2p-metrics?/ping", ] plaintext = ["dep:libp2p-plaintext"] pnet = ["dep:libp2p-pnet"] quic = ["dep:libp2p-quic"] relay = [ "dep:libp2p-relay", "libp2p-metrics?/relay", ] rendezvous = ["dep:libp2p-rendezvous"] request-response = ["dep:libp2p-request-response"] rsa = ["libp2p-identity/rsa"] secp256k1 = ["libp2p-identity/secp256k1"] serde = [ "libp2p-core/serde", "libp2p-kad?/serde", "libp2p-gossipsub?/serde", ] tcp = ["dep:libp2p-tcp"] tls = ["dep:libp2p-tls"] tokio = [ "libp2p-swarm/tokio", "libp2p-mdns?/tokio", "libp2p-tcp?/tokio", "libp2p-dns?/tokio", "libp2p-quic?/tokio", "libp2p-upnp?/tokio", ] uds = ["dep:libp2p-uds"] upnp = ["dep:libp2p-upnp"] wasm-bindgen = [ "futures-timer/wasm-bindgen", "getrandom/js", "libp2p-swarm/wasm-bindgen", "libp2p-gossipsub?/wasm-bindgen", ] websocket = ["dep:libp2p-websocket"] websocket-websys = ["dep:libp2p-websocket-websys"] webtransport-websys = ["dep:libp2p-webtransport-websys"] yamux = ["dep:libp2p-yamux"] [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-dns] version = "0.42.0" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-mdns] version = "0.46.0" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-memory-connection-limits] version = "0.3.0" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-quic] version = "0.11.1" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-tcp] version = "0.42.0" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-tls] version = "0.5.0" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-uds] version = "0.41.0" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-upnp] version = "0.3.0" optional = true [target."cfg(not(target_arch = \"wasm32\"))".dependencies.libp2p-websocket] version = "0.44.0" optional = true [lints.clippy] dbg_macro = "warn" manual_let_else = "warn" type_complexity = "allow" unnecessary_wraps = "warn" used_underscore_binding = "warn" [lints.clippy.pedantic] level = "allow" priority = -1 [lints.rust] unreachable_pub = "warn"