chore: exclude p2p crate from workspace, slim tokio features

Move quicnprotochat-p2p to workspace.exclude so ~90 iroh-only
dependencies are not compiled in the default build. Narrow tokio
features from "full" to the subset actually used. The p2p crate
now pins its own dependency versions since it is outside the workspace.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-23 23:10:23 +01:00
parent 750b794342
commit 4c1e4683e3
3 changed files with 124 additions and 1870 deletions

1981
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -5,9 +5,12 @@ members = [
"crates/quicnprotochat-proto", "crates/quicnprotochat-proto",
"crates/quicnprotochat-server", "crates/quicnprotochat-server",
"crates/quicnprotochat-client", "crates/quicnprotochat-client",
"crates/quicnprotochat-p2p",
"crates/quicnprotochat-gui", "crates/quicnprotochat-gui",
] ]
# P2P-Crate (iroh-Transport) ist vom Default-Build ausgeschlossen,
# um ~90 exklusive iroh-Dependencies nicht mitzukompilieren.
# Quellcode bleibt im Repo für spätere Integration.
exclude = ["crates/quicnprotochat-p2p"]
# Shared dependency versions — bump here to affect the whole workspace. # Shared dependency versions — bump here to affect the whole workspace.
[workspace.dependencies] [workspace.dependencies]
@@ -41,7 +44,7 @@ capnp = { version = "0.19" }
capnp-rpc = { version = "0.19" } capnp-rpc = { version = "0.19" }
# ── Async / networking ──────────────────────────────────────────────────────── # ── Async / networking ────────────────────────────────────────────────────────
tokio = { version = "1", features = ["full"] } tokio = { version = "1", features = ["macros", "rt-multi-thread", "time", "sync", "signal", "io-util", "io-std"] }
tokio-util = { version = "0.7", features = ["codec", "compat"] } tokio-util = { version = "0.7", features = ["codec", "compat"] }
futures = { version = "0.3" } futures = { version = "0.3" }
quinn = { version = "0.11" } quinn = { version = "0.11" }

View File

@@ -7,6 +7,6 @@ license = "MIT"
[dependencies] [dependencies]
iroh = "0.96" iroh = "0.96"
tokio = { workspace = true } tokio = { version = "1", features = ["macros", "rt-multi-thread", "time", "sync"] }
tracing = { workspace = true } tracing = "0.1"
anyhow = { workspace = true } anyhow = "1"