tawasuyu

tawasuyu/shuma

Interactive shell with zsh/fish parity, native multiplexing + remote sessions, on Llimphi.

Rust 509Markdown 156TOML 81YAML 312114 Definiciones

⎇ 3a5b88e47ff3663f5214cbb464eef16dc3d1386f Cargo.toml TOML · 477 líneas · 23.5 KB Historia crudo

chore: actualizar git-deps a tawasuyu/ (auto-migración) 3a5b88e47 · sergio ·

1# Cargo.toml raíz STANDALONE de shuma — front-door sobre Llimphi.
2# Solo el código de shuma; Llimphi y lo fundacional por git-dep del monorepo gioser.git.
3[workspace]
4resolver = "2"
5members = [
6    "02_ruway/shuma/baremetal/matilda-app",
7    "02_ruway/shuma/baremetal/matilda-apply",
8    "02_ruway/shuma/baremetal/matilda-config",
9    "02_ruway/shuma/baremetal/matilda-core",
10    "02_ruway/shuma/baremetal/matilda-discover",
11    "02_ruway/shuma/baremetal/matilda-ghost",
12    "02_ruway/shuma/baremetal/matilda-linker",
13    "02_ruway/shuma/baremetal/matilda-plan",
14    "02_ruway/shuma/sandbox/shuma-card",
15    "02_ruway/shuma/sandbox/shuma-config",
16    "02_ruway/shuma/sandbox/shuma-core",
17    "02_ruway/shuma/sandbox/shuma-exec",
18    "02_ruway/shuma/sandbox/shuma-history",
19    "02_ruway/shuma/sandbox/shuma-infer",
20    "02_ruway/shuma/sandbox/shuma-intent",
21    "02_ruway/shuma/sandbox/shuma-line",
22    "02_ruway/shuma/sandbox/shuma-link",
23    "02_ruway/shuma/sandbox/shuma-module",
24    "02_ruway/shuma/sandbox/shuma-module-canvas",
25    "02_ruway/shuma/sandbox/shuma-module-commandbar",
26    "02_ruway/shuma/sandbox/shuma-module-launcher",
27    "02_ruway/shuma/sandbox/shuma-module-matilda",
28    "02_ruway/shuma/sandbox/shuma-module-minga",
29    "02_ruway/shuma/sandbox/shuma-module-shell",
30    "02_ruway/shuma/sandbox/shuma-protocol",
31    "02_ruway/shuma/sandbox/shuma-remote-exec",
32    "02_ruway/shuma/sandbox/shuma-session",
33    "02_ruway/shuma/sandbox/shuma-shell-render",
34    "02_ruway/shuma/sandbox/shuma-sysmon",
35    "02_ruway/shuma/shuma-cli",
36    "02_ruway/shuma/shuma-daemon",
37    "02_ruway/shuma/shuma-gateway",
38    "02_ruway/shuma/shuma-shell-llimphi",
39]
40
41[workspace.package]
42version = "0.1.0"
43edition = "2021"
44rust-version = "1.80"
45license = "MIT"
46authors = ["Sergio <gerencia@jlsoltech.com>"]
47publish = false
48repository = "https://git.gioser.net/tawasuyu/shuma"
49
50[workspace.dependencies]
51
52# === Registro de apps / menú global ===
53app-bus = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
54# === Serialización ===
55serde = { version = "1", features = ["derive"] }
56serde_json = "1"
57lsp-types = "0.97"
58serde-big-array = "0.5"
59postcard = { version = "1", features = ["use-std"] }
60toml = "0.8"
61ron = "0.8"
62bincode = "1"
63base64 = "0.22"
64
65# === Errores ===
66thiserror = "2"           # bump uniforme; arje (era 1) puede requerir ajustes menores
67anyhow = "1"
68
69# === Async ===
70tokio = { version = "1", features = ["full"] }
71tokio-util = { version = "0.7", features = ["compat"] }
72async-trait = "0.1"
73futures = "0.3"
74
75# === Observabilidad ===
76tracing = "0.1"
77tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] }
78
79# === Linux primitives (arje) ===
80nix = { version = "0.29", features = ["signal", "process", "sched", "mount", "fs", "socket", "net", "user"] }
81libc = "0.2"
82
83# === IDs / Hash / Crypto ===
84ulid = { version = "1", features = ["serde"] }
85uuid = { version = "1", features = ["v4", "rng-getrandom"] }
86sha2 = "0.10"
87blake3 = "1.5"
88ed25519-dalek = "2"
89aes-gcm = "0.10"
90chacha20poly1305 = "0.10"
91argon2 = "0.5"
92rand = "0.8"
93
94# === WASM (arje) ===
95# wasmi 1.0: unifica la versión con renaser (su kernel ya corre 1.0), para
96# que el ABI WASM del host sea idéntico en Linux y en bare-metal.
97wasmi = "1.0"
98wat = "1"
99
100# === Storage / DB ===
101sled = "0.34"
102rusqlite = { version = "0.31", features = ["bundled", "blob"] }
103
104# === Ingesta de documentos (iniy-ingest: PDF / EPUB) ===
105pdf-extract = "0.7"
106epub = "2.1"
107
108# === Bulk import Wikipedia (iniy-wiki dump) ===
109bzip2 = "0.4"
110
111# === Compresión (minga multi-bundle) ===
112zstd = "0.13"
113
114# === HTTP server (iniy-server) ===
115axum = "0.7"
116tower = "0.5"
117
118# === ANN sobre embeddings (iniy nli --ann) ===
119instant-distance = "0.6"
120
121# === P2P (minga) ===
122libp2p = { version = "0.56", features = ["tokio", "tcp", "noise", "yamux", "macros", "kad", "identify", "relay", "dcutr", "autonat", "mdns"] }
123libp2p-stream = "=0.4.0-alpha"
124libp2p-allow-block-list = "0.6"
125
126# === SSH (ssh, sandokan RemoteEngine, matilda) ===
127russh = "0.54"
128
129# === Math determinista cross-platform (dominium) ===
130libm = "0.2"
131
132# === SMF (takiy-midi) ===
133# midly: parser/emitter SMF tipo 0/1, no_std-friendly, sin allocs en hot path.
134midly = "0.5"
135
136# === Code parsing (minga) ===
137arboard = "3"
138ropey = "1.6"
139tree-sitter = "0.24"
140tree-sitter-rust = "0.23"
141tree-sitter-python = "0.23"
142tree-sitter-typescript = "0.23"
143tree-sitter-javascript = "0.23"
144tree-sitter-go = "0.23"
145
146# === FS notify ===
147notify = "6.1"
148
149# === Grafos (iniy, nakui-core ya lo usa directo en 0.6) ===
150petgraph = "0.6"
151
152# === Image decoding (nahual-image-viewer-llimphi) ===
153# default-features = false: nos quedamos con PNG + JPEG + WebP (lossless).
154# tullpu-render exporta a las tres; AVIF/TIFF/… los habilitamos si una app
155# los pide específicamente.
156image = { version = "0.25", default-features = false, features = ["png", "jpeg", "webp"] }
157
158# === FUSE (minga-vfs) ===
159# default-features = false: prescinde de pkg-config/libfuse-dev en build.
160# El montaje pasa a ser Rust puro (vía el helper `fusermount3` en runtime).
161fuser = { version = "0.15", default-features = false }
162
163# === CLI / auth (minga) ===
164clap = { version = "4", features = ["derive"] }
165rpassword = "7"
166
167# === PAM (auth-core) ===
168pam = "0.8"
169
170# === D-Bus (arje compat) ===
171zbus = { version = "4", default-features = false, features = ["tokio"] }
172
173# === Tests ===
174tempfile = "3"
175
176# === Llimphi (motor gráfico soberano) ===
177# wgpu sobre Vulkan/Metal/DX12, winit para ventana en dev Linux.
178# raw-window-handle 0.6 alinea winit 0.30 con wgpu 24.
179# vello 0.5 = rasterizador vectorial sobre wgpu 24.
180# taffy 0.9 = motor Flexbox/Grid puro Rust (ya pulled por transitivos, lo alineamos).
181# parley 0.2 = shaping/layout de texto compatible con peniko 0.4 (que vello 0.5 expone).
182wgpu = "24"
183winit = "0.30"
184raw-window-handle = "0.6"
185pollster = "0.4"
186vello = "0.5"
187taffy = "0.9"
188# parley = shaping completo (bidi, ligatures, fallback CJK/emoji vía fontique, line break).
189parley = "0.4"
190# Bucle Elm (input→update→view→layout→raster→present). Lo consumen las apps.
191llimphi-ui = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
192# Paleta semántica compartida por las apps y los widgets.
193llimphi-theme = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
194# Tweens y helpers de animación sobre el bucle Elm.
195llimphi-motion = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
196# Iconos vectoriales (BezPath en grid 24×24) compartidos por todas las apps.
197llimphi-icons = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
198# Widgets reusables sobre llimphi-ui — uno por crate.
199llimphi-widget-app-header = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
200llimphi-widget-banner = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
201llimphi-widget-button = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
202llimphi-widget-card = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
203llimphi-clipboard = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
204llimphi-widget-context-menu = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
205llimphi-widget-edit-menu = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
206llimphi-widget-menubar = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
207llimphi-widget-list = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
208llimphi-widget-grid = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
209llimphi-widget-slider = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
210llimphi-widget-scroll = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
211llimphi-widget-splitter = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
212llimphi-widget-stat-card = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
213llimphi-widget-tabs = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
214llimphi-module-command-palette = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
215llimphi-module-diff-viewer = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
216llimphi-module-fif = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
217llimphi-module-file-picker = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
218llimphi-module-bookmarks = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
219llimphi-module-mini-map = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
220llimphi-module-shuma-term = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
221llimphi-module-symbol-outline = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
222llimphi-plugin-host = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
223llimphi-widget-theme-switcher = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
224llimphi-widget-text-area = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
225llimphi-widget-text-editor-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
226llimphi-widget-text-editor = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
227llimphi-widget-text-editor-lsp = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
228llimphi-widget-text-input = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
229llimphi-widget-tiled = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
230llimphi-widget-nodegraph = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
231llimphi-widget-tree = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
232llimphi-widget-navigator = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
233# Sello vectorial wawa (rombo + W implícita + Merkle Core).
234llimphi-widget-wawa-mark = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
235# Widgets de elegancia transversal (tooltip, spinner, progress, toast,
236# modal, empty, status-bar, shortcuts-help, splash).
237llimphi-widget-tooltip = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
238llimphi-widget-spinner = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
239llimphi-widget-progress = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
240llimphi-widget-toast = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
241llimphi-widget-modal = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
242llimphi-widget-empty = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
243llimphi-widget-status-bar = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
244llimphi-widget-shortcuts-help = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
245llimphi-widget-timeline = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
246llimphi-widget-splash = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
247# Controles de formulario y signaling (switch, segmented, breadcrumb,
248# badge, avatar, skeleton, field).
249llimphi-widget-switch = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
250llimphi-widget-segmented = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
251llimphi-widget-dock-rail = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
252llimphi-widget-breadcrumb = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
253llimphi-widget-badge = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
254llimphi-widget-avatar = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
255llimphi-widget-skeleton = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
256llimphi-widget-field = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
257# Firma visual transversal (gradient sutil + hairline accent).
258llimphi-widget-panel = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
259llimphi-widget-panes = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
260llimphi-workspace = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
261# Abstracción Selector — host (paths) + wawa (khipus).
262llimphi-module-selector = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
263
264# === Filesystem helpers ===
265directories = "5"
266
267# === Diff line-based (llimphi-module-diff-viewer) ===
268# `similar` es la crate de facto: implementa Myers + Patience + LCS,
269# expone `TextDiff` con ChangeTag por línea (Equal/Insert/Delete),
270# zero deps fuera de std. La 2.x es estable hace años.
271similar = "2"
272
273# === Fuzzy matching (shuma-history) ===
274# nucleo-matcher = mismo matcher que helix-editor: rápido, Unicode-correct,
275# bonus por prefijos, ranking estable. La versión 0.3 expone el API simple
276# que necesitamos (Matcher + Pattern + score).
277nucleo-matcher = "0.3"
278
279# === Transporte autenticado (shuma-link) ===
280# snow = framework Noise pure-rust. Lo usamos en modo Noise_XK (cliente
281# conoce la pubkey del servidor, server descubre la del cliente y la
282# valida contra una allowlist). ChaCha20-Poly1305 + X25519 + BLAKE2s.
283# La versión 0.9 viene pinneada por libp2p, así nos alineamos.
284snow = "0.9"
285hex = "0.4"
286
287# === PTY + emulador de terminal (shuma-exec, módulos REPL) ===
288# portable-pty aloja un PTY cross-platform; lo usamos para los
289# comandos TUI tipo vim/htop/less que necesitan un terminal de verdad.
290# vt100 parsea la secuencia de bytes que el PTY emite (ANSI + cursor
291# movement + erase + screen state) y mantiene un buffer de pantalla
292# renderizable como grid.
293portable-pty = "0.9"
294vt100 = "0.16"
295
296# === WASM web (gioser) ===
297wasm-bindgen = "0.2"
298wasm-bindgen-futures = "0.4"
299js-sys = "0.3"
300web-sys = "0.3"
301glam = "0.30"
302
303# === Markdown (pluma) ===
304pulldown-cmark = { version = "0.12", default-features = false, features = ["html"] }
305
306# === Archivos comprimidos (nahual archive viewer) ===
307# Sólo listamos el directorio central (nombres/tamaños); no descomprimimos,
308# por eso default-features=false alcanza para ZIP. Para tar.gz sí
309# descomprimimos en streaming con flate2 (ya declarado arriba), saltando
310# los datos de cada entrada — sólo leemos headers.
311zip = { version = "2.4", default-features = false }
312tar = { version = "0.4", default-features = false }
313
314# === Fuentes (nahual font viewer) ===
315# Parseo de TTF/OTF/TTC y extracción de contornos de glifo a paths.
316ttf-parser = "0.25"
317
318# ============================================================
319# Intra-workspace deps de nahual (referenciadas por workspace = true)
320# ============================================================
321nahual-text-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
322nahual-image-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
323nahual-thumb-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
324nahual-gallery-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
325nahual-video-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
326nahual-card-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
327nahual-audio-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
328nahual-tree-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
329nahual-hex-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
330nahual-table-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
331nahual-markdown-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
332nahual-archive-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
333nahual-font-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
334nahual-map-viewer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
335nahual-geo-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
336nahual-viewer-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
337nahual-file-explorer-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
338
339# ============================================================
340# Intra-workspace deps de pineal (módulo de gráficos)
341# ============================================================
342pineal-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
343pineal-render = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
344pineal-cartesian = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
345pineal-stream = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
346pineal-mesh = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
347pineal-financial = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
348pineal-polar = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
349pineal-heatmap = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
350pineal-treemap = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
351pineal-flow = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
352pineal-phosphor = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
353pineal-export = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
354pineal-hexbin = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
355pineal-contour = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
356pineal-bars = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
357pineal = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
358
359# ============================================================
360# Intra-workspace deps de iniy (laboratorio semántico de creencias)
361# ============================================================
362iniy-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
363iniy-ingest = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
364iniy-extract = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
365iniy-nli = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
366iniy-nli-llm = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
367iniy-graph = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
368iniy-store = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
369
370# === auto: declarados por crates internos faltantes ===
371cosmos-coords = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
372cosmos-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
373cosmos-ephemeris = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
374cosmos-time = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
375cosmos-wcs = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
376
377# === auto: externas de eternal ===
378celestial-eop-data = { version = "0.1"}
379approx = "0.5"
380byteorder = "1.5"
381cc = "1.0"
382chrono = "0.4"
383crc32fast = "1.4"
384criterion = "0.5"
385csv = "1.4"
386flate2 = "1.0"
387glob = "0.3"
388indicatif = "0.18"
389lz4_flex = "0.11"
390memmap2 = "0.9"
391mockito = "1.0"
392ndarray = "0.15"
393num-traits = "0.2"
394once_cell = "1.19"
395parking_lot = "0.12"
396png = "0.18"
397proptest = "1.4"
398quick-xml = "0.31"
399rayon = "1.8"
400regex = "1.11"
401reqwest = "0.12"
402tiff = "0.11"
403wide = "0.7"
404wiremock = "0.6"
405
406# === i18n (rimay-localize) ===
407fluent-bundle = "0.15"
408unic-langid = { version = "0.9", features = ["macros"] }
409sys-locale = "0.3"
410
411# === Servo (puriy-engine) ===
412# Crates publicados de Servo embebibles individualmente. html5ever/markup5ever
413# ya entran via ammonia→surrealdb→nakui, así que alineamos versión para no
414# duplicar el árbol. markup5ever_rcdom es el DOM Rc-based simple (suficiente
415# para Fase 2: parsear y renderizar, sin scripting). cssparser es el tokenizer
416# CSS de Stylo, sirve para inline styles. ureq = HTTP síncrono minimalista,
417# evita pull de tokio en el engine.
418html5ever = "0.39"
419markup5ever = "0.39"
420markup5ever_rcdom = "0.39"
421cssparser = "0.35"
422url = "2"
423ureq = { version = "2", default-features = false, features = ["tls"] }
424
425# === takiy-synth (SoundFont MIDI) ===
426# rustysynth = sintetizador SF2 puro Rust, MIT. Reemplaza el oscilador
427# feo de takiy-synth por muestras reales (FluidR3, GeneralUser GS, etc).
428rustysynth = "1.3"
429
430# === takiy-playback (audio device output) ===
431# cpal = backend de audio cross-platform (ALSA/PulseAudio/Pipewire en
432# Linux, WASAPI en Windows, CoreAudio en macOS). Lo usamos sólo para
433# abrir el device default y empujar muestras f32 — nada de mezclado
434# ni efectos en el callback.
435cpal = "0.15"
436
437# === media-source-wav (decoder PCM en disco) ===
438# hound = lector/escritor WAV puro-Rust, sin deps nativas. Soporta PCM
439# entero (8/16/24/32) y float (32). Suficiente para abrir samples y
440# stems de prueba sin meter ffmpeg/symphonia.
441hound = "3.5"
442
443# === media-source-{mp3,flac,vorbis} (decoders vía symphonia) ===
444# symphonia es una colección de decoders puro-Rust mantenida. `mp3` cubre
445# media-source-mp3; `flac` (decoder + demuxer FLAC nativo) cubre
446# media-source-flac (lossless); `vorbis` + `ogg` (codec + demuxer Ogg)
447# cubren media-source-vorbis (lossy clásico, libre de patentes). Sin aac:
448# ese tier patentado entra por shared/foreign-av.
449symphonia = { version = "0.5", default-features = false, features = ["mp3", "flac", "vorbis", "ogg"] }
450
451# === media-source-opus (decoder Opus NATIVO puro-Rust) ===
452# Opus es el formato de audio nativo de gioser (par del video AV1). ogg
453# demuxea las páginas Ogg; opus-wave es un port puro-Rust de libopus
454# (SILK+CELT, sin C ni FFI) — par del rav1d del lado video.
455ogg = "0.9"
456opus-wave = "3"
457
458# === media-source-webm (demux nativo Matroska/WebM) ===
459# matroska-demuxer es un demuxer puro-Rust de MKV/WebM (EBML). Saca los
460# paquetes de los tracks V_AV1 y A_OPUS para alimentar a media-source-av1
461# y media-source-opus — un .webm AV1+Opus se reproduce 100% nativo.
462matroska-demuxer = "0.7"
463# === git-deps al monorepo (agregados por la extracción) ===
464arje-incarnate = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
465card-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
466card-sidecar = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
467minga-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
468minga-store = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
469minga-vfs = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
470pata-host = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
471rimay-localize = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
472sandokan-core = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
473sandokan-local = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
474shuma-discern = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
475ssh = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
476wawa-config = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }
477wawa-config-llimphi = { git = "https://git.gioser.net/tawasuyu/tawasuyu.git", tag = "v0.1.0" }