Files
xserial/Cargo.toml
FallenSigh 530986d068 feat: xserial-client with session management, mlua integration, and 238 tests
- Session: background I/O task with SessionHandle for send/read/close/reconfigure
- SessionManager: multi-session collection with aggregated event broadcast
- Config: serializable SessionConfig/PipelineConfig/FramerConfig/DecoderConfig
- Lua: xserial global (open/list_ports/sleep/log) + session userdata API
- RingBuffer: bounded history buffer with pipeline filtering
- Core: added Serialize/Deserialize+Default to Endian/TextEncoding/PlotFormat
- Core: added Send bound to Framer trait for tokio task compatibility
- 238 tests (193 core + 10 config + 7 Lua + 9 session + 18 pipeline + 1 doctest)
2026-06-08 00:25:59 +08:00

55 lines
1.1 KiB
TOML

[workspace]
resolver = "2"
members = [
"crates/xserial-core",
"crates/xserial-client",
"crates/xserial-tui",
"crates/xserial-gui",
]
[workspace.dependencies]
# ── 异步运行时 ──
tokio = { version = "1", features = ["full"] }
async-trait = "0.1"
# ── 串口 ──
serialport = "4.9"
tokio-serial = "5.4"
# ── 协议解析 ──
bytes = "1"
nom = "8"
# ── 序列化 ──
serde = { version = "1", features = ["derive"] }
serde_json = "1"
# ── 错误处理 ──
thiserror = "2"
# ── 日志 ──
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
tracing-appender = "0.2"
# ── 工具 ──
hex = "0.4"
# ── 图像 ──
image = { version = "0.25", default-features = false, features = ["png"] }
# ── CLI ──
clap = { version = "4", features = ["derive"] }
# ── TUI ──
ratatui = "0.30"
crossterm = "0.28"
# ── GUI ──
egui = "0.34"
eframe = "0.34"
egui_plot = "0.35"
# ── Lua ──
mlua = { version = "0.11", features = ["luajit", "async", "serde", "send", "macros", "vendored"] }