tawasuyu

tawasuyu/llimphi

Sovereign retained-mode GPU UI framework in Rust (wgpu+vello+taffy+parley), Elm loop, 40+ widgets.

Rust 660Markdown 302TOML 157RON 312382 Sutichaykuna

⎇ 168cd187519c0ad575d3ce63baee2f164c38d9d1 llimphi-hybrid/Cargo.toml TOML · 43 siq'ikuna · 2.3 KB Ñawpa willay ch'uya

chore: refresco desde el monorepo — vello 0.9 / wgpu 29, 120 miembros d251eb32b · Sergio ·

1[package]
2name = "llimphi-hybrid"
3version.workspace = true
4edition.workspace = true
5license.workspace = true
6authors.workspace = true
7publish.workspace = true
8description = "llimphi-hybrid — reproduce la `Escena` grabada de llimphi-cpu contra `vello_hybrid`, el rasterizador CPU+GPU SIN compute shaders. Es el único camino a píxeles en GPUs cuyo compilador de shaders no digiere el compute de vello (Mali-G57 del Redmi Note 13 Pro, medido en 02_ruway/llimphi/android/DIAGNOSTICO.md)."
9
10[dependencies]
11# La grabadora. `Escena`/`Orden`/`Forma`/`Glifo` no tocan wgpu ni GPU: son
12# peniko + kurbo y nada más. Eso fue lo que permitió escribir y verificar este
13# crate ANTES de migrar el workspace a wgpu 29 — vivía en 29 mientras el resto
14# seguía en 27, porque no hay ningún tipo de wgpu que cruce esa frontera.
15llimphi-cpu = { path = "../llimphi-cpu", version = "0.1.0" }
16
17# El rasterizador sin compute. Desde la migración del workspace a wgpu 29
18# (2026-07-28) comparte versión —y por lo tanto `Device`— con `llimphi-hal` y
19# con `vello`: los tres cuelgan del mismo wgpu, así que un `Pintor` de acá puede
20# rendir sobre la surface de allá sin conversión. Antes de esa migración no
21# podía, y ése fue justamente el motivo de hacerla.
22vello_hybrid.workspace = true
23wgpu.workspace = true
24
25# `PaintType`, `ImageSource`, `Mask`, `Pixmap` — el sustrato COMPARTIDO. Que
26# vello_cpu 0.0.9 y vello_hybrid 0.0.9 resuelvan al MISMO `vello_common 0.0.9`
27# es lo que hace barato todo esto: una `Mask` rasterizada en CPU se le entrega a
28# hybrid tal cual, sin conversión.
29vello_common = "0.0.9"
30
31# El `Glyph` posicionado que consume el builder de texto de hybrid. Es un crate
32# de Linebender como kurbo o peniko (esperanto: «glifo»), y se declara directo
33# porque en hybrid es dep OPCIONAL detrás de su feature `text` — que está en su
34# default, pero apoyarse en eso sería frágil: si alguien arma este grafo con
35# `default-features = false`, el tipo desaparece y el error sale lejos de acá.
36glifo = "0.1.1"
37
38[dev-dependencies]
39pollster.workspace = true
40# Sólo para `Hal::new_headless(true)`: fuerza el adapter de software (llvmpipe),
41# que es lo que hace determinista el número de `tests/hybrid_vs_cpu.rs` en
42# cualquier máquina y en CI. Es el mismo arnés que usa `llimphi-test`.
43llimphi-hal = { path = "../llimphi-hal", version = "0.1.0" }