Releases: JordanMartinez/purescript-node-execa
v5.0.0
Breaking changes:
getResult'schildProcesslabel now stores anUnsafeChildProcess(previouslyChildProcess)getResult'sstdin/stdout/stderrconveience functions are now wrapped inMaybe
New Features:
-
Allows
stdiovalues to be configurablePreviously, a
stdiovalue of[ 'pipe', 'pipe', 'pipe', 'ipc' ] <> appendStdiowas used.
However, this caused issues when piping a parent process'stdininto the child process'stdin,
such that the child would never terminate when the user pressesCtrl+D. By makingstdio
configurable, one can useinheritinstead, which resolves this issue.Note:
execa'sstdioalways specifies the first 4 values in thestdioarray whereas
execaSynconly specifies the first 3 values.
v4.0.1
v4.0.0
Breaking changes:
-
Updated Node libraries to next breaking releases
-
Synced
signal-exitimplementation to signals used in library'sv4release -
Replace
ImmutableBufferusages withBufferin various areas -
Renamed
resulttogetResult:execa ... >>= _.result->execa ... >>= _.getResult -
Unified the result of
_.getResultinto a single type, regardless of whether process spawned, failed to spawn, or had an errorTypical usage will be something like:
result <- _.getResult =<< execa cmd args identity -- `stdout` and `stderr` are available whether process errored or not case result.exit of Normally 0 -> -- good exit Normally 127 -> -- ENOENT error _ -> do -- uh oh, something went wrong log $ result.stdout log $ result.stderr log $ show $ result.spawnError - did process fail to spawn? -- let's be real, you're going to do this at some point for ease of debugging: log $ show result
-
Removed numerous type aliases that are no longer relevant
New features:
getResult'- Runs the given callback after the process has successfully spawned but before the process terminates.
Bugfixes:
ENOENTerrors are now reported with exit code 127- (bug may have existed) accessing
stdiovalues before verifying that process spawned successfully
Other improvements:
- Upgraded CI's Node to LTS
- Dropped internal bindings to
node-child-process
v3.0.0
- Updates the
node-event-emitterdependency tov3.0.0 - Drops
onXevents in favor of exposing theChildProcessdirectly, so that one can useEventHandleto add listeners to it - Replace internal usages of
onfunction for adding event listeners withonce.
v2.0.0
v1.3.2
Bug Fixes:
- Update result's
error.stderrto storestderr's contents, notstdout's contents.
v1.3.1
v1.3.0
v1.2.0
Fix crash: IsExe.purs' getUidImpl/getGidImpl don't return Maybe
v1.1.0
Add util functions for piping to parent process stdio