Monorepo for Tangled
tangled.org
3.1 kB
110 lines
1[workspace]
2resolver = "2"
3members = ["bobbin/crates/*", "shuttle"]
4default-members = ["bobbin/crates/*"]
5exclude = ["sites"]
6
7[workspace.package]
8version = "0.0.1"
9edition = "2024"
10rust-version = "1.96"
11license = "MIT"
12authors = [
13 "Lewis <lewis@tangled.org>",
14 "Seongmin Lee <git@boltless.me>",
15 "oppiliappan <me@oppi.li>",
16 "Anirudh Oppiliappan <anirudh@tangled.org>",
17 "eti <eti@eti.tf>",
18 "dawn <dawn@tangled.org>",
19]
20
21[workspace.lints.rust]
22unsafe_code = "forbid"
23unused_must_use = "deny"
24
25[workspace.lints.clippy]
26dbg_macro = "warn"
27todo = "warn"
28print_stdout = "deny"
29print_stderr = "warn"
30
31[workspace.dependencies]
32bobbin-types = { path = "bobbin/crates/types" }
33bobbin-edge-index = { path = "bobbin/crates/edge-index" }
34bobbin-ingest = { path = "bobbin/crates/ingest" }
35bobbin-resolver = { path = "bobbin/crates/resolver" }
36bobbin-slingshot-client = { path = "bobbin/crates/slingshot-client" }
37bobbin-record-lru = { path = "bobbin/crates/record-lru" }
38bobbin-knot-proxy = { path = "bobbin/crates/knot-proxy" }
39bobbin-knot-ingest = { path = "bobbin/crates/knot-ingest" }
40bobbin-runtime = { path = "bobbin/crates/runtime" }
41bobbin-search = { path = "bobbin/crates/search" }
42bobbin-sim = { path = "bobbin/crates/bobbin-sim" }
43bobbin-xrpc = { path = "bobbin/crates/xrpc" }
44
45jacquard-common = "0.12.0-beta.2"
46jacquard-derive = "0.12.0-beta.2"
47jacquard-lexicon = { version = "0.12.0-beta.2", default-features = false }
48jacquard-identity = { version = "0.12.0-beta.2", features = ["cache"] }
49
50anyhow = "1"
51miette = "7"
52walkdir = "2"
53
54tokio = { version = "1.52", features = ["macros", "rt-multi-thread", "time", "signal", "io-util", "sync"] }
55tokio-util = "0.7"
56tokio-stream = "0.1"
57tokio-tungstenite = { version = "0.29", features = ["rustls-tls-webpki-roots"] }
58futures = "0.3"
59either = "1"
60
61serde = { version = "1", features = ["derive"] }
62serde_json = { version = "1", features = ["raw_value"] }
63serde_ipld_dagcbor = "0.6"
64
65chrono = { version = "0.4", features = ["serde"] }
66cid = "0.11"
67url = { version = "2", features = ["serde"] }
68bytes = "1"
69
70scc = "3"
71roaring = "0.11"
72lasso = { version = "0.7", features = ["multi-threaded"] }
73quick_cache = "0.6"
74getrandom = "0.3"
75ahash = { version = "0.8", default-features = false, features = ["std"] }
76
77reqwest = { version = "0.12", default-features = false, features = ["rustls-tls-webpki-roots", "http2", "json", "gzip", "stream"] }
78axum = "0.8"
79tower = { version = "0.5", features = ["util"] }
80tower-http = { version = "0.6", features = ["trace"] }
81http = "1"
82
83wiremock = "0.6"
84
85tantivy = "0.26"
86
87tracing = "0.1"
88tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt", "json"] }
89
90thiserror = "2"
91
92confique = { version = "0.4", default-features = false, features = ["toml"] }
93clap = { version = "4", features = ["derive", "env"] }
94toml = { version = "0.9", default-features = false, features = ["parse"] }
95
96[profile.release]
97lto = "fat"
98strip = true
99codegen-units = 1
100panic = "abort"
101
102[profile.bench]
103debug = 1
104strip = false
105
106[profile.profiling]
107inherits = "release"
108debug = 1
109strip = false
110lto = "thin"