tawasuyu

tawasuyu/brahman

Rust 321TOML 122JSON 14Markdown 114306 Sutichaykuna

⎇ 88051d220ae611c8eba0f6f3018ea6af7acac62f Cargo.toml TOML · 314 siq'ikuna · 11.5 KB Ñawpa willay ch'uya

creation 88051d220 · sergio ·

1[workspace]
2resolver = "2"
3members = [
4    # ============================================================
5    # core/ — Init y compat (arje absorbido)
6    # ============================================================
7    "crates/core/brahman-card",
8    "crates/core/brahman-card-wit",
9    "crates/core/brahman-cards",
10    "crates/core/brahman-handshake",
11    "crates/core/brahman-broker",
12    "crates/core/brahman-admin",
13    "crates/shared/brahman-sidecar",
14    "crates/shared/brahman-net",
15    "crates/shared/ente-incarnate",
16    "crates/core/ente-card",
17    "crates/core/ente-bus",
18    "crates/core/ente-cas",
19    "crates/core/ente-kernel",
20    "crates/core/ente-soma",
21    "crates/core/ente-wasm",
22    "crates/core/ente-snapshot",
23    "crates/core/ente-brain",
24    "crates/core/ente-zero",
25    "crates/core/ente-echo",
26    "crates/core/ente-policy-provider",
27    "crates/core/ente-logind-compat",
28    "crates/core/ente-hostnamed-compat",
29    "crates/core/ente-timedated-compat",
30    "crates/core/ente-localed-compat",
31    "crates/core/ente-journald-compat",
32    "crates/core/ente-resolved-compat",
33    "crates/core/ente-polkit-compat",
34    "crates/core/ente-machined-compat",
35    "crates/core/ente-tmpfiles-compat",
36    "crates/core/ente-systemd1-compat",
37    "crates/core/ente-notify-compat",
38    "crates/core/ente-binfmt-compat",
39    "crates/core/ente-timer-compat",
40
41    # ============================================================
42    # modules/semantic_dht/ — DHT semántico (minga absorbido)
43    # ============================================================
44    "crates/modules/semantic_dht/minga-core",
45    "crates/modules/semantic_dht/minga-store",
46    "crates/modules/semantic_dht/minga-p2p",
47    "crates/modules/semantic_dht/minga-vfs",
48    "crates/modules/semantic_dht/minga-cli",
49
50    # ============================================================
51    # modules/ui_engine/ — Motor de widgets (yahweh libs+widgets)
52    # ============================================================
53    "crates/modules/ui_engine/libs/core",
54    "crates/modules/ui_engine/libs/theme",
55    "crates/modules/ui_engine/libs/launcher",
56    "crates/modules/ui_engine/libs/bus",
57    "crates/modules/ui_engine/libs/meta-schema",
58    "crates/modules/ui_engine/libs/meta-runtime",
59    "crates/modules/ui_engine/libs/providers/fs",
60    "crates/modules/ui_engine/libs/providers/sqlite",
61    "crates/modules/ui_engine/widgets/tree",
62    "crates/modules/ui_engine/widgets/container_core",
63    "crates/modules/ui_engine/widgets/splitter",
64    "crates/modules/ui_engine/widgets/tabs",
65    "crates/modules/ui_engine/widgets/tiled",
66    "crates/modules/ui_engine/widgets/text_input",
67    "crates/modules/ui_engine/widgets/meta-form",
68    "crates/modules/ui_engine/widgets/banner",
69    "crates/modules/ui_engine/widgets/card",
70    "crates/modules/ui_engine/widgets/stat-card",
71    "crates/modules/ui_engine/widgets/app-header",
72    "crates/modules/ui_engine/widgets/theme-switcher",
73
74    # --- lapaloma: módulo de gráficos data-viz (ver ARCHITECTURE.md fuente) ---
75    "crates/modules/ui_engine/libs/lapaloma-core",
76    "crates/modules/ui_engine/widgets/lapaloma-render",
77    "crates/modules/ui_engine/widgets/lapaloma-cartesian",
78    "crates/modules/ui_engine/widgets/lapaloma-stream",
79    "crates/modules/ui_engine/widgets/lapaloma-mesh",
80    "crates/modules/ui_engine/widgets/lapaloma-financial",
81    "crates/modules/ui_engine/widgets/lapaloma-polar",
82    "crates/modules/ui_engine/widgets/lapaloma-heatmap",
83    "crates/modules/ui_engine/widgets/lapaloma-treemap",
84    "crates/modules/ui_engine/widgets/lapaloma-flow",
85    "crates/modules/ui_engine/widgets/lapaloma-phosphor",
86    "crates/modules/ui_engine/widgets/lapaloma-export",
87    "crates/modules/ui_engine/widgets/lapaloma",
88
89    # ============================================================
90    # modules/nakui/ — ERP matemático (nakui absorbido)
91    # ============================================================
92    "crates/modules/nakui/core",
93
94    # ============================================================
95    # modules/nouser/ — explorador de Mónadas (nuevo)
96    # ============================================================
97    "crates/modules/nouser/card",
98    "crates/modules/nouser/core",
99    "crates/modules/nouser/nous",
100    "crates/modules/nouser/nous-mock",
101    "crates/modules/nouser/nous-real",
102
103    # ============================================================
104    # modules/shipote/ — runtime de espacios aislados con flujo tipado
105    # ============================================================
106    "crates/modules/shipote/shipote-card",
107    "crates/modules/shipote/shipote-protocol",
108    "crates/modules/shipote/shipote-discern",
109    "crates/modules/shipote/shipote-core",
110
111    # ============================================================
112    # modules/gioser/ — landing WASM (chacana + 4 elementos)
113    # ============================================================
114    "crates/modules/gioser/gioser-geom",
115    "crates/modules/gioser/gioser-physics",
116    "crates/modules/gioser/gioser-palette",
117    "crates/modules/gioser/gioser-shaders",
118    "crates/modules/gioser/gioser-canvas-web",
119
120    # ============================================================
121    # apps/ — apps que consumen el protocolo (yahweh modules+shell)
122    # ============================================================
123    "crates/apps/file_explorer",
124    "crates/apps/database_explorer",
125    "crates/apps/text_viewer",
126    "crates/apps/image_viewer",
127    "crates/apps/yahweh-shell",
128    "crates/apps/nouser-explorer",
129    "crates/apps/nakui-explorer",
130    "crates/apps/nakui-ui",
131    "crates/apps/minga-explorer",
132    "crates/apps/brahman-broker-explorer",
133    "crates/apps/brahman-demo",
134    "crates/apps/shipote-daemon",
135    "crates/apps/shipote-cli",
136    "crates/apps/shipote-gateway",
137    "crates/apps/shipote-shell",
138    "crates/apps/gioser-web",
139]
140
141[workspace.package]
142version = "0.1.0"
143edition = "2021"
144rust-version = "1.80"
145license = "MIT OR Apache-2.0"
146authors = ["Brahman Contributors"]
147publish = false
148repository = "https://example.invalid/brahman"
149
150[workspace.dependencies]
151# === Serialización ===
152serde = { version = "1", features = ["derive"] }
153serde_json = "1"
154serde-big-array = "0.5"
155postcard = { version = "1", features = ["use-std"] }
156toml = "0.8"
157bincode = "1"
158base64 = "0.22"
159
160# === Errores ===
161thiserror = "2"           # bump uniforme; arje (era 1) puede requerir ajustes menores
162anyhow = "1"
163
164# === Async ===
165tokio = { version = "1", features = ["full"] }
166tokio-util = { version = "0.7", features = ["compat"] }
167async-trait = "0.1"
168futures = "0.3"
169
170# === Observabilidad ===
171tracing = "0.1"
172tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] }
173
174# === Linux primitives (arje) ===
175nix = { version = "0.29", features = ["signal", "process", "sched", "mount", "fs", "socket", "net", "user"] }
176libc = "0.2"
177
178# === IDs / Hash / Crypto ===
179ulid = { version = "1", features = ["serde"] }
180uuid = { version = "1", features = ["v4"] }
181sha2 = "0.10"
182blake3 = "1.5"
183ed25519-dalek = "2"
184aes-gcm = "0.10"
185argon2 = "0.5"
186rand = "0.8"
187
188# === WASM (arje) ===
189wasmi = "0.40"
190wat = "1"
191
192# === Storage / DB ===
193sled = "0.34"
194rusqlite = { version = "0.31", features = ["bundled", "blob"] }
195
196# === P2P (minga) ===
197libp2p = { version = "0.56", features = ["tokio", "tcp", "noise", "yamux", "macros", "kad", "identify"] }
198libp2p-stream = "=0.4.0-alpha"
199libp2p-allow-block-list = "0.6"
200
201# === Code parsing (minga) ===
202tree-sitter = "0.24"
203tree-sitter-rust = "0.23"
204tree-sitter-python = "0.23"
205tree-sitter-typescript = "0.23"
206tree-sitter-javascript = "0.23"
207tree-sitter-go = "0.23"
208
209# === FS notify ===
210notify = "6.1"
211
212# === CLI / auth (minga) ===
213clap = { version = "4", features = ["derive"] }
214rpassword = "7"
215
216# === D-Bus (arje compat) ===
217zbus = { version = "4", default-features = false, features = ["tokio"] }
218
219# === Tests ===
220tempfile = "3"
221
222# === GPUI (yahweh) ===
223gpui = "0.2"
224
225# === Filesystem helpers ===
226directories = "5"
227
228# === WASM web (gioser) ===
229wasm-bindgen = "0.2"
230js-sys = "0.3"
231web-sys = "0.3"
232glam = "0.30"
233
234# ============================================================
235# Intra-workspace deps de yahweh (referenciadas por workspace = true)
236# ============================================================
237yahweh-core = { path = "crates/modules/ui_engine/libs/core" }
238yahweh-theme = { path = "crates/modules/ui_engine/libs/theme" }
239yahweh-bus = { path = "crates/modules/ui_engine/libs/bus" }
240yahweh-provider-fs = { path = "crates/modules/ui_engine/libs/providers/fs" }
241yahweh-provider-sqlite = { path = "crates/modules/ui_engine/libs/providers/sqlite" }
242yahweh-widget-tree = { path = "crates/modules/ui_engine/widgets/tree" }
243yahweh-widget-container-core = { path = "crates/modules/ui_engine/widgets/container_core" }
244yahweh-widget-splitter = { path = "crates/modules/ui_engine/widgets/splitter" }
245yahweh-widget-tabs = { path = "crates/modules/ui_engine/widgets/tabs" }
246yahweh-widget-tiled = { path = "crates/modules/ui_engine/widgets/tiled" }
247yahweh-widget-text-input = { path = "crates/modules/ui_engine/widgets/text_input" }
248yahweh-file-explorer = { path = "crates/apps/file_explorer" }
249yahweh-database-explorer = { path = "crates/apps/database_explorer" }
250yahweh-text-viewer = { path = "crates/apps/text_viewer" }
251yahweh-image-viewer = { path = "crates/apps/image_viewer" }
252
253# ============================================================
254# Intra-workspace deps de lapaloma (módulo de gráficos)
255# ============================================================
256lapaloma-core = { path = "crates/modules/ui_engine/libs/lapaloma-core" }
257lapaloma-render = { path = "crates/modules/ui_engine/widgets/lapaloma-render" }
258lapaloma-cartesian = { path = "crates/modules/ui_engine/widgets/lapaloma-cartesian" }
259lapaloma-stream = { path = "crates/modules/ui_engine/widgets/lapaloma-stream" }
260lapaloma-mesh = { path = "crates/modules/ui_engine/widgets/lapaloma-mesh" }
261lapaloma-financial = { path = "crates/modules/ui_engine/widgets/lapaloma-financial" }
262lapaloma-polar = { path = "crates/modules/ui_engine/widgets/lapaloma-polar" }
263lapaloma-heatmap = { path = "crates/modules/ui_engine/widgets/lapaloma-heatmap" }
264lapaloma-treemap = { path = "crates/modules/ui_engine/widgets/lapaloma-treemap" }
265lapaloma-flow = { path = "crates/modules/ui_engine/widgets/lapaloma-flow" }
266lapaloma-phosphor = { path = "crates/modules/ui_engine/widgets/lapaloma-phosphor" }
267lapaloma-export = { path = "crates/modules/ui_engine/widgets/lapaloma-export" }
268lapaloma = { path = "crates/modules/ui_engine/widgets/lapaloma" }
269
270[profile.release]
271lto = "thin"
272codegen-units = 1
273strip = "symbols"
274panic = "abort"
275
276[profile.dev]
277opt-level = 0
278# `line-tables-only` mantiene stack traces con archivo:línea correctos
279# pero descarta el resto de symbols. Reduce target/ ~40% sin sacrificar
280# debugging real para nuestro flujo (no usamos gdb sobre estos crates).
281debug = "line-tables-only"
282split-debuginfo = "unpacked"
283incremental = true
284# Más codegen-units = más paralelismo + builds incrementales más chicas
285# (cada cambio re-compila menos). Default es 256 en dev pero lo
286# anclamos para evitar regresiones.
287codegen-units = 256
288
289# Override puntual para deps grandes que NO debuggeamos: gpui, ort,
290# fastembed, tokenizers, image. Subir opt-level acá hace que sus libs
291# pesen menos en target/ (símbolos descartados durante la build).
292[profile.dev.package."*"]
293opt-level = 0
294debug = "line-tables-only"
295
296[profile.dev.package.gpui]
297opt-level = 1
298debug = false
299
300[profile.dev.package.ort]
301opt-level = 1
302debug = false
303
304[profile.dev.package.fastembed]
305opt-level = 1
306debug = false
307
308[profile.dev.package.tokenizers]
309opt-level = 1
310debug = false
311
312[profile.dev.package.image]
313opt-level = 1
314debug = false