fuel-core-p2p 0.40.0

Fuel client networking
Documentation
[package]
name = "fuel-core-p2p"
version = { workspace = true }
authors = { workspace = true }
categories = ["cryptography::cryptocurrencies", "network-programming"]
edition = { workspace = true }
homepage = { workspace = true }
keywords = ["blockchain", "cryptocurrencies", "fuel-core-p2p", "networking"]
license = { workspace = true }
repository = { workspace = true }
description = "Fuel client networking"

[dependencies]
anyhow = { workspace = true }
async-trait = { workspace = true }
fuel-core-chain-config = { workspace = true }
fuel-core-metrics = { workspace = true } # TODO make this a feature
fuel-core-services = { workspace = true, features = ["sync-processor"] }
fuel-core-storage = { workspace = true, features = ["std"] }
fuel-core-types = { workspace = true, features = ["std", "serde"] }
futures = { workspace = true }
hex = { workspace = true }
hickory-resolver = "0.24.1"
ip_network = "0.4"
libp2p = { version = "0.53.2", default-features = false, features = [
  "dns",
  "gossipsub",
  "identify",
  "kad",
  "macros",
  "mdns",
  "noise",
  "request-response",
  "secp256k1",
  "tcp",
  "tokio",
  "yamux",
  "websocket",
  "metrics",
] }
libp2p-mplex = "0.41.0"
postcard = { workspace = true, features = ["use-std"] }
prometheus-client = { workspace = true }
quick-protobuf = "0.8.1"
quick-protobuf-codec = "0.3.0"
rand = { workspace = true }
rayon = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_with = { workspace = true }
sha2 = "0.10"
thiserror = "1.0.47"
tokio = { workspace = true, features = ["sync"] }
tracing = { workspace = true }
void = "1"

[dev-dependencies]
ctor = "0.1"
fuel-core-p2p = { path = ".", features = ["test-helpers"] }
fuel-core-services = { path = "../../services", features = ["test-helpers"] }
fuel-core-trace = { path = "../../trace" }
fuel-core-types = { path = "../../types", features = ["serde", "test-helpers"] }
rand = { workspace = true }
tokio = { workspace = true, features = ["full", "test-util"] }
tracing-attributes = { workspace = true }
tracing-subscriber = { workspace = true, features = ["env-filter"] }

[dev-dependencies.libp2p-swarm-test]
version = "0.3.0"

[features]
test-helpers = ["fuel-core-types/test-helpers"]