22a0ae8c58
El volcado de la salida excedente ya no copia por espacio de usuario: pasado el tope, el lector escribe la línea que cruzó + lo bufereado y luego mueve el resto del pipe al archivo con splice(2) —kernel a kernel, sin copia—. Se aplica a stdout (el contenido principal). shuma-shell limpia sus archivos de volcado al cerrar la sesión (Drop). Los spills llevan el pid en el nombre para no chocar entre instancias. shuma-exec: 11 tests verdes (el de spill ahora verifica el camino splice). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
13 lines
463 B
TOML
13 lines
463 B
TOML
[package]
|
|
name = "shuma-exec"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
authors.workspace = true
|
|
publish.workspace = true
|
|
description = "shuma — ejecutor de comandos del shell con salida en streaming: lanza un proceso y entrega stdout/stderr línea a línea por un canal. Agnóstico de UI."
|
|
|
|
[dependencies]
|
|
# `zerocopy` habilita `splice` — volcado pipe→archivo sin copia.
|
|
nix = { workspace = true, features = ["zerocopy"] }
|