Cooked-mode read_line() left line editing to the terminal, so Backspace on a multi-byte 汉字/かな/한글 deleted a byte (or behaved inconsistently across TTYs). Replace with a raw-mode reader (libc termios): Backspace pops a whole char, multi-byte input is reassembled from its continuation bytes, and a full-line redraw renders double-width glyphs correctly. Non-TTY input falls back to a plain read; raw mode is restored after each line. libc is already a locked transitive dep, so this builds offline. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
31 lines
609 B
TOML
31 lines
609 B
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"crates/xserv-cuda",
|
|
"crates/xserv-tensor",
|
|
"crates/xserv-kernels",
|
|
"crates/xserv-model",
|
|
"crates/xserv-tokenizer",
|
|
"crates/xserv-server",
|
|
"crates/xserv-distributed",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
license = "MIT"
|
|
|
|
[workspace.dependencies]
|
|
half = "2"
|
|
smallvec = "1"
|
|
libc = "0.2"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
safetensors = "0.5"
|
|
regex = "1"
|
|
tokio = { version = "1", features = ["full"] }
|
|
axum = "0.8"
|
|
uuid = { version = "1", features = ["v4"] }
|
|
tokio-stream = "0.1"
|
|
rand = "0.8"
|