Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cluster: support windowsHide option for workers #17412

Closed
wants to merge 3 commits into
base: master
from

Conversation

Projects
None yet
9 participants
@toddwong
Copy link
Contributor

toddwong commented Dec 1, 2017

Fixes: #17370

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • tests and/or benchmarks are included
  • documentation is changed or added
  • commit message follows commit guidelines
Affected core subsystem(s)

cluster

@bnoordhuis
Copy link
Member

bnoordhuis left a comment

LGTM with a couple of comments about the test.

assert.strictEqual(signal, null);
}));

cstdout.on('data', (data) => {

This comment has been minimized.

@bnoordhuis

bnoordhuis Dec 1, 2017

Member

Call cstdout.setEncoding('utf8'), then you don't have to .toString('utf8') below.

This comment has been minimized.

@toddwong

toddwong Dec 1, 2017

Author Contributor

Yeah, you are right, cstdout.setEncoding('utf8') make more sense here. Just deal too much binary data these days :D .

worker.disconnect();
}
});
cstdin.write(msg, 'utf8');

This comment has been minimized.

@bnoordhuis

bnoordhuis Dec 1, 2017

Member

You don't have to specify 'utf8' if you're writing a string, that's the default encoding.

This comment has been minimized.

@toddwong

toddwong Dec 1, 2017

Author Contributor

I wasn't aware of that...

process.stdout.write(data);
});
process.on('disconnect', function() {
process.stdin.pause();

This comment has been minimized.

@bnoordhuis

bnoordhuis Dec 1, 2017

Member

Can you explain why you call .pause() here?

This comment has been minimized.

@toddwong

toddwong Dec 1, 2017

Author Contributor

The stdin keeps the worker from exiting. That's the only way I know to get rid of it.

@mscdex

This comment has been minimized.

Copy link
Contributor

mscdex commented Dec 1, 2017

Shouldn't the test actually check that the console window doesn't exist somehow (e.g. using Powershell)?

@mscdex

This comment has been minimized.

Copy link
Contributor

mscdex commented Dec 1, 2017

Also, the test could probably be skipped on non-Windows platforms.

@bnoordhuis

This comment has been minimized.

Copy link
Member

bnoordhuis commented Dec 1, 2017

I'd say it's good to test that windowsHide doesn't have an adverse effect on other platforms.

@cjihrig

cjihrig approved these changes Dec 1, 2017

process.stdin.on('data', (data) => {
process.stdout.write(data);
});
process.on('disconnect', function() {

This comment has been minimized.

@cjihrig

cjihrig Dec 1, 2017

Contributor

It doesn't really matter, just curious why you used a function here but arrow functions everywhere else.

This comment has been minimized.

@toddwong

toddwong Dec 1, 2017

Author Contributor

My bad. A little careless. I wasn't expecting the stdin would block the process from exiting at the beginning, and put the disconnect handler a little later, and not notice the coding style difference.

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Dec 1, 2017

@mscdex I must confess that this test is just for "formally"(sorry about my English, can't find a proper word...) completeness according to the PR requirements (tests and/or benchmarks are included).

Actually, I don't know how to automatically test it at all, and very interested in advises.

@bnoordhuis So my test actually useful I think.

PS: Thanks for reviewing.

@toddwong toddwong force-pushed the toddwong:hwcicf branch from 4e07b0e to 0b9373a Dec 1, 2017

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Dec 1, 2017

Just polished the test code a little bit according to the above reviews

@bnoordhuis
Copy link
Member

bnoordhuis left a comment

LGTM, thanks. CI: https://ci.nodejs.org/job/node-test-pull-request/11845/

If there is a way to test with PS that the windows aren't actually created that would be even more awesome, but I have no idea how you'd test that.

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Dec 2, 2017

@bnoordhuis Just checked "test/parallel/test-child-process-windows-hide.js" and got some inspiration. See the commit 242d80c .

The idea is that, we just make sure the windowsHide option is passed to the underlying child_process.fork function correctly. And child_process.fork will make sure it passed to libuv finally. And libuv may do the real test for us (Not sure if/how it does, though).

@bnoordhuis

This comment has been minimized.

Copy link
Member

bnoordhuis commented Dec 2, 2017

What @mscdex was getting at is using some powershell-fu to check if the worker has a console window associated with it. I'm by no means a PS guru but I expect it would look something like this:

const output = child_process.execSync(
    `powershell -ExecutionPolicy Unrestricted -NoProfile  -c ` +
    `"Get-Process -Id ${worker.process.pid} | where ..."`)
    .toString('utf8');

Where ... checks if the Process object has a window associated with it or not. I don't know what the right property is but, given the plethora of Process properties, there must be one.

@bnoordhuis

This comment has been minimized.

Copy link
Member

bnoordhuis commented Dec 2, 2017

And libuv may do the real test for us (Not sure if/how it does, though).

No, libuv just passes it on to the OS.

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Dec 2, 2017

@bnoordhuis Just checked, there is a MainWindowHandle property. But there is another problem, the console windows won't be there for service processes even if they are spawned with windowsHide: false. Not sure if the CI runs as a service or not.

@bnoordhuis

This comment has been minimized.

Copy link
Member

bnoordhuis commented Dec 2, 2017

I'm reasonably sure the CI runs tests as a regular process and user.

@toddwong toddwong force-pushed the toddwong:hwcicf branch from d4e3f43 to 45134fb Dec 2, 2017

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Dec 2, 2017

@bnoordhuis @mscdex Added the fancy PowerShell thing! 😃

process.send({ type: 'workerOnline' });

let output = '0';
if (process.platform === 'win32')

This comment has been minimized.

@mscdex

mscdex Dec 2, 2017

Contributor

Braces please for multi-line bodies.

This comment has been minimized.

@toddwong

toddwong Dec 3, 2017

Author Contributor

Fixed!

@bnoordhuis
Copy link
Member

bnoordhuis left a comment

One suggestion, otherwise nice work.


let patchedFork = child_process.fork;
child_process.fork = (...args) => patchedFork.apply(this, args);
const cluster = require('cluster');

This comment has been minimized.

@bnoordhuis

bnoordhuis Dec 3, 2017

Member

You can get rid of the monkey-patch now because ultimately it doesn't how matter how the option is passed down, as long as the observable effect is the same.

Presumably the child_process.spawn() call can go too? I admit I don't quite understand why you run the tests in a child process.

This comment has been minimized.

@toddwong

toddwong Dec 3, 2017

Author Contributor

I keep the monkey-patch just in case some one run the tests on other platforms or in a windows service session. Not sure if this is necessary or practically useful.

It seems Windows only allocate a new console window for an attaching process spawned by a detached process.

If process D is spawned by process C with detached: true , and process W is spawned by process D with detached: false, W will get a new black console window popped up.

if D is spawned by C with detached: false or W is spawned by D with detached: true, no console window will pop up for W.

C = Command, D = Daemon, W = worker, practically.

That's why the test need to be run in a (detached) child process.

This comment has been minimized.

@toddwong

toddwong Dec 8, 2017

Author Contributor

@bnoordhuis Is this OK?

This comment has been minimized.

@bnoordhuis

bnoordhuis Dec 9, 2017

Member

I keep the monkey-patch just in case some one run the tests on other platforms or in a windows service session. Not sure if this is necessary or practically useful.

Neither, I'd say. :-)

Can you add a comment to the test that explains why it spawns a child process first? I get it now from your explanation but it's not obvious from just looking at the code.

This comment has been minimized.

@toddwong

toddwong Dec 10, 2017

Author Contributor

Sure, i'll add the comment, and remove the monkey-patch thing.

@MylesBorins MylesBorins force-pushed the nodejs:master branch from b7405ab to 7f086dd Dec 8, 2017

@BridgeAR

This comment has been minimized.

Copy link
Member

BridgeAR commented Dec 12, 2017

@mscdex @bnoordhuis @cjihrig would you mind to take another look? It seems like all comments got addressed.

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Dec 14, 2017

Thanks, guys. Sorry I forgot leave a message for the last commit.

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Dec 29, 2017

Hi, guys,

It's been a while. Would this be landed any soon?

@bnoordhuis

This comment has been minimized.

Copy link
Member

bnoordhuis commented Dec 29, 2017

Sorry for the delay. New CI because the old one is inaccessible and I've added the 'ready' label.

https://ci.nodejs.org/job/node-test-commit/15130/

@toddwong

This comment has been minimized.

Copy link
Contributor Author

toddwong commented Jan 5, 2018

Thanks!

MylesBorins added a commit that referenced this pull request Jan 8, 2018

cluster: support windowsHide option for workers
Fixes: #17370

PR-URL: #17412
Fixes: #17370
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>

MylesBorins added a commit that referenced this pull request Jan 9, 2018

cluster: support windowsHide option for workers
Fixes: #17370

PR-URL: #17412
Fixes: #17370
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>

MylesBorins added a commit that referenced this pull request Jan 9, 2018

cluster: support windowsHide option for workers
Fixes: #17370

PR-URL: #17412
Fixes: #17370
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>

@MylesBorins MylesBorins referenced this pull request Jan 10, 2018

Merged

v9.4.0 proposal #18069

@TimothyGu TimothyGu removed the author ready label Jan 13, 2018

@MylesBorins

This comment has been minimized.

Copy link
Member

MylesBorins commented Jan 24, 2018

Should this have been semver minor?

msoechting added a commit to hpicgs/node that referenced this pull request Feb 5, 2018

cluster: support windowsHide option for workers
Fixes: nodejs#17370

PR-URL: nodejs#17412
Fixes: nodejs#17370
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>

msoechting added a commit to hpicgs/node that referenced this pull request Feb 7, 2018

cluster: support windowsHide option for workers
Fixes: nodejs#17370

PR-URL: nodejs#17412
Fixes: nodejs#17370
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>

tniessen added a commit to tniessen/node that referenced this pull request Mar 24, 2018

tniessen added a commit that referenced this pull request Mar 25, 2018

doc: add missing metadata for settings.windowsHide
PR-URL: #19578
Refs: #17412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

targos added a commit that referenced this pull request Mar 27, 2018

doc: add missing metadata for settings.windowsHide
PR-URL: #19578
Refs: #17412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

MylesBorins added a commit that referenced this pull request Aug 2, 2018

cluster: support windowsHide option for workers
Fixes: #17370

PR-URL: #17412
Fixes: #17370
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>

MylesBorins added a commit that referenced this pull request Aug 2, 2018

doc: add missing metadata for settings.windowsHide
PR-URL: #19578
Refs: #17412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

MylesBorins added a commit that referenced this pull request Aug 2, 2018

doc: add missing metadata for settings.windowsHide
PR-URL: #19578
Refs: #17412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

codebytere added a commit to codebytere/node that referenced this pull request Aug 3, 2018

doc: add missing metadata for settings.windowsHide
PR-URL: nodejs#19578
Refs: nodejs#17412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

rvagg added a commit that referenced this pull request Aug 16, 2018

cluster: support windowsHide option for workers
Fixes: #17370

PR-URL: #17412
Fixes: #17370
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>

rvagg added a commit that referenced this pull request Aug 16, 2018

doc: add missing metadata for settings.windowsHide
PR-URL: #19578
Refs: #17412
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

@MylesBorins MylesBorins referenced this pull request Aug 16, 2018

Merged

v8.12.0 proposal #21593

MylesBorins added a commit that referenced this pull request Aug 17, 2018

2018-09-04, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    #21592
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593

MylesBorins added a commit that referenced this pull request Aug 17, 2018

2018-09-04, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    #21592
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593

BethGriggs added a commit to BethGriggs/node that referenced this pull request Aug 29, 2018

2018-09-04, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    nodejs#18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    nodejs#19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    nodejs#18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    nodejs#18399
  - support windowsHide option for workers (Todd Wong)
    nodejs#17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    nodejs#18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    nodejs#21592
  - upgrade libuv to 1.19.2 (cjihrig)
    nodejs#18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    nodejs#21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    nodejs#18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    nodejs#19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    nodejs#15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    nodejs#16644
  - add http fallback options to .createServer (Peter Marton)
    nodejs#15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    nodejs#19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    nodejs#18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    nodejs#16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    nodejs#17600
  - node internals' postmortem metadata (Matheus Marchini)
    nodejs#14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    nodejs#19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    nodejs#18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    nodejs#18186

PR-URL: nodejs#21593

MylesBorins added a commit that referenced this pull request Sep 3, 2018

2018-09-04, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.4.1 (Kat Marchán)
    #22591
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593

MylesBorins added a commit that referenced this pull request Sep 6, 2018

2018-09-11, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    #21592
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593

MylesBorins added a commit that referenced this pull request Sep 6, 2018

2018-09-11, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    #21592
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593

MylesBorins added a commit that referenced this pull request Sep 10, 2018

2018-09-11, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    #21592
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593

MylesBorins added a commit that referenced this pull request Sep 11, 2018

2018-09-11, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    #21592
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593

MylesBorins added a commit that referenced this pull request Sep 11, 2018

2018-09-11, Version 8.12.0 'Carbon' (LTS)
Notable Changes:

* async_hooks:
  - rename PromiseWrap.parentId (Ali Ijaz Sheikh)
    #18633
  - remove runtime deprecation (Ali Ijaz Sheikh)
    #19517
  - deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh)
    #18513
* cluster:
  - add cwd to cluster.settings (cjihrig)
    #18399
  - support windowsHide option for workers (Todd Wong)
    #17412
* crypto:
  - allow passing null as IV unless required (Tobias Nießen)
    #18644
* deps:
  - upgrade npm to 6.2.0 (Kat Marchán)
    #21592
  - upgrade libuv to 1.19.2 (cjihrig)
    #18918
  - Upgrade node-inspect to 1.11.5 (Jan Krems)
    #21055
* fs,net:
  - support as and as+ flags in stringToFlags() (Sarat Addepalli)
    #18801
  - emit 'ready' for fs streams and sockets (Sameer Srivastava)
    #19408
* http, http2:
  - add options to http.createServer() (Peter Marton)
    #15752
  - add 103 Early Hints status code (Yosuke Furukawa)
    #16644
  - add http fallback options to .createServer (Peter Marton)
    #15752
* n-api:
  - take n-api out of experimental (Michael Dawson)
    #19262
* perf_hooks:
  - add warning when too many entries in the timeline (James M Snell)
    #18087
* src:
  - add public API for managing NodePlatform (Cheng Zhao)
    #16981
  - allow --perf-(basic-)?prof in NODE\_OPTIONS (Leko)
    #17600
  - node internals' postmortem metadata (Matheus Marchini)
    #14901
* tls:
  - expose Finished messages in TLSSocket (Anton Salikhmetov)
    #19102
* **trace_events**:
  - add file pattern cli option (Andreas Madsen)
    #18480
* util:
  - implement util.getSystemErrorName() (Joyee Cheung)
    #18186

PR-URL: #21593
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.