Gerhard Stoebich
014feecc44
async_hooks: avoid GC tracking of AsyncResource in ALS
...
Manually destroy the AsyncResource created by AsyncLocalStore.run() to
avoid unneeded GC tracking in case a destroy hooks is present.
PR-URL: https://github.com/nodejs/node/pull/34653
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:51:19 -07:00
cjihrig
33505e2dbd
wasi: add __wasi_fd_filestat_set_times() test
...
PR-URL: https://github.com/nodejs/node/pull/34623
Reviewed-By: Gus Caplan <me@gus.host >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
Reviewed-By: David Carlier <devnexen@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:49:34 -07:00
cjihrig
0a3ac681c2
deps: update to uvwasi 0.0.10
...
Notable changes:
- The uvwasi_preopen_t now uses const char* for the mapped_path
and real_path fields. Previously, these were not `const`.
- uvwasi_path_filestat_get() now properly handles the
UVWASI_LOOKUP_SYMLINK_FOLLOW flag.
- uvwasi_options_init() has been added to reduce the boilerplate
code associated with initializing uvwasi_options_t's.
- The DEBUG() macro has been renamed to UVWASI_DEBUG() to reduce
naming conflicts with other projects.
- A compilation error on NetBSD 8.2 has been fixed.
- The uvwasi_fd_filestat_set_times() and
uvwasi_path_filestat_set_times() functions now have proper
implementations.
Fixes: https://github.com/nodejs/node/issues/34510
PR-URL: https://github.com/nodejs/node/pull/34623
Reviewed-By: Gus Caplan <me@gus.host >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
Reviewed-By: David Carlier <devnexen@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:49:32 -07:00
Rich Trott
607183efff
doc: edit process.title note for brevity and clarity
...
PR-URL: https://github.com/nodejs/node/pull/34627
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:46:50 -07:00
Anna Henningsen
318c982f3b
tools: fix C++ import checker argument expansion
...
Makefile assumes that it can pass a list of files to the import
checker, whereas the import checker expects a single argument
that is interpreted as a blob.
Fix that mismatch by accepting multiple arguments in the import
checker.
Refs: https://github.com/nodejs/node/pull/34565
PR-URL: https://github.com/nodejs/node/pull/34582
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: David Carlier <devnexen@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2020-08-07 08:43:19 -07:00
Anna Henningsen
bfebfdb149
src: fix linter failures
...
Fix linter failures when running the linter on all source files.
PR-URL: https://github.com/nodejs/node/pull/34582
Refs: https://github.com/nodejs/node/pull/34565
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: David Carlier <devnexen@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2020-08-07 08:43:17 -07:00
Rich Trott
93959b22b1
test: add debugging for callbacks in test-https-foafssl.js
...
The test is timing out once in a very long while on Windows CI. It is
unclear where the test gets stuck, so add more debugging statements to
try to locate it.
Refs: https://github.com/nodejs/node/issues/24397
PR-URL: https://github.com/nodejs/node/pull/34603
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:41:07 -07:00
Rich Trott
57c8549c56
test: add debugging for test-https-foafssl.js
...
The test is timing out once in a very long while on Windows CI. It is
unclear where the test gets stuck, so add more debugging statements to
try to locate it.
Refs: https://github.com/nodejs/node/issues/24397
PR-URL: https://github.com/nodejs/node/pull/34603
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:41:05 -07:00
iandrc
0dff5bc2d8
doc: update fs.watch() availability for IBM i
...
Add a line that IBM i does not support `fs.watch()`.
Fixes: https://github.com/nodejs/node/issues/34607
Refs: https://nodejs.org/docs/latest/api/fs.html#fs_availability
PR-URL: https://github.com/nodejs/node/pull/34611
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:38:43 -07:00
aetheryx
0fd73696a5
doc: fix typo in path.md
...
PR-URL: https://github.com/nodejs/node/pull/34550
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Harshitha K P <harshitha014@gmail.com >
Reviewed-By: Zeyu Yang <himself65@outlook.com >
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-07 08:37:27 -07:00
Mateusz Krawczuk
33060703cc
crypto: add OP flag constants added in OpenSSL v1.1.1
...
PR-URL: https://github.com/nodejs/node/pull/33929
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Alba Mendez <me@alba.sh >
Reviewed-By: Tobias Nießen <tniessen@tnie.de >
2020-08-07 15:24:55 +02:00
Mary Marchini
46bef7b771
test: add Actions annotation output
...
It's possible to annotate failures in Actions by printing
"::error file={},line={},col={}::{message}". This methos is preferrable
over using a problem matcher because problem matchers only allow
single-line messages, whereas ::error allows multi-line messages.
PR-URL: https://github.com/nodejs/node/pull/34590
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
2020-08-06 20:07:49 -07:00
Rich Trott
a11aa9b980
meta: enable http2 team for CODEOWNERS
...
PR-URL: https://github.com/nodejs/node/pull/34534
Reviewed-By: Anna Henningsen <anna@addaleax.net >
2020-08-06 19:42:52 -07:00
Rich Trott
e692adf3cf
doc: use _Class Method_ in async_hooks.md
...
We use _Class Method_ rather than _static_ in documentation headers in
buffer.md and crypto.md. We use _static_ in one place in
async_hooks.md. Change to _Class Method_ for consistency.
PR-URL: https://github.com/nodejs/node/pull/34626
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
2020-08-06 16:45:48 -07:00
Anna Henningsen
22cbbcf9d9
n-api,src: provide asynchronous cleanup hooks
...
Sometimes addons need to perform cleanup actions, for example
closing libuv handles or waiting for requests to finish, that
cannot be performed synchronously.
Add C++ API and N-API functions that allow providing such
asynchronous cleanup hooks.
Fixes: https://github.com/nodejs/node/issues/34567
PR-URL: https://github.com/nodejs/node/pull/34572
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Gabriel Schulhof <gabriel.schulhof@intel.com >
2020-08-07 00:02:02 +02:00
Gerhard Stoebich
a4e1755df2
async_hooks: don't read resource if ALS is disabled
...
Only call executionAsyncResource() in getStore() if the ALS instance is
enabled because the resource is not needed otherwise.
PR-URL: https://github.com/nodejs/node/pull/34617
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Michaël Zasso <targos@protonmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2020-08-06 23:31:16 +02:00
Gerhard Stoebich
48249889b6
async_hooks: avoid unneeded AsyncResource creation
...
Inspired by the callstack at https://github.com/nodejs/node/issues/34556#issuecomment-666743528
If the wanted store is equal to the active store it's not needed to
create an AsyncResource.
Refs: https://github.com/nodejs/node/issues/34556#issuecomment-666743528
PR-URL: https://github.com/nodejs/node/pull/34616
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com >
Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com >
Reviewed-By: Andrey Pechkurov <apechkurov@gmail.com >
2020-08-06 23:26:13 +02:00
Shelley Vohr
e43bb2f101
build: run CI on release branches
...
PR-URL: https://github.com/nodejs/node/pull/34649
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Mary Marchini <oss@mmarchini.me >
2020-08-06 10:43:46 -07:00
gengjiawen
df17fcdc71
build: enable build for node-v8 push
...
PR-URL: https://github.com/nodejs/node/pull/34634
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Mary Marchini <oss@mmarchini.me >
2020-08-06 01:56:58 +00:00
Gabriel Schulhof
734327280d
test: convert most N-API tests from C++ to C
...
* Prefix functions with `static` to make them local
* Remove anonymous namespaces
* `nullptr` -> `NULL`
* .cc -> .c and update binding.gyp
* `static_cast<x>()` -> `(x)()`
* Replace `new`/`delete` with `malloc()`/`free()`
(only in test_callback_scope)
* Move lambda out and convert to local function
(only in test_callback_scope)
* Remove superfluous `#include <vector>`
(only in test_callback_scope_recurse)
Some tests are best left as C++.
```bash
ls -l test/{node-api,js-native-api}/*/*.cc
```
for those remaining as C++ tests.
Signed-off-by: Gabriel Schulhof <gabriel.schulhof@intel.com >
PR-URL: https://github.com/nodejs/node/pull/34615
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
2020-08-05 14:21:51 -07:00
Bradley Farias
b04f2b6618
policy: increase tests via permutation matrix
...
PR-URL: https://github.com/nodejs/node/pull/34404
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-05 13:48:59 -05:00
Mary Marchini
e0d181cf2b
build: increase startCI verbosity and fix job name
...
Ref: https://github.com/nodejs/node/issues/34594#issuecomment-669245839
PR-URL: https://github.com/nodejs/node/pull/34635
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
2020-08-05 10:18:36 -07:00
Myles Borins
861a54c0e1
repl: improve static import error message in repl
...
Currently the error is rather ambiguous and does not inform folks that
static import is not supported in the repl. This overrides the default
error message with one that is more informative.
Closes: https://github.com/nodejs/node/issues/33576
PR-URL: https://github.com/nodejs/node/pull/33588
Fixes: https://github.com/nodejs/node/issues/33576
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Guy Bedford <guybedford@gmail.com >
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
2020-08-05 09:56:15 -04:00
Ruy Adorno
96fd6810b6
doc: add release key for Ruy Adorno
...
Add Ruy Adorno and his Release key.
Refs: https://github.com/nodejs/Release/pull/597
PR-URL: https://github.com/nodejs/node/pull/34628
Reviewed-By: Shelley Vohr <codebytere@gmail.com >
Reviewed-By: Myles Borins <myles.borins@gmail.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
2020-08-05 09:54:19 -04:00
Corey Butler
84b35b2867
doc: clarify process.title inconsistencies
...
Many users assume the act of assigning a value to `process.title` will
update the name of their application in apps like macOS Activity Monitor
or Windows Services Manager. This has worked in the past, but fails in
some versions of Node.js. Ultimately developers are left confused,
especially when it works in one version of Node.js and not another.
Given the recurring nature and complexity of the underlying problem, it
does not seem like a resolvable problem. This note clarifies the source
of the problem, sets developer expectations.
Refs: https://github.com/nodejs/node/issues/28945
PR-URL: https://github.com/nodejs/node/pull/34557
Fixes: https://github.com/nodejs/node/issues/34280
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: Rich Trott <rtrott@gmail.com >
2020-08-04 16:54:44 -07:00
Rich Trott
d5c7aec3cb
doc: use _can_ to describe actions in quic.md
...
Per Microsoft style guide:
> When ability is what you need to express, it's OK to use _can_ to
> describe actions or tasks that the reader or program is able to do.
> Use _might_ to express possibility. Don't use _may_, which might be
> interpreted as providing permission.
Refs: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/c/can-may
Refs: https://github.com/nodejs/node/pull/34353#issuecomment-659169228
PR-URL: https://github.com/nodejs/node/pull/34613
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
2020-08-04 16:27:22 -07:00
Rich Trott
319c275b26
doc: use _can_ to describe actions in quic.md
...
Per Microsoft style guide:
> When ability is what you need to express, it's OK to use _can_ to
> describe actions or tasks that the reader or program is able to do.
> Use _might_ to express possibility. Don't use _may_, which might be
> interpreted as providing permission.
Refs: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/c/can-may
Refs: https://github.com/nodejs/node/pull/34353#issuecomment-659169228
PR-URL: https://github.com/nodejs/node/pull/34613
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
2020-08-04 16:27:20 -07:00
Gerhard Stoebich
3ea94ec845
async_hooks: improve property descriptors in als.bind
...
The length property should be non enumerable to match behavior of
normal functions.
The asyncResource property is enumerable and therefore it should be
also writable to avoid issues like there:
https://github.com/nodejs/node/pull/30932#discussion_r379679982
Both properties should be configurable.
Refs: https://github.com/nodejs/node/pull/34574
PR-URL: https://github.com/nodejs/node/pull/34620
Reviewed-By: Andrey Pechkurov <apechkurov@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-04 18:05:01 +02:00
Anna Henningsen
0bb70b0a02
test: replace flaky pummel regression tests
...
These tests were written a long time ago, and use the allocation of
large amounts of unused memory as a way to detect use-after-free
problems with Buffers. As a result, the tests are resource-intensive
and may crash because of that.
Replace them with a more modern test. We don’t explicitly try to
*detect* use-after-free conditions, and instead rely on e.g. ASAN
(or the process just crashing hard) to do that for us.
Fixes: https://github.com/nodejs/node/issues/34527
PR-URL: https://github.com/nodejs/node/pull/34530
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Andrey Pechkurov <apechkurov@gmail.com >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
2020-08-04 08:43:18 +00:00
James M Snell
74df7496ff
async_hooks: add AsyncResource.bind utility
...
Creates an internal AsyncResource and binds a function to it,
ensuring that the function is invoked within execution context
in which bind was called.
PR-URL: https://github.com/nodejs/node/pull/34574
Reviewed-By: Stephen Belanger <admin@stephenbelanger.com >
Reviewed-By: Gus Caplan <me@gus.host >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Andrey Pechkurov <apechkurov@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
2020-08-03 18:40:16 -07:00
James M Snell
744a284ccc
stream: support async for stream impl functions
...
PR-URL: https://github.com/nodejs/node/pull/34416
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com >
2020-08-03 17:54:08 -07:00
Bradley Farias
ca26eae966
repl: give repl entries unique names
...
This is a workaround for the REPL for a problem when multiple of the
entries have the same source text
Fixes: https://github.com/nodejs/node/issues/1337
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=10284
PR-URL: https://github.com/nodejs/node/pull/34372
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de >
Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com >
2020-08-03 17:38:55 -05:00
Myles Borins
54746bb763
module: unflag Top-Level Await
...
This unflags Top-Level await so it can be used by default in the module
goal. This is accomplished by manually setting the
--harmony-top-level-await flag. We are allowing this as a one of
approval based on circumstances. It is not a precedent that future
harmony features will be manually enabled.
Refs: https://github.com/nodejs/node/issues/34551
PR-URL: https://github.com/nodejs/node/pull/34558
Reviewed-By: Mary Marchini <oss@mmarchini.me >
Reviewed-By: Zeyu Yang <himself65@outlook.com >
Reviewed-By: Gus Caplan <me@gus.host >
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
Reviewed-By: Shelley Vohr <codebytere@gmail.com >
2020-08-03 14:27:28 -04:00
Robert Nagy
8d8090b9bb
test: fix flaky http-parser-timeout-reset
...
Refs: https://github.com/nodejs/node/pull/34578#issuecomment-667941698
PR-URL: https://github.com/nodejs/node/pull/34609
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: Myles Borins <myles.borins@gmail.com >
2020-08-03 13:47:33 -04:00
cjihrig
a6a3684984
tools: update ESLint to 7.6.0
...
Update ESLint to 7.6.0
PR-URL: https://github.com/nodejs/node/pull/34589
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2020-08-03 08:48:57 -04:00
cjihrig
ee0b44fd93
tools: add meta.fixable to fixable lint rules
...
This commit adds the meta.fixable property to all fixable ESLint
rules. This is required as of ESLint 7.6.0.
PR-URL: https://github.com/nodejs/node/pull/34589
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2020-08-03 08:48:32 -04:00
James M Snell
6e65f26b73
quic: use QuicCallbackScope consistently for QuicSession
...
PR-URL: https://github.com/nodejs/node/pull/34541
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
2020-08-03 12:03:06 +00:00
James M Snell
d96083bad5
quic: introduce QuicCallbackScope
...
Alternative to `CallbackScope` that handles destroying the
`QuicSession` in the try_catch cleanup.
PR-URL: https://github.com/nodejs/node/pull/34541
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
2020-08-03 12:03:03 +00:00
James M Snell
4b0275ab87
quic: refactor clientHello
...
Refactor the `'clientHello'` event into a `clientHelloHandler`
configuration option and async function. Remove the addContext
API as it's not needed.
PR-URL: https://github.com/nodejs/node/pull/34541
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Jiawen Geng <technicalcute@gmail.com >
2020-08-03 12:03:00 +00:00
Tim Perry
e5dacc2f85
doc: document the connection event for HTTP2 & TLS servers
...
PR-URL: https://github.com/nodejs/node/pull/34531
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2020-08-03 11:59:58 +02:00
Andrey Pechkurov
b7a23295e8
async_hooks: fix id assignment in fast-path promise hook
...
Native side of fast-path promise hook was not calling JS
fastPromiseHook function when there were no async ids
previously assigned to the promise. Because of that already
created promises could not get id assigned in situations
when an async hook without a before listener function is
enabled after their creation. As the result executionAsyncId
could return wrong id when called within promise's .then().
Refs: https://github.com/nodejs/node/pull/34512
PR-URL: https://github.com/nodejs/node/pull/34548
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
2020-08-03 10:36:25 +03:00
Anna Henningsen
2ba93e1db4
async_hooks: fix resource stack for deep stacks
...
460c81dc0e introduced a bug where the execution resource was not
stored properly if we needed to call into C++ to extend the stack size.
Fix that bug by always storing the resource.
Refs: https://github.com/nodejs/node/pull/34319
Fixes: https://github.com/nodejs/node/issues/34556
PR-URL: https://github.com/nodejs/node/pull/34573
Reviewed-By: Andrey Pechkurov <apechkurov@gmail.com >
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
Reviewed-By: Gus Caplan <me@gus.host >
2020-08-03 10:27:15 +03:00
Rich Trott
a9c5b873ca
test: move buffer-as-path symlink test to its own test file
...
The buffer-as-path test for fs.symlinkSync() is a bit unusual and
potentially error-prone embedded in the general fs.symlink() test. Move
it to its own test file.
Refs: https://github.com/nodejs/node/pull/34540/files#r463168354
PR-URL: https://github.com/nodejs/node/pull/34569
Reviewed-By: Pranshu Srivastava <rexagod@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de >
2020-08-02 17:38:05 -07:00
Gerhard Stoebich
cb142d1341
async_hooks: execute destroy hooks earlier
...
Use a microtask to call destroy hooks in case there are a lot queued
as immediate may be scheduled late in case of long running
promise chains.
Queuing a mircrotasks in GC context is not allowed therefore an
interrupt is triggered to do this in JS context as fast as possible.
fixes: https://github.com/nodejs/node/issues/34328
refs: https://github.com/nodejs/node/issues/33896
PR-URL: https://github.com/nodejs/node/pull/34342
Fixes: https://github.com/nodejs/node/issues/34328
Refs: https://github.com/nodejs/node/issues/33896
Reviewed-By: Gus Caplan <me@gus.host >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-02 23:13:42 +02:00
Renée Kooi
64481c2b13
doc: mention null special-case for napi_typeof
...
The documentation said `napi_typeof` is similar to the `typeof`
operator, but the `typeof null` detects `'object'` while
`napi_typeof(a_null_value)` detects `napi_null`.
PR-URL: https://github.com/nodejs/node/pull/34577
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Gabriel Schulhof <gabriel.schulhof@intel.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: David Carlier <devnexen@gmail.com >
2020-08-02 11:57:47 -07:00
Derek Lewis
0be93eeb33
doc: add DerekNonGeneric to collaborators
...
Fixes: https://github.com/nodejs/node/issues/34369
PR-URL: https://github.com/nodejs/node/pull/34602
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com >
2020-08-02 12:56:04 -04:00
Robert Nagy
da4d8de9d0
http: reset headers timeout on headers complete
...
headers timeout should not occur *after* headers have been
received.
Fixes: https://github.com/nodejs/node/issues/34576
PR-URL: https://github.com/nodejs/node/pull/34578
Reviewed-By: Anna Henningsen <anna@addaleax.net >
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Pranshu Srivastava <rexagod@gmail.com >
2020-08-02 09:35:18 +02:00
Rich Trott
73d713b16e
test: change Fixes: to Refs:
...
Tests don't fix things generally, so use "Refs:" to refer people to
GitHub issues.
PR-URL: https://github.com/nodejs/node/pull/34568
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
Reviewed-By: Luigi Pinca <luigipinca@gmail.com >
2020-08-01 17:08:01 -07:00
Rich Trott
aeaf16194b
doc: revise N-API versions matrix text
...
Revise text for clarity, brevity, and conformance with our style guide.
PR-URL: https://github.com/nodejs/node/pull/34566
Reviewed-By: Gus Caplan <me@gus.host >
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com >
Reviewed-By: Richard Lau <riclau@uk.ibm.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2020-08-01 17:04:41 -07:00
Derek Lewis
45fa216ee5
esm: fix hook mistypes and links to types
...
Prior to this commit, the custom loader hooks were:
* missing the Node.js API ref docs types
* missing the function signature from their sections
* linking directly to the specification (not customary)
* had an inconsistent non-nullable JSDoc promise return
* had JSDoc object properties that weren't alpha-sorted
* designated set of non-nullable types when single was fine
Notes:
https://www.typescriptlang.org/play/index.html?strictNullChecks=true&useJavaScript=true#code/PQKhCgAIUgBAHAhgJ0QW0gbwM4BdkCWAdgOYC+k28ApgMYEBmB1yUMCK6WmbkftAeyIATArgJDsALkgBCAILJUATwA8eQqQB8AGl58kyakVwBVAEoAZGbIAUG4iUgAfSAFcR1JkWrCAlHrQkGQUgibUAB64vByoGJgAYh604kIUwl6IbgA2uObU2ALZAG7UMUa4bshE2FgACsgCaATY1KqY7sjZMg6kwVpkbMDgkfACyLiQiNjKRLSQDMmpRJBGhSXU9jT0TCw6kGG4kbj7GQxZufnrpX5YUAeSkx2GxmZWkAC8kEQ52cGfD3CUQA3PdGJBbABZRC4AAWADpUCImrZblpIAAGeEAVluHWAwEgAGUmtRAaJlvD7nwCZAEuNKKTIAzENk-lQ6IxmMhsKcBIy0GTaG48E1INkBCQCPMGAy1kVio4qXwaYT5NkAO6IZS1CpVFaIFYCABGACs6JMBAxIHCybLkPEqt1IOp8I4BsqVXrqncVSqnTIXiYLJZIAB+al+77UDWQENbTm7ZD7INvSx+eGwozWqSRv0+WPxjk7bkZrNeQIqsigviDPjgqEwhFI4Qo26qTE4vGQWnyIgCW3IcliCRET2qyAAdVhxgOrOyjkgAAMzhc8gUFdQl-tbVNkCQ3IKTLVaIbIMayWgBKJdsJ4ZAAJIrOEtSO00+tSBiADktUQwlEPpDQHGch2KVk3DtBk0BhWhYUXMIKVHVlIFGcZcGwcdVmoSofVXHJ12uTZiy5PZfSjeFKMOY5Kz9RCR0kGQAG1KPhaiojYoQkMkfZv2AwcAFp6OWb8AF1aOCPwa2Ce5aQAES8FgbX5AA5a9qHhU1antKY2WZQdKG2UieU9b0Vnwy4Nw2BMSzI9iTkgCzCM3KTwDIIA
https://closure-compiler.appspot.com/home#code%3D%252F%252F%2520%253D%253DClosureCompiler%253D%253D%250A%252F%252F%2520%2540compilation_level%2520ADVANCED_OPTIMIZATIONS%250A%252F%252F%2520%2540warning_level%2520VERBOSE%250A%252F%252F%2520%2540jscomp_error%2520strictCheckTypes%250A%252F%252F%2520%2540language_out%2520ECMASCRIPT_NEXT%250A%252F%252F%2520%2540checks_only%250A%252F%252F%2520%253D%253D%252FClosureCompiler%253D%253D%250A%250A%252F**%250A%2520*%2520%2540param%2520%257Bstring%257D%2520specifier%250A%2520*%2520%2540param%2520%257B%257B%250A%2520*%2520%2520%2520conditions%253A%2520!Array%253Cstring%253E%252C%250A%2520*%2520%2520%2520parentURL%253A%2520!(string%2520%257C%2520undefined)%252C%250A%2520*%2520%257D%257D%2520context%250A%2520*%2520%2540param%2520%257BFunction%257D%2520defaultResolve%250A%2520*%2520%2540returns%2520%257BPromise%253C%257B%2520url%253A%2520string%2520%257D%253E%257D%250A%2520*%252F%250Aexport%2520async%2520function%2520resolve(specifier%252C%2520context%252C%2520defaultResolve)%2520%257B%250A%2520%2520const%2520%257B%2520parentURL%2520%253D%2520null%2520%257D%2520%253D%2520context%253B%250A%2520%2520if%2520(Math.random()%2520%253E%25200.5)%2520%257B%2520%252F%252F%2520Some%2520condition.%250A%2520%2520%2520%2520%252F%252F%2520For%2520some%2520or%2520all%2520specifiers%252C%2520do%2520some%2520custom%2520logic%2520for%2520resolving.%250A%2520%2520%2520%2520%252F%252F%2520Always%2520return%2520an%2520object%2520of%2520the%2520form%2520%257Burl%253A%2520%253Cstring%253E%257D.%250A%2520%2520%2520%2520return%2520%257B%250A%2520%2520%2520%2520%2520%2520url%253A%2520parentURL%2520%253F%250A%2520%2520%2520%2520%2520%2520%2520%2520new%2520URL(specifier%252C%2520parentURL).href%2520%253A%250A%2520%2520%2520%2520%2520%2520%2520%2520new%2520URL(specifier).href%252C%250A%2520%2520%2520%2520%257D%253B%250A%2520%2520%257D%250A%2520%2520if%2520(Math.random()%2520%253C%25200.5)%2520%257B%2520%252F%252F%2520Another%2520condition.%250A%2520%2520%2520%2520%252F%252F%2520When%2520calling%2520%2560defaultResolve%2560%252C%2520the%2520arguments%2520can%2520be%2520modified.%2520In%2520this%250A%2520%2520%2520%2520%252F%252F%2520case%2520it's%2520adding%2520another%2520value%2520for%2520matching%2520conditional%2520exports.%250A%2520%2520%2520%2520return%2520defaultResolve(specifier%252C%2520%257B%250A%2520%2520%2520%2520%2520%2520...context%252C%250A%2520%2520%2520%2520%2520%2520conditions%253A%2520%255B...context.conditions%252C%2520'another-condition'%255D%252C%250A%2520%2520%2520%2520%257D)%253B%250A%2520%2520%257D%250A%2520%2520%252F%252F%2520Defer%2520to%2520Node.js%2520for%2520all%2520other%2520specifiers.%250A%2520%2520return%2520defaultResolve(specifier%252C%2520context%252C%2520defaultResolve)%253B%250A%257D
PR-URL: https://github.com/nodejs/node/pull/34240
Reviewed-By: Rich Trott <rtrott@gmail.com >
Reviewed-By: Guy Bedford <guybedford@gmail.com >
2020-08-01 15:51:25 -07:00