Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is a proposal to allow users to pass
node:child_process
native options directly at the top-level instead of namespacing them inoptions.nativeOptions
.Using
options.nativeOptions
is nice as it allows us to distinguish betweennano-spawn
curated options, and forwards "everything else" tonode:child_process
spawn()
.That being said, I believe allowing native options at the top level could provide with more pros than cons:
stdout: 'inherit'
,timeout
,signal
,shell
,env
,cwd
. Entering{nativeOptions: {timeout: 1000}}
is more cumbersome than directly{timeout: 1000}
.signal
andtimeout
), but not others, requires typing and documenting them. It also adds a few bytes (although not much). Flattening it the top level would remove that, keeping the API and types small. Hopefully,nano-spawn
will not have that many options (if any? let's see), so it'd be nice to be able to keep the API very small.Please let me know what you think.