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

v13.11.0 proposal #32185

Merged
merged 108 commits into from
Mar 12, 2020
Merged

v13.11.0 proposal #32185

merged 108 commits into from
Mar 12, 2020

Conversation

MylesBorins
Copy link
Contributor

@MylesBorins MylesBorins commented Mar 10, 2020

2020-03-11, Version 13.11.0 (Current), @MylesBorins

Notable Changes

  • async_hooks: add sync enterWith to ALS (Stephen Belanger) #31945
  • cli: allow --jitless V8 flag in NODE_OPTIONS (Andrew Neitsch) #32100
  • fs: return first folder made by mkdir recursive (Benjamin Coe) #31530
  • n-api: define release 6 (Gabriel Schulhof) #32058
  • os: create a getter for kernel version (Juan José Arboleda) #31732
  • wasi: add returnOnExit option (Colin Ihrig) #32101

Commits

  • [478f1e7e13] - async_hooks: avoid resource reuse by FileHandle (Gerhard Stoebich) #31972
  • [4d5981be96] - (SEMVER-MINOR) async_hooks: add sync enterWith to ALS (Stephen Belanger) #31945
  • [3befe80c4f] - async_hooks: fix ctx loss after nested ALS calls (Andrey Pechkurov) #32085
  • [ddb882439f] - benchmark: remove special test entries (Ruben Bridgewater) #31755
  • [5d92cec12d] - benchmark: add test and all options and improve errors" (Ruben Bridgewater) #31755
  • [e11f38cbab] - benchmark: refactor helper into a class (Ruben Bridgewater) #31755
  • [31ec44302a] - benchmark: remove problematic tls params (Brian White) #31816
  • [079bb31b29] - build: remove empty line on node.gyp file (Juan José Arboleda) #31952
  • [fe34da84de] - build: add mjs extension to lint-js (Nick Schonning) #32145
  • [d66daa5661] - build: support android build on ndk version equal or above 23 (forfun414) #31521
  • [3c06316679] - build: workaround for gclient python3 issues (Matheus Marchini) #32140
  • [64135249e5] - build: allow use of system-installed brotli (André Draszik) #32046
  • [f07d423d16] - build: allow passing multiple libs to pkg_config (André Draszik) #32046
  • [7c739aa386] - build: enable backtrace when V8 is built for PPC and S390x (Michaël Zasso) #32113
  • [e1347b411a] - cli: allow --jitless V8 flag in NODE_OPTIONS (Andrew Neitsch) #32100
  • [ce686c03ae] - crypto: optimize sign.update() and verify.update() (Ben Noordhuis) #31767
  • [a727b13343] - crypto: make update(buf, enc) ignore encoding (Ben Noordhuis) #31766
  • [893e9183b5] - doc: include the error type in the request.resolve doc (Joe Pea) #32152
  • [af73ed632c] - doc: clear up child_process command resolution (Denys Otrishko) #32091
  • [fa78aa4a60] - doc: clarify windows specific behaviour (Sam Roberts) #32079
  • [5bc51612b9] - doc: improve Buffer documentation (Anna Henningsen) #32086
  • [35bea0798e] - doc: add support encoding link on string_decoder.md (himself65) #31911
  • [3fa57ee0c2] - doc: add entry for AsyncHook class (Harshitha KP) #31865
  • [38329bd438] - doc: prevent tables from shrinking page (David Gilbertson) #31859
  • [bc1e3575d4] - doc: change worker.takeHeapSnapshot to getHeapSnapshot (Gerhard Stoebich) #32061
  • [7de4dfba79] - doc: remove personal pronoun usage in policy.md (Rich Trott) #32142
  • [618b389b6a] - doc: remove personal pronoun usage in fs.md (Rich Trott) #32142
  • [fa99fb2eac] - doc: remove personal pronoun usage in errors.md (Rich Trott) #32142
  • [2d39369ee5] - doc: remove personal pronoun usage in addons.md (Rich Trott) #32142
  • [02ebc81e94] - doc: revise tools/icu/README.md (Rich Trott) #32136
  • [50c5eb49ab] - doc: link setRawMode() from signal docs (Anna Henningsen) #32088
  • [97965f518c] - doc: document self-referencing a package name (Gil Tayar) #31680
  • [a79b8fa6f8] - doc: document fs.watchFile() bigint option (Colin Ihrig) #32128
  • [2e5f81f69c] - doc: fix broken links in benchmark README (Rich Trott) #32121
  • [50094de274] - doc: remove em dashes (Rich Trott) #32080
  • [5f12595e00] - doc: update email address in authors (Yael Hermon) #32026
  • [77e5b509a9] - doc,test: add server.timeout property to http2 public API (Andrey Pechkurov) #31693
  • [4c2e4d1747] - esm: remove unused parameter on module.instantiate (himself65) #32147
  • [55486bceb9] - events: fix removeListener for Symbols (zfx) #31847
  • [94f3eed229] - (SEMVER-MINOR) fs: make fs.read params optional (Lucas Holmquist) #31402
  • [7eed9d6bcc] - fs: fix WriteStream autoClose order (Robert Nagy) #31790
  • [ff58854dbe] - (SEMVER-MINOR) fs: return first folder made by mkdir recursive (Benjamin Coe) #31530
  • [1c4f4cc436] - fs: fix writeFile[Sync] for non-seekable files (Alba Mendez) #32006
  • [c106a857a9] - fs: fix valid id range on chown, lchown, fchown (himself65) #31694
  • [1ffa9f388f] - http: fix socket re-use races (Robert Nagy) #32000
  • [49a07f7932] - http, async_hooks: remove unneeded reference to wrapping resource (Gerhard Stoebich) #32054
  • [897b1d2e5e] - lib: move isLegalPort to validators, refactor (James M Snell) #31851
  • [607ac90906] - lib: improve value validation utils (Denys Otrishko) #31480
  • [c0ba6ec560] - meta: move thefourtheye to TSC Emeritus (Rich Trott) #32059
  • [710c9051e3] - n-api: define release 6 (Gabriel Schulhof) #32058
  • [e83671c3c4] - src: DRY crypto Update() methods (Ben Noordhuis) #31767
  • [025f658fa6] - src: fix spawnSync CHECK when SIGKILL fails (Ben Noordhuis) #31768
  • [2248ba760b] - src: fix missing extra ca in tls.rootCertificates (Eric Bickle) #32075
  • [fa376f420c] - src: fix -Wmaybe-uninitialized compiler warning (Ben Noordhuis) #31809
  • [c3aa3e70f0] - src: remove unused include from node_file.cc (Ben Noordhuis) #31809
  • [d8c927b5f1] - Revert "src: keep main-thread Isolate attached to platform during Dispose" (Anna Henningsen) #31853
  • [625d8f7007] - src: discard tasks posted to platform TaskRunner during shutdown (Anna Henningsen) #31853
  • [55a8ca8ee4] - src: elevate v8 namespace (RamanandPatil) #32041
  • [1e9a2516df] - src: use C++ style for struct with initializers (Sam Roberts) #32134
  • [6aa797b546] - src: implement per-process native Debug() printer (Joyee Cheung) #31884
  • [5127c700d0] - src: refactor debug category parsing (Joyee Cheung) #31884
  • [2388a40f56] - src: make aliased_buffer.h self-contained (Joyee Cheung) #31884
  • [258a80d3cc] - (SEMVER-MINOR) src: create a getter for kernel version (Juan José Arboleda) #31732
  • [cba75c5cf4] - src: handle NULL env scenario (Harshitha KP) #31899
  • [cc27846fb9] - src: simplify node_worker.cc using new KVStore API (Denys Otrishko) #31773
  • [296f35b888] - src: improve KVStore API (Denys Otrishko) #31773
  • [bd756883a7] - src: add missing namespace using statements in node_watchdog.h (legendecas) #32117
  • [e9f9d076e9] - src: fix -Wreorder compiler warning (Colin Ihrig) #32126
  • [7b9b578652] - src: fix -Winconsistent-missing-override warning (Colin Ihrig) #32126
  • [4ac1ce1071] - src: introduce node_sockaddr (James M Snell) #32070
  • [31e4a0d7ac] - src: Handle bad callback in asyc_wrap (Harshitha KP) #31946
  • [a03777096e] - src,http2: introduce node_http_common (James M Snell) #32069
  • [fab8c83253] - stream: avoid destroying writable source (Robert Nagy) #32198
  • [66fe2d90ff] - stream: avoid destroying http1 objects (Robert Nagy) #32197
  • [0a00552122] - stream: do not swallow errors with async iterators and pipeline (Matteo Collina) #32051
  • [f2636598e8] - stream: eos make const state const (Robert Nagy) #32031
  • [4b04bf89ad] - stream: re-use legacy destroyer (Robert Nagy) #31316
  • [7ce1cc93ce] - stream: simplify pipeline (Robert Nagy) #31316
  • [9d1b1a3fbd] - stream: simplify Writable.write (Robert Nagy) #31146
  • [1e05ddf406] - stream: improve writable.write() performance (Brian White) #31624
  • [90a4d438cb] - stream: combine properties using defineProperties (antsmartian) #31187
  • [4640ea24bd] - stream: don't destroy final readable stream in pipeline (Robert Nagy) #32110
  • [2585b814b0] - stream: add comments to pipeline implementation (Robert Nagy) #32042
  • [ceca1c3a4f] - test: improve test-fs-existssync-false.js (himself65) #31883
  • [84197eaae0] - test: mark test-timers-blocking-callback flaky on osx (Myles Borins) #32189
  • [4589863518] - test: always skip vm-timeout-escape-queuemicrotask (Denys Otrishko) #31980
  • [188f1d275f] - test: improve test-debug-usage (Rich Trott) #32141
  • [92cc406baf] - test: refactor all benchmark tests to use the new test option (Ruben Bridgewater) #31755
  • [6f9f2c5de4] - test: warn when inspector process crashes (Matheus Marchini) #32133
  • [6a9654a7a9] - test: increase test timeout to prevent flakiness (Ruben Bridgewater) #31716
  • [862cd2b49d] - test: use index.js if package.json "main" is empty (Ben Noordhuis) #32040
  • [3d64c9eba6] - test: changed function to arrow function (ProdipRoy89) #32045
  • [6545d1a55d] - test: allow EAI_FAIL in test-net-dns-error.js (Vita Batrla) #31780
  • [1428de8ee6] - test: add WASI test for path_link() (Colin Ihrig) #32132
  • [da7349d908] - test: remove superfluous checks in test-net-reconnect-error (Rich Trott) #32120
  • [74edcc5dd9] - test: apply camelCase in test-net-reconnect-error (Rich Trott) #32120
  • [8e435687bb] - test: update tests for larger Buffers (Jakob Kummerow) #32114
  • [83e9a3ea59] - test: add coverage for FSWatcher exception (Rich Trott) #32057
  • [89987b3a9f] - test: remove common.expectsInternalAssertion (Rich Trott) #32057
  • [35d0569356] - tools: enable no-useless-backreference lint rule (Colin Ihrig) #31400
  • [d3c4210ea0] - tools: enable default-case-last lint rule (Colin Ihrig) #31400
  • [814bb4a35d] - tools: update ESLint to 7.0.0-alpha.2 (Colin Ihrig) #31400
  • [cac1d01cad] - tools: update ESLint to 7.0.0-alpha.1 (Colin Ihrig) #31400
  • [c70cfd2ba6] - tools: update ESLint to 7.0.0-alpha.0 (Colin Ihrig) #31400
  • [bb41383bdc] - tools: use per-process native Debug() printer in mkcodecache (Joyee Cheung) #31884
  • [eaf6723804] - vm: refactor value validation with internal/validators.js (Denys Otrishko) #31480
  • [dd83bd266d] - (SEMVER-MINOR) wasi: add returnOnExit option (Colin Ihrig) #32101

HarshithaKP and others added 30 commits March 9, 2020 18:54
Align with the MaybeLocal<> API contract

PR-URL: #31946
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Remove convenience function for internal assertions. It is only used
once.

Signed-off-by: Rich Trott <[email protected]>

PR-URL: #32057
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
Cover an previously uncovered exception possible in the internal start
function for FSWatcher.

Signed-off-by: Rich Trott <[email protected]>

PR-URL: #32057
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
Make the cipher/decipher/hash/hmac update() methods ignore the input
encoding when the input is a buffer.

This is the documented behavior but some inputs were rejected, notably
when the specified encoding is 'hex' and the buffer has an odd length
(because a _string_ with an odd length is never a valid hex string.)

The sign/verify update() methods work okay because they use different
validation logic.

Fixes: #31751

PR-URL: #31766
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Introduce the SocketAddress utility class. The QUIC implementation
makes extensive use of this for handling of socket addresses. It
was separated out to make it generically reusable throughout core

Signed-off-by: James M Snell <[email protected]>

PR-URL: #32070
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Denys Otrishko <[email protected]>
update my personal email

PR-URL: #32026
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Matheus Marchini <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
thefourtheye has a considerable history of contributions to Node.js.
They have not been active much of late, and the TSC Charter has a
section about activity indicating that moving to Emeritus at this time
is the thing to do. Thanks for all you've done to make Node.js
fantastic, thefourtheye, and hope to see you around again soon!

PR-URL: #32059
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Anatoli Papirovski <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Сковорода Никита Андреевич <[email protected]>
These very small values can cause crashes/exceptions to occur on some
systems because most time is spent in V8 GC or in parts of node core
that are not being tested (e.g. streams).

PR-URL: #31816
Reviewed-By: James M Snell <[email protected]>
Our documentation uses em dashes inconsistently. They are treated
inconsistently typographically too. (For example, they are sometimes
surrounded by spaces and sometimes not.) They are also often confused
with ordinary hyphens such as in the CHANGELOG, where they are
inadvertently mixed together in a single list. The difference is
not obvious in the raw markdown but is very noticeable when rendered,
appearing to be a typographical error (which it in fact is).

The em dash is never needed. There are always alternatives. Remove em
dashes entirely.

PR-URL: #32080
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
The nghttp2 and nghttp3 (used in the QUIC implementation) share nearly
identical structs for header handling. However, they differ enough that
they need to be handled slightly different in each case. This PR
includes some elements introduced in the QUIC PR separated out to
make them independently reviewable, and updates the http2 implementation
to use the shared utilities.

Signed-off-by: James M Snell <[email protected]>

PR-URL: #32069
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
PR-URL: #32085
Reviewed-By: Stephen Belanger <[email protected]>
Reviewed-By: Vladimir de Turckheim <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Fixes: #32039

PR-URL: #32042
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Fix removeListener when eventName type is 'symbol'.

```js
const EventEmitter = require('events');
const myEmitter = new EventEmitter();
const sym = Symbol('symbol');
const fn = () => { };
myEmitter.on(sym, fn);

myEmitter.on('removeListener', (...args) => {
  console.log('removeListener');
  console.log(args, args[0] === sym, args[1] === fn);
});

myEmitter.removeAllListeners()
```

When the listener's eventName type is 'symbol' and removeListener is
called with no parameters, removeListener should be emitted.

PR-URL: #31847
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Shelley Vohr <[email protected]>
Reviewed-By: Yongsheng Zhang <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Whether and when a socket is destroyed or not after a timeout is up to
the user. This leaves an edge case where a socket that has emitted
'timeout' might be re-used from the free pool. Even if destroy is called
on the socket, it won't be removed from the freelist until 'close' which
can happen several ticks later.

Sockets are removed from the free list on the 'close' event.
However, there is a delay between calling destroy() and 'close'
being emitted. This means that it possible for a socket that has
been destroyed to be re-used from the free list, causing unexpected
failures.

PR-URL: #32000
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Denys Otrishko <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
V8 is about to increase the max TypedArray length to 2**32-1, which
Node inherits as Buffer.kMaxLength. Some tests relied on values greater
than the previous max length (2**31-1) to throw errors; this updates
those tests for the new max length.

PR-URL: #32114
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Сковорода Никита Андреевич <[email protected]>
Refs: nodejs/node-v8#119

PR-URL: #32113
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
This commit adds a WASI option allowing the __wasi_proc_exit()
function to return an exit code instead of forcefully terminating
the process.

PR-URL: #32101
Fixes: #32093
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Gus Caplan <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Rename two idnetifiers that were snake_case rather than camelCase.

Signed-off-by: Rich Trott <[email protected]>

PR-URL: #32120
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
The process.on('exit', ...) checks duplicate the work of
`common.mustCall()` and are superfluous. Remove them.

Signed-off-by: Rich Trott <[email protected]>

PR-URL: #32120
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
PR-URL: #32121
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Sam Roberts <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
PR-URL: #32132
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
This commit documents the bigint option to fs.watchFile(), which
has been supported since v10.5.0.

PR-URL: #32128
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
../src/node_http_common.h:497:8: warning: 'MemoryInfo' overrides a
member function but is not marked 'override' [-Winconsistent-missing-override]
  void MemoryInfo(MemoryTracker* tracker) const {

PR-URL: #32126
Refs: #32069
Reviewed-By: Denys Otrishko <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
../src/node_http_common-inl.h:126:7: warning: field 'token_'
will be initialized after field 'name_' [-Wreorder]
    : token_(other.token_),

PR-URL: #32126
Refs: #32069
Reviewed-By: Denys Otrishko <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Added a section for "Self-referencing a package using its name" that
documents importing a package's own exports (this was missed when
adding the feature).

PR-URL: #31680
Reviewed-By: Jan Krems <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
Reviewed-By: Geoffrey Booth <[email protected]>
PR-URL: #31694
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Yongsheng Zhang <[email protected]>
Although these `using`s can derived from other header files, it will
be better to be self-contained.

PR-URL: #32117
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
This adds `const char*` based APIs to KVStore to avoid multiple string
conversions (char -> Utf8 -> Local -> char etc.) when possible.

PR-URL: #31773
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #31773
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Test test-net-dns-error.js causes assertion failure on SunOS,
test expects ENOTFOUND, but OS returns EAI_FAIL.

Maximum length of a host name is 63 characters.
Test test-net-dns-error.js makes a connection attempt to
invalid host name (longer than maximum). Such
connection attempt on SunOS returns permanent failure
(EAI_FAIL) as invalid hostname won't be ever resolved.

PR-URL: #31780
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
himself65 and others added 10 commits March 11, 2020 16:23
PR-URL: #32147
Reviewed-By: Gus Caplan <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
PR-URL: #32152
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Trivikram Kamat <[email protected]>
Wrap reused read_wrap in a unique async resource to ensure that
executionAsyncResource() is not ambiguous.

PR-URL: #31972
Refs: #30959
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Stephen Belanger <[email protected]>
PR-URL: #31952
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
We might not have sufficient privileges to signal the child process
so don't make assumptions about the return value of `uv_process_kill()`.

Example:

    node -e 'child_process.spawnSync("sudo", ["ls"], { maxBuffer: 1 })'

No test because:

1. The test needs to run as root (can't invoke sudo), and

2. The parent needs to drop privileges but can't, because
   then the child process won't have sufficient privileges.

Fixes: #31747

PR-URL: #31768
Reviewed-By: Santiago Gimeno <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Use `StringBytes::InlineDecoder` to decode strings inputs in C++ land
instead of decoding them to buffers in JS land before passing them on
to the C++ layer. This is what the other update() methods already did.

PR-URL: #31767
Reviewed-By: Santiago Gimeno <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Factor out the common logic into a template function.
Removes approximately six instances of copy/pasted code.

PR-URL: #31767
Reviewed-By: Santiago Gimeno <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Both http and https modules have server.timeout property
in public API. This commit adds documentation section and test
for server.timeout in http2 module, so it becomes consistent
with http and https.

Also improves description of callback argument in documentation
for server.setTimeout().

PR-URL: #31693
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
http1 objects are coupled with their corresponding
res/req and cannot be treated independently as
normal streams. Add a special exception for this
in the pipeline cleanup.

Fixes: #32184

Backport-PR-URL: #32212
PR-URL: #32197
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
User might still want to be able to use the writable side
of src. This is in the case where e.g. the Duplex input
is not directly connected to its output. Such a case could
happen when the Duplex is reading from a socket and then echos
the data back on the same socket.

Backport-PR-URL: #32212
PR-URL: #32198
Refs: 4d93e10#commitcomment-37751035
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Mar 12, 2020

Notable changes:

* async_hooks:
  - add sync enterWith to ALS (Stephen Belanger)
    #31945
* cli:
  - allow --jitless V8 flag in NODE\_OPTIONS (Andrew Neitsch)
    #32100
* fs:
  - return first folder made by mkdir recursive (Benjamin Coe)
    #31530
* n-api:
  - define release 6 (Gabriel Schulhof)
    #32058
* src:
  - create a getter for kernel version (Juan José Arboleda)
    #31732
* wasi:
  - add returnOnExit option (Colin Ihrig)
    #32101

PR-URL: #32185
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Mar 12, 2020

@MylesBorins MylesBorins merged commit 4a53612 into v13.x Mar 12, 2020
MylesBorins added a commit that referenced this pull request Mar 12, 2020
MylesBorins added a commit that referenced this pull request Mar 12, 2020
Notable changes:

* async_hooks:
  - add sync enterWith to ALS (Stephen Belanger)
    #31945
* cli:
  - allow --jitless V8 flag in NODE\_OPTIONS (Andrew Neitsch)
    #32100
* fs:
  - return first folder made by mkdir recursive (Benjamin Coe)
    #31530
* n-api:
  - define release 6 (Gabriel Schulhof)
    #32058
* src:
  - create a getter for kernel version (Juan José Arboleda)
    #31732
* wasi:
  - add returnOnExit option (Colin Ihrig)
    #32101

PR-URL: #32185
MylesBorins added a commit to nodejs/nodejs.org that referenced this pull request Mar 12, 2020
@addaleax addaleax deleted the v13.11.0-proposal branch March 12, 2020 08:43
@richardlau
Copy link
Member

@MylesBorins Is there anything still holding up the AIX releases? (They're listed as coming soon in nodejs/nodejs.org#3014 and aren't uploaded to https://nodejs.org/dist/v13.11.0/ yet.)

@MylesBorins
Copy link
Contributor Author

MylesBorins commented Mar 12, 2020 via email

@MylesBorins
Copy link
Contributor Author

@richardlau I kicked off the build again and AIX is just not building.

https://ci-release.nodejs.org/job/iojs+release/5736/

@sam-github
Copy link
Contributor

sam-github commented Mar 12, 2020

image

EDIT: screenshot above is a little off, it was actually the next AIX condition further down that I changed, but its good enough to give a sense for history as to what I hacked around with.

I think that was the issue, I changed the AIX7 to AIX72 so that this condition:

10:45:12 Regular expression run condition: Expression=[AIX7], Label=[AIX72]
10:45:12 Run condition [Regular expression match] preventing perform for step [BuilderChain]

from https://ci-release.nodejs.org/job/iojs+release/5736/nodes=aix71-ppc64/console will match.

@MylesBorins can you try again?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project.
Projects
None yet
Development

Successfully merging this pull request may close these issues.