child_process: setup stdio on error when possible#27696
child_process: setup stdio on error when possible#27696cjihrig merged 1 commit intonodejs:masterfrom
Conversation
|
Is this |
|
It's a breaking change if code relies on stdio streams NOT being configured when spawn fails with |
|
CI: https://ci.nodejs.org/job/node-test-pull-request/23114/ EDIT(cjihrig): CI was yellow. |
|
Ping for reviews. |
|
Optional suggestion: The current condition is covered in tests. Would be great if you could confirm that this is still covered with the change. |
|
@Trott both branches of the conditional are still covered. I also pushed up some assertions to verify it. We may miss coverage on the |
lib/internal/child_process.js
Outdated
There was a problem hiding this comment.
Oh hey, it's that comment's fifth birthday tomorrow - that's long enough for me to change my mind. :-)
|
CI: https://ci.nodejs.org/job/node-test-pull-request/23229/ EDIT(cjihrig): CI was yellow. |
As more spawn() errors are classified as runtime errors, it's no longer appropriate to only check UV_ENOENT when determining if stdio can be setup. This commit reverses the check to look for EMFILE and ENFILE specifically. PR-URL: nodejs#27696 Fixes: nodejs#26852 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
As more spawn() errors are classified as runtime errors, it's no longer appropriate to only check UV_ENOENT when determining if stdio can be setup. This commit reverses the check to look for EMFILE and ENFILE specifically. PR-URL: #27696 Fixes: #26852 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
As more
spawn()errors are classified as runtime errors, it's no longer appropriate to only checkUV_ENOENTwhen determining if stdio can be setup. This commit reverses the check to look forEMFILEandENFILEspecifically.Fixes: #26852
Checklist
make -j4 test(UNIX), orvcbuild test(Windows) passes