at main 83 lines 2.8 kB view raw
1[package] 2name = "weaver-common" 3version.workspace = true 4edition.workspace = true 5license.workspace = true 6publish = false 7 8[features] 9default = [ "use-index"] 10native = ["jacquard/dns"] 11use-index = [] 12iroh = ["dep:iroh", "dep:iroh-gossip", "dep:iroh-tickets"] 13telemetry = ["dep:metrics", "dep:metrics-exporter-prometheus", "dep:tracing-subscriber", "dep:tracing-loki", "dep:axum"] 14cache = ["dep:mini-moka-wasm"] 15perf = [] 16 17[dependencies] 18n0-future = { workspace = true } 19weaver-api = { version = "0.1", path = "../weaver-api" } 20markdown-weaver = { workspace = true } 21http = "1.3.1" 22jacquard = { workspace = true } 23jacquard-common = { workspace = true } 24trait-variant = "0.1" 25serde = { workspace = true } 26serde_json = { version = "1.0.140", features = ["preserve_order", "raw_value"] } 27tokio = { version = "1.44", features = ["sync"] } 28miette = { workspace = true } 29thiserror = { workspace = true } 30tracing = { workspace = true } 31reqwest = { version = "0.12", default-features = false, features = [ 32 "json", 33] } 34 35markdown-weaver-escape = { workspace = true, features = ["std"] } 36mime-sniffer = "^0.1" 37 38# Real-time collaboration transport (iroh P2P) 39chrono = "0.4" 40blake3 = { version = "1", default-features = false, features = ["pure"] } 41postcard = "1.1.1" 42rand = "0.9.2" 43web-time = "1" 44 45iroh = { version = "0.95", default-features = false, optional = true } 46iroh-gossip = { version = "0.95", default-features = false, features = ["net"], optional = true } 47iroh-tickets = { version = "0.2", optional = true } 48 49# Telemetry (optional, native-only) 50metrics = { version = "0.24.2", optional = true } 51metrics-exporter-prometheus = { version = "0.17.2", optional = true } 52tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"], optional = true } 53tracing-loki = { version = "0.2", optional = true } 54axum = { version = "0.8", optional = true } 55 56getrandom = { version = "0.3", features = [] } 57ring = { version = "0.17", default-features = false } 58 59# TTL cache (optional) - mini-moka-wasm works on both native and WASM 60mini-moka-wasm = { version = "0.10.99", optional = true } 61 62 63[target.'cfg(not(all(target_family = "wasm", target_os = "unknown")))'.dependencies] 64regex = "1.11.1" 65 66# wasm-in-browser dependencies 67[target.'cfg(all(target_family = "wasm", target_os = "unknown"))'.dependencies] 68regex-lite = { version = "0.1" } 69futures-util = "0.3" 70js-sys = "0.3" 71pin-project = "1" 72wasm-bindgen = "0.2" 73wasm-bindgen-futures = "0.4" 74send_wrapper = "0.6" 75wasmworker = "0.1" 76wasmworker-proc-macro = "0.1" 77ring = { version = "0.17", default-features = false, features = ["wasm32_unknown_unknown_js"]} 78getrandom = { version = "0.3", default-features = false, features = ["wasm_js"] } 79web-sys = { version = "0.3", features = ["Window", "Performance"] } 80 81 82[dev-dependencies] 83tokio = { version = "1", features = ["macros", "rt"] }