@whi/subprocess
v0.2.1
Published
A node module that helps spawn child processes with deterministic controls
Downloads
13
Readme
new SubProcess( binary, ...args )
A node module that helps spawn child processes with deterministic controls.
Overview
This module is intended to provide more deterministic controls to the native
child_process
library.
Features
- Close subprocess if parent process exits or receives
SIGINT
- Line emitter for
stdout
andstderr
instead of data chunks - Await spawn success or error with timeout
- Await certain output with timeout
- Send signal and await close with a timeout
- Deterministic kill with timeout
- Await close event
Install
npm i @whi/subprocess
Basic Usage
let subprocess = new SubProcess( "python3", "-um", "http.server", "8888" );
subprocess.stdout( line => {
console.log( line );
});
subprocess.stderr( line => {
console.error( line );
});
await subprocess.ready();
await subprocess.output("Serving HTTP on 0.0.0.0 port 8888");
await subprocess.stop();
API Reference
See docs/API.md
Contributing
See CONTRIBUTING.md