Repository navigation
v1.0.1
roo v1.0.1
Stability pass. Fixes three real crash / data-loss bugs, caps unbounded buffers, trims hot-path work, and adds a --version flag.
Fixed
- Foreground logging crash at 10 MB:
writeLogused to end the stream after exceeding the cap and then crash on further writes. Now passes through and truncates on close. - Truncation flush race on exit: truncation now runs inside the stream's end callback so the final bytes flush before the file is rewritten.
stop --allleft zombie processes: now escalates to SIGKILL for procs that ignored SIGTERM, matching single-targetstop.- ESRCH crash in
stop:process.killcalls wrapped in try/catch for both single and--allpaths. - Pid file leak on spawn error: foreground
child.on("error")now cleans up its pid file. - Node 24 deprecation: switched
spawn(cmd, args, { shell: true })tospawn(cmd.join(" "), { shell: true })to silence the deprecation warning that will become an error in a future Node.
Performance
- Unbounded pause buffers: foreground and attach pause buffers now cap at 2 MB and drop oldest chunks, so a paused noisy child no longer blows up RSS.
- Full-log slurp on display:
attachpre-fill,roo logs, and top's logs view now tail-read the last 256 KB (1 MB for the TUI view) instead of loading the whole file. - Per-chunk
drawBarremoved from foreground stdout/stderr handlers. The 1 s bar tick already redraws. - Top tick caches immutable metadata:
cmdandstartedare written once at process creation and never change, so the 1 s refresh now reads them once per process instead of every tick.
Added
roo --version/roo -vprints the version.- Internal helpers:
killTree,forceKillTree,readLogTail. stripAnsinow usesutil.stripVTControlCharacters(Node 16.11+).
Install
./install.shRequires Node.js. See README for full usage.