Skip to content

Commit

Permalink
doc: clarify stdout/stderr arguments to callback
Browse files Browse the repository at this point in the history
Clarify that the arguments to child_process.execFile
and child_process.exec callback can be Buffer or strings.

Fixes: #3389
PR-URL: #6015
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
  • Loading branch information
jasnell authored and Myles Borins committed Apr 11, 2016
1 parent 73e3b7b commit 56755de
Showing 1 changed file with 18 additions and 4 deletions.
22 changes: 18 additions & 4 deletions doc/api/child_process.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,8 @@ exec('my.bat', (err, stdout, stderr) => {
* `gid` {Number} Sets the group identity of the process. (See setgid(2).)
* `callback` {Function} called with the output when process terminates
* `error` {Error}
* `stdout` {Buffer}
* `stderr` {Buffer}
* `stdout` {String|Buffer}
* `stderr` {String|Buffer}
* Return: {ChildProcess}

Spawns a shell then executes the `command` within that shell, buffering any
Expand All @@ -156,6 +156,13 @@ the exit code of the child process while `error.signal` will be set to the
signal that terminated the process. Any exit code other than `0` is considered
to be an error.

The `stdout` and `stderr` arguments passed to the callback will contain the
stdout and stderr output of the child process. By default, Node.js will decode
the output as UTF-8 and pass strings to the callback. The `encoding` option
can be used to specify the character encoding used to decode the stdout and
stderr output. If `encoding` is `'buffer'`, `Buffer` objects will be passed to
the callback instead.

The `options` argument may be passed as the second argument to customize how
the process is spawned. The default options are:

Expand Down Expand Up @@ -197,8 +204,8 @@ replace the existing process and uses a shell to execute the command.*
* `gid` {Number} Sets the group identity of the process. (See setgid(2).)
* `callback` {Function} called with the output when process terminates
* `error` {Error}
* `stdout` {Buffer}
* `stderr` {Buffer}
* `stdout` {String|Buffer}
* `stderr` {String|Buffer}
* Return: {ChildProcess}

The `child_process.execFile()` function is similar to [`child_process.exec()`][]
Expand All @@ -219,6 +226,13 @@ const child = execFile('node', ['--version'], (error, stdout, stderr) => {
});
```

The `stdout` and `stderr` arguments passed to the callback will contain the
stdout and stderr output of the child process. By default, Node.js will decode
the output as UTF-8 and pass strings to the callback. The `encoding` option
can be used to specify the character encoding used to decode the stdout and
stderr output. If `encoding` is `'buffer'`, `Buffer` objects will be passed to
the callback instead.

### child_process.fork(modulePath[, args][, options])

* `modulePath` {String} The module to run in the child
Expand Down

0 comments on commit 56755de

Please sign in to comment.