#13576: node.js-12.17.0
-------------------------+-----------------------
Reporter: bdubbs | Owner: renodr
Type: enhancement | Status: assigned
Priority: normal | Milestone: 9.2
Component: BOOK | Version: SVN
Severity: normal | Resolution:
Keywords: |
-------------------------+-----------------------
Comment (by renodr):
{{{
Notable Changes
ECMAScript Modules - --experimental-modules flag removal
As of Node.js 12.17.0, the --experimental-modules flag is no longer
necessary
to use ECMAScript modules (ESM). However, the ESM implementation in
Node.js
remains experimental. As per our stability index: “The feature is not
subject
to Semantic Versioning rules. Non-backward compatible changes or removal
may
occur in any future release.” Users should be cautious when using the
feature
in production environments.
Unlike Node.js 14, using ESM will still emit a runtime experimental
warning,
either when a module is used a the application's entrypoint or the first
time
dynamic import() is called.
Please keep in mind that the implementation of ESM in Node.js differs from
the
developer experience you might be familiar with. Most transpilation
workflows
support features such as named exports from CommonJS module imports,
optional
file extensions or JSON modules that the Node.js ESM implementation does
not
support. It is highly likely that modules from transpiled environments
will
require a certain degree of refactoring to work in Node.js. It is worth
mentioning that many of our design decisions were made with two primary
goals.
Spec compliance and Web Compatibility. It is our belief that the current
implementation offers a future proof model to authoring ESM modules that
paves
the path to Universal JavaScript. Please read more in our documentation.
The ESM implementation in Node.js is still experimental but we do believe
that
we are getting very close to being able to call ESM in Node.js “stable”.
Removing the flag is a huge step in that direction.
We expect to remove the warning Node.js 12 later this year, possibly in
late
October, when Node.js 14 will become LTS.
AsyncLocalStorage API (experimental)
The AsyncLocalStorage class has been introduced in the Async Hooks module.
This API allows keeping a context across asynchronous operations. For
instance,
if a sequence id is stored within an instance of AsyncLocalStorage for
each
HTTP request entering in a server, it will be possible to retrieve this id
without having access the current HTTP request:
const http = require('http');
const { AsyncLocalStorage } = require('async_hooks');
const asyncLocalStorage = new AsyncLocalStorage();
function logWithId(msg) {
const id = asyncLocalStorage.getStore();
console.log(`${id !== undefined ? id : '-'}: `, msg);
}
let idSeq = 0;
http.createServer((req, res) => {
asyncLocalStorage.run(idSeq++, () => {
logWithId('start');
// Imagine any chain of async operations here.
setImmediate(() => {
logWithId('finish');
res.end();
});
});
}).listen(8080);
In this example, the logWithId function will always know what the current
request id is, even when there are multiple requests in parallel.
What can this API be used for
Use cases of this API include:
Logging
User identification
Performance tracking
Error tracking and handling
Much more!
Note: This API is still experimental and some methods might change in
future releases of Node.js
Contributed by Vladimir de Turckheim - #26540.
REPL previews
If further input is predicable, a suggestion is inserted as preview.
The REPL now supports previews similar to the Chrome DevTools console. An
input
suggestion is inserted as preview in case further input is predicable. The
suggestion may be accepted by either pressing <TAB> or <RIGHT> at the end
of
the input.
On top of that, output is previewed when entering variable names or
function
calls that have no side effect.
image
image
Check the preview in action
and try it out on your own. Just access the REPL on your terminal by
starting
the Node.js executable without any further command.
Contributed by Ruben Bridgewater - #30907, #30811.
REPL reverse-i-search
The REPL supports bi-directional reverse-i-search similar to
ZSH. It is triggered with <ctrl> + R
to search backwards and <ctrl> + S to search forwards.
Entries are accepted as soon as any button is pressed that doesn't
correspond
with the reverse search. Cancelling is possible by pressing escape or
<ctrl> + C.
Changing the direction immediately searches for the next entry in the
expected
direction from the current position on.
image
Reverse-i-search in action.
Contributed by Ruben Bridgewater - #31006.
REPL substring-based search
It is now possible to access former history entries very fast by writing
the
first characters of the formerly entered code you are looking for. Then
push
<UP> or <DOWN> to go through the history entries that start with those
characters.
It works similar to the Fish Shell substring-based
history search.
Contributed by Ruben Bridgewater - #31112.
Error monitoring
Monitoring error events
It is now possible to monitor 'error' events on an EventEmitter without
consuming the emitted error by installing a listener using the symbol
EventEmitter.errorMonitor:
const myEmitter = new MyEmitter();
myEmitter.on(EventEmitter.errorMonitor, (err) => {
MyMonitoringTool.log(err);
});
myEmitter.emit('error', new Error('whoops!'));
// Still throws and crashes Node.js
Contributed by Gerhard Stoebich - #30932.
Monitoring uncaught exceptions
It is now possible to monitor 'uncaughtException' events without
overriding
the default behavior that exits the process by installing an
'uncaughtExceptionMonitor' listener:
process.on('uncaughtExceptionMonitor', (err, origin) => {
MyMonitoringTool.logSync(err, origin);
});
// Intentionally cause an exception, but do not catch it.
nonexistentFunc();
// Still crashes Node.js
Contributed by Gerhard Stoebich - #31257.
File system APIs
New function: fs.readv
This new function (along with its sync and promisified versions) takes an
array
of ArrayBufferView elements and will write the data it reads sequentially
to
the buffers.
Contributed by Sk Sajidul Kadir - #32356.
Optional parameters in fs.read
A new overload is available for fs.read (along with its sync and
promisified
versions), which allows to optionally pass any of the offset, length and
position parameters.
Contributed by Lucas Holmquist - #31402.
Console groupIndentation option
The Console constructor (require('console').Console) now supports
different group indentations.
This is useful in case you want different grouping width than 2 spaces.
const { Console } = require('console');
const customConsole = new Console({
stdout: process.stdout,
stderr: process.stderr,
groupIndentation: 10
});
customConsole.log('foo');
// 'foo'
customConsole.group();
customConsole.log('foo');
// 'foo'
Contributed by rickyes - #32964.
maxStringLength option for util.inspect()
It is now possible to limit the length of strings while inspecting
objects.
This is possible by passing through the maxStringLength option similar to:
const { inspect } = require('util');
const string = inspect(['a'.repeat(1e8)], { maxStringLength: 10 });
console.log(string);
// "[ 'aaaaaaaaaa'... 99999990 more characters ]"
Contributed by rosaxny - #32392.
Stable N-API release 6
The following N-API features are now stable as part of the N-API 6
release:
napi_set_instance_data
napi_get_instance_data
napi_key_collection_mode
napi_key_filter
napi_key_conversion
napi_create_bigint_int64
napi_create_bigint_uint64
napi_create_bigint_words
napi_get_value_bigint_int64
napi_get_value_bigint_uint64
napi_get_value_bigint_words
napi_get_all_property_names
Stable diagnostic reports
The Diagnostic Report
feature is now stable and supports a new --report-compact flag to write
the
reports in a compact, single-line JSON format, more easily consumable by
log
processing systems than the default multi-line format designed for human
consumption.
Increase of the default server headers timeout
The default value of server.headersTimeout for http and https servers was
increased from 40000 to 60000 (60 seconds). This to accomodate for systems
like AWS ELB that have a timeout of 60 seconds.
Contributed by Tim Costa - #30071.
Other changes
cli:
Added a --trace-sigint CLI flag that will print the current
execution
stack on SIGINT (legendecas) #29207.
crypto:
Various crypto APIs now support Diffie-Hellman secrets (Tobias
Nießen) #31178.
dns:
Added the dns.ALL flag, that can be passed to dns.lookup() with
dns.V4MAPPED
to return resolved IPv6 addresses as well as IPv4 mapped IPv6
addresses (murgatroid99) #32183.
module
Added a new experimental API to interact with Source Map V3 data
(Benjamin Coe) #31132.
worker:
Added support for passing a transferList along with workerData to
the
Worker constructor (Juan José Arboleda) #32278.
Commits
Semver-minor commits
[a35e88caf5] - (SEMVER-MINOR) async_hooks: merge run and exit methods
(Andrey Pechkurov) #31950
[3eb34068a2] - (SEMVER-MINOR) async_hooks: prevent sync methods of
async storage exiting outer context (Stephen Belanger) #31950
[22db34caa7] - (SEMVER-MINOR) async_hooks: add sync enterWith to ALS
(Stephen Belanger) #31945
[16e8b11708] - (SEMVER-MINOR) async_hooks: introduce async-context API
(Vladimir de Turckheim) #26540
[f7adfcc1df] - (SEMVER-MINOR) async_hooks: add executionAsyncResource
(Matteo Collina) #30959
[984ae304f2] - (SEMVER-MINOR) build: make --without-report a no-op
(Colin Ihrig) #32242
[e67b97ee53] - (SEMVER-MINOR) cli: allow --huge-max-old-generation-
size in NODE_OPTIONS (Anna Henningsen) #32251
[154b18ffca] - (SEMVER-MINOR) console: support console constructor
groupIndentation option (rickyes) #32964
[40253cc1c8] - (SEMVER-MINOR) crypto: add crypto.diffieHellman (Tobias
Nießen) #31178
[1977136a19] - (SEMVER-MINOR) crypto: add DH support to
generateKeyPair (Tobias Nießen) #31178
[9f85585b13] - (SEMVER-MINOR) crypto: add key type 'dh' (Tobias
Nießen) #31178
[6ffe4ed3b5] - (SEMVER-MINOR) deps: upgrade to libuv 1.37.0 (Colin
Ihrig) #32866
[2d7a7592ec] - (SEMVER-MINOR) deps: upgrade to libuv 1.36.0 (Colin
Ihrig) #32866
[ae83f0f993] - (SEMVER-MINOR) deps: upgrade to libuv 1.35.0 (Colin
Ihrig) #32204
[b7d264edaf] - (SEMVER-MINOR) dns: add dns.ALL hints flag constant
(murgatroid99) #32183
[fd2486ea44] - (SEMVER-MINOR) doc: update stability of report features
(Colin Ihrig) #32242
[90d35adccd] - (SEMVER-MINOR) doc,lib,src,test: make --experimental-
report a nop (Colin Ihrig) #32242
[93226a5097] - (SEMVER-MINOR) esm: unflag --experimental-modules (Guy
Bedford) #29866
[8c497f8969] - (SEMVER-MINOR) events: allow monitoring error events
(Gerhard Stoebich) #30932
[a100709fa8] - (SEMVER-MINOR) fs: make parameters optional for
readSync (Lucas Holmquist) #32460
[6601fac06a] - (SEMVER-MINOR) fs: add fs.readv() (Sk Sajidul Kadir)
#32356
[16a913f702] - (SEMVER-MINOR) fs: make fs.read params optional (Lucas
Holmquist) #31402
[7260ede9e6] - (SEMVER-MINOR) fs: return first folder made by mkdir
recursive (Benjamin Coe) #31530
[a15e712ef6] - (SEMVER-MINOR) fs: allow overriding fs for streams
(Robert Nagy) #29083
[b5983213c1] - (SEMVER-MINOR) lib: add option to disable __proto__
(Gus Caplan) #32279
[784fb8f08c] - (SEMVER-MINOR) module: add API for interacting with
source maps (Benjamin Coe) #31132
[e22d853c5d] - (SEMVER-MINOR) n-api: define release 6 (Gabriel
Schulhof) #32058
[f56c4dd933] - (SEMVER-MINOR) n-api: add napi_get_all_property_names
(himself65) #30006
[9eeee0d9f2] - (SEMVER-MINOR) perf_hooks: add property flags to
GCPerformanceEntry (Kirill Fomichev) #29547
[5ec9295034] - (SEMVER-MINOR) process: report ArrayBuffer memory in
memoryUsage() (Anna Henningsen) #31550
[de3603f0a6] - (SEMVER-MINOR) process: allow monitoring
uncaughtException (Gerhard Stoebich) #31257
[cf28afeeb6] - (SEMVER-MINOR) readline,repl: improve history
up/previous (Ruben Bridgewater) #31112
[a0eb3e4ed2] - (SEMVER-MINOR) readline,repl: skip history entries
identical to the current line (Ruben Bridgewater) #31112
[d7e153bddb] - (SEMVER-MINOR) readline,repl: add substring based
history search (Ruben Bridgewater) #31112
[936c85c309] - (SEMVER-MINOR) repl: implement reverse search (Ruben
Bridgewater) #31006
[bf9ff16412] - (SEMVER-MINOR) repl: add completion preview (Ruben
Bridgewater) #30907
[b14440fb5c] - (SEMVER-MINOR) repl: support previews by eager
evaluating input (Ruben Bridgewater) #30811
[0b310df532] - (SEMVER-MINOR) src: unconditionally include report
feature (Colin Ihrig) #32242
[394487e3e8] - (SEMVER-MINOR) src: create a getter for kernel version
(Juan José Arboleda) #31732
[4ec25b4865] - (SEMVER-MINOR) src,cli: support compact (one-line) JSON
reports (Sam Roberts) #32254
[b038ad91f5] - (SEMVER-MINOR) src,lib: make ^C print a JS stack trace
(legendecas) #29207
[6348fae690] - (SEMVER-MINOR) tls: expose SSL_export_keying_material
(simon) #31814
[6aa3869688] - (SEMVER-MINOR) util: add maxStrLength option to inspect
function (unknown) #32392
[eda6665799] - (SEMVER-MINOR) vm: add code cache support for
SourceTextModule (Gus Caplan) #31278
[5c81b8d814] - (SEMVER-MINOR) wasi: add returnOnExit option (Colin
Ihrig) #32101
[ca4e65273f] - (SEMVER-MINOR) worker: support MessagePort to workers
data (Juan José Arboleda) #32278
[217e3dfea6] - (SEMVER-MINOR) worker: allow URL in Worker constructor
(Antoine du HAMEL) #31664
[ab8f38b551] - (SEMVER-MINOR) worker: add ability to take heap
snapshot from parent thread (Anna Henningsen) #31569
Semver-patch commits
[06d607d50f] - async_hooks: fix ctx loss after nested ALS calls
(Andrey Pechkurov) #32085
[96d1f14005] - async_hooks: add store arg in AsyncLocalStorage (Andrey
Pechkurov) #31930
[b4ca132254] - async_hooks: executionAsyncResource matches in hooks
(Gerhard Stoebich) #31821
[02f99d289d] - buffer: add type check in bidirectionalIndexOf (Gerhard
Stoebich) #32770
[b53193a33b] - buffer: mark pool ArrayBuffer as untransferable (Anna
Henningsen) #32759
[b555a772cc] - build: fix vcbuild error for missing Visual Studio
(Thomas) #32658
[6f1931de25] - build: remove .git folders when testing V8 (Richard
Lau) #32877
[c0805f0cab] - build: add configure flag to build V8 with DCHECKs
(Anna Henningsen) #32787
[60660c35ee] - build: use same flags as V8 for ASAN (Matheus Marchini)
#32776
[26fee8b323] - build: remove .txt files from .gitignore (Rich Trott)
#32710
[70eaba12a1] - build: remove node_report option in node.gyp (Colin
Ihrig) #32242
[e765d597fd] - build: add missing comma in node.gyp (Colin Ihrig)
#31959
[49ddd36f13] - build: fix building with ninja (Richard Lau) #32071
[e097980cfe] - build: warn upon --use-largepages config option
(Gabriel Schulhof) #31103
[c3efd2cb9a] - build: switch realpath to pwd (Benjamin Coe) #31095
[0190a62f58] - build: re-introduce --use-largepages as no-op (Gabriel
Schulhof)
[e2a090b693] - build: enable loading internal modules from disk (Gus
Caplan) #31321
[c4da682437] - cli, report: move --report-on-fatalerror to stable
(Colin Ihrig) #32496
[e05c29db3f] - cluster: fix error on worker disconnect/destroy
(Santiago Gimeno) #32793
[d217b792bc] - cluster: removed unused addressType argument from
constructor (Yash Ladha) #32963
[71bccdde76] - crypto: check DiffieHellman p and g params (Ben
Noordhuis) #32739
[c1b767471a] - crypto: generator must be int32 in DiffieHellman() (Ben
Noordhuis) #32739
[4236175878] - crypto: key size must be int32 in DiffieHellman() (Ben
Noordhuis) #32739
[0847bc3788] - crypto: simplify exportKeyingMaterial (Tobias Nießen)
#31922
[907252d4cf] - crypto: improve errors in DiffieHellmanGroup (Tobias
Nießen) #31445
[30633acf20] - crypto: assign and use ERR_CRYPTO_UNKNOWN_CIPHER
(Tobias Nießen) #31437
[5dab489d50] - crypto: simplify DH groups (Tobias Nießen) #31178
[5c0232a632] - deps: backport ICU-21081 for ICU 67.x (constexpr)
(Steven R. Loomis) #33337
[2d76ae7497] - deps: update to ICU 67.1 (Michaël Zasso) #33337
[e073da095e] - deps: update to uvwasi 0.0.8 (Colin Ihrig) #33078
[eb33d523da] - deps: V8: backport 3f8dc4b2e5ba (Ujjwal Sharma) #32993
[56313daff6] - deps: V8: cherry-pick e1eac1b16c96 (Milad Farazmand)
#32974
[65db9b210d] - deps: fix zlib compilation for CPUs without SIMD
features (Anna Henningsen) #32627
[1b53e179b8] - deps: update zlib to upstream d7f3ca9 (Sam Roberts)
#31800
[9a89718410] - deps: move zlib maintenance info to guides (Sam
Roberts) #31800
[9e33f97c4e] - deps: switch to chromium's zlib implementation (Brian
White) #31201
[322a9986fe] - dgram: make UDPWrap more reusable (Anna Henningsen)
#31871
[ea4302bd46] - errors: drop pronouns from ERR_WORKER_PATH message
(Colin Ihrig) #32285
[daf1d842cc] - esm: improve commonjs hint on module not found (Daniele
Belardi) #31906
[7410e8d63a] - esm: port loader code to JS (Anna Henningsen) #32201
[3241aee0f7] - events: convert errorMonitor to a normal property
(Gerhard Stoebich) #31848
[2093f13333] - fs: update validateOffsetLengthRead in utils.js
(daemon1024) #32896
[9c18838e8e] - fs: remove unnecessary else statement (Jesus Hernandez)
#32662
[6d6bb2a3dc] - fs: use finished over destroy w/ cb (Robert Nagy)
#32809
[bde08377a1] - fs: fix fs.read when passing null value (himself65)
#32479
[ebd9090240] - http: disable headersTimeout check when set to zero
(Paolo Insogna) #33307
[a3decf5e59] - http: simplify sending header (Robert Nagy) #33200
[12b8345db8] - http, async_hooks: remove unneeded reference to
wrapping resource (Gerhard Stoebich) #32054
[d60988161d] - http,https: increase server headers timeout (Tim Costa)
#30071
[d883024884] - http2: wait for secureConnect before initializing
(Benjamin Coe) #32958
[79e95e49f7] - inspector: only write coverage in fully bootstrapped
Environments (Joyee Cheung) #32960
[9570644194] - lib: cosmetic change to builtinLibs list for
maintainability (James M Snell) #33106
[6356ad42ab] - lib: fix validateport error message when allowZero is
false (rickyes) #32861
[698e21b346] - lib: add warning on dynamic import es modules (Juan
José Arboleda) #30720
[4dba3fcafd] - lib: unnecessary const assignment for class (Yash
Ladha) #32962
[84571cec7e] - lib: remove unnecesary else block (David Daza) #32644
[5885b37bcc] - lib: created isValidCallback helper (Yash Ladha) #32665
[5b1c34651e] - lib: removed unused error code (Yash Ladha) #32481
[965452dbad] - lib: replace Array to ArrayIsArray by primordials
(himself65) #32258
[434ca8766a] - lib: move isLegalPort to validators, refactor (James M
Snell) #31851
[65ebfb2f12] - lib: delete dead code in SourceMap (Justin Ridgewell)
#31512
[b1f08b8359] - module: no type module resolver side effects (Guy
Bedford) #33086
[a1fa180079] - module: partial doc removal of --experimental-modules
(Myles Borins) #32915
[195043f910] - module: refactor condition (Myles Borins) #32989
[1811a10415] - module: exports not exported for null resolutions (Guy
Bedford) #32838
[3dc3772bb0] - module: improve error for invalid package targets
(Myles Borins) #32052
[6489a5b1d8] - module: fix memory leak when require error occurs
(Qinhui Chen) #32837
[b62910c851] - module: expose exports conditions to loaders (Jan
Krems) #31303
[b62db597af] - module: port source map sort logic from chromium
(Benjamin Coe) #31927
[4d7f9869f3] - n-api: simplify uv_idle wrangling (Ben Noordhuis)
#32997
[d08be9c8ca] - n-api: fix false assumption on napi_async_context
structures (legendecas) #32928
[fbd39436a0] - n-api: fix comment on expected N-API version (Michael
Dawson) #32236
[d50fe6c1ea] - path: fix comment grammar (thecodrr) #32942
[8dcb22f735] - perf_hooks: remove unnecessary assignment when name is
undefined (rickyes) #32910
[f537377957] - process: fix two overflow cases in SourceMap VLQ
decoding (Justin Ridgewell) #31490
[7582bce58d] - readline: improve unicode support and tab completion
(Ruben Bridgewater) #31288
[5231c84396] - readline: move charLengthLeft() and charLengthAt()
(Ruben Bridgewater) #31112
[03efa716f0] - readline: improve getStringWidth() (Ruben Bridgewater)
#31112
[e894eeb22d] - readline: set null as callback return in case there's
no error (Ruben Bridgewater) #31006
[3946cadf89] - readline: small refactoring (Ruben Bridgewater) #31006
[0bafe087e4] - readline: update ansi-regex (Ruben Bridgewater) #30907
[4e9e4402c5] - readline,repl: support tabs properly (Ruben
Bridgewater) #31112
[3903aec0b4] - repl: align preview with the actual executed code
(Ruben Bridgewater) #32154
[709d3e5eb3] - repl: eager-evaluate input in parens (Shelley Vohr)
#31943
[ce5c9d771c] - repl: do not preview while pasting code (Ruben
Bridgewater) #31315
[3867f2095e] - repl: fix preview cursor position (Ruben Bridgewater)
#31293
[ee40b67413] - repl: change preview default in case of custom eval
functions (Ruben Bridgewater) #31259
[a4ca3787ea] - repl: activate previews for lines exceeding the
terminal columns (Ruben Bridgewater) #31112
[a892b4d00c] - repl: improve preview length calculation (Ruben
Bridgewater) #31112
[9abe0e32d8] - repl: use public getCursorPos() (Colin Ihrig) #31091
[85f8654415] - repl: fix preview of lines that exceed the terminal
columns (Ruben Bridgewater) #31006
[47dfa22adb] - repl: fix preview bug in case of long lines (Ruben
Bridgewater) #30907
[7131de5f77] - repl: improve completion (Ruben Bridgewater) #30907
[61886507ce] - repl: simplify code (Ruben Bridgewater) #30907
[9b893e1bee] - repl: simplify repl autocompletion (Ruben Bridgewater)
#30907
[78dcdee35f] - repl: remove dead code (Ruben Bridgewater) #30907
[f588301f2d] - repl,readline: clean up code (Ruben Bridgewater) #31288
[8be00314a6] - repl,readline: refactor for simplicity (Ruben
Bridgewater) #30907
[6eda28c69f] - repl,readline: refactor common code (Ruben Bridgewater)
#30907
[f945a5e3e1] - report: fix stderr matching for fatal error
(gengjiawen) #32699
[4b96fc522c] - report: add missing locks for report_on_fatalerror
accessors (Anna Henningsen) #32535
[c126d28c2e] - report: handle on-fatalerror better (Harshitha KP)
#32207
[85ef383bc5] - src: remove unused v8 Message namespace (Adrian
Estrada) #33180
[ffca498ca2] - src: use unique_ptr for CachedData in
ContextifyScript::New (Anna Henningsen) #33113
[b3f0417830] - src: return undefined when validation err == 0 (James M
Snell) #33107
[1436977984] - src: crypto::UseSNIContext to use BaseObjectPtr (James
M Snell) #33107
[6b1e2359c2] - src: separate out NgLibMemoryManagerBase (James M
Snell) #33104
[8864353c6e] - src: remove unnecessary fully qualified names (rickyes)
#33077
[62f29534de] - src: add AsyncWrapObject constructor template factory
(Stephen Belanger) #33051
[08b66f223d] - src: do not compare against wide characters
(Christopher Beeson) #32921
[60db9afde5] - src: fix empty-named env var assertion failure
(Christopher Beeson) #32921
[b893c5b7ba] - src: assignment to valid type (Yash Ladha) #32879
[846d7bdbbf] - src: delete MicroTaskPolicy namespace (Juan José
Arboleda) #32853
[05059a2469] - src: use using NewStringType (rickyes) #32843
[cf16cb7ed5] - src: fix null deref in AllocatedBuffer::clear (Matt
Kulukundis) #32892
[0745f8884c] - src: remove validation of unreachable code (Juan José
Arboleda) #32818
[9c216640d7] - src: elevate v8 namespaces (Nimit) #32872
[71bdcaeac7] - src: remove redundant v8::HeapSnapshot namespace (Juan
José Arboleda) #32854
[bb1481fd23] - src: remove unused using in node_worker.cc (Daniel
Bevenius) #32840
[8a38726826] - src: ignore GCC -Wcast-function-type for v8.h (Daniel
Bevenius) #32679
[c26637b7da] - src: remove unused v8 Array namespace (Juan José
Arboleda) #32749
[c0d3fc28ec] - src: sync access for report and openssl options (Sam
Roberts) #32618
[9a010a3ea5] - src: munmap(2) upon class instance destructor (Gabriel
Schulhof) #32570
[06953df051] - src: fix extra includes of "env.h" and "env-inl.h"
(Nick Kreeger) #32293
[7432d0a170] - src: avoid using elevated v8 namespaces in node_perf.h
(James M Snell) #32468
[6175a22b87] - src: avoid using elevated v8 namespaces in
node_errors.h (James M Snell) #32468
[464ff85ddd] - src: remove loop_init_failed_ from Worker class (Anna
Henningsen) #32562
[9f6ed724e0] - src: clean up worker thread creation code (Anna
Henningsen) #32562
[73c55d39f3] - src: include AsyncWrap provider strings in snapshot
(Anna Henningsen) #32572
[29eca36ea8] - src: move JSONWriter into its own file (Anna
Henningsen) #32552
[8e3dd47db7] - src: handle report options on fatalerror (Sam Roberts)
#32497
[e0351945bc] - src: refactoring and cleanup of node_i18n (James M
Snell) #32438
[23f8f35022] - src: unify Linux and FreeBSD large pages implem
(Gabriel Schulhof) #32534
[16d85d9328] - src: fix compiler warnings in node_report_module
(Daniel Bevenius) #32498
[58aadcdacf] - src: simplify large pages mapping code (Gabriel
Schulhof) #32396
[2da974e15e] - src: use single ObjectTemplate for TextDecoder (Anna
Henningsen) #32426
[8f7f4e5aba] - src: avoid Isolate::GetCurrent() for platform
implementation (Anna Henningsen) #32269
[df046dec97] - src: add debug option to report large page stats
(Gabriel Schulhof) #32331
[43e9ae8317] - src: prefer OnScopeLeave over shared_ptr<void> (Anna
Henningsen) #32247
[2f976d783f] - src: find .text section using dl_iterate_phdr (Gabriel
Schulhof) #32244
[40c5d58095] - Revert "src: keep main-thread Isolate attached to
platform during Dispose" (Anna Henningsen) #31853
[51a345674e] - src: handle NULL env scenario (Harshitha KP) #31899
[154da1f0d3] - src: add missing namespace using statements in
node_watchdog.h (legendecas) #32117
[83c47b6079] - src: introduce node_sockaddr (James M Snell) #32070
[c979aeaf26] - src: improve handling of internal field counting (James
M Snell) #31960
[38de40ac50] - src: do not unnecessarily re-assign uv handle data
(Anna Henningsen) #31696
[e204dba3f3] - src: pass resource object along with
InternalMakeCallback (Anna Henningsen) #32063
[ffefb059e2] - src: move InternalCallbackScope to StartExecution
(Shelley Vohr) #31944
[178c682ad1] - src: start the .text section with an asm symbol
(Gabriel Schulhof) #31981
[809d8b5036] - src: include large pages source unconditionally
(Gabriel Schulhof) #31904
[5ea3d60db1] - src: use __executable_start for linux hugepages (Ben
Noordhuis) #31547
[1e95bb85a9] - src: make large_pages node.cc include conditional
(Denys Otrishko) #31078
[6dcb868a0a] - src: make --use-largepages a runtime option (Gabriel
Schulhof) #30954
[f3fb6a11fe] - src: change GetStringWidth's expand_emoji_sequence
option default (Ruben Bridgewater) #31112
[4f6300f804] - src: improve GetColumnWidth performance (Ruben
Bridgewater) #31112
[98297b92f5] - src: inline SetSNICallback (Anna Henningsen) #30548
[ce8d8c06ac] - src: use BaseObjectPtr to store SNI context (Anna
Henningsen) #30548
[c86883e4fe] - stream: add null check in Readable.from (Pranshu
Srivastava) #32873
[5df8ab16f2] - stream: close iterator in Readable.from (Vadzim Zieńka)
#32844
[c8b4ab0978] - stream: fix readable state awaitDrain increase in
recursion (ran) #27572
[becbe9e246] - tls: move getAllowUnauthorized to internal/options
(James M Snell) #32917
[dec8a21cc8] - tls: provide default cipher list from command line
(Anna Henningsen) #32760
[8961d33aff] - tls: add memory tracking support to SSLWrap (Anna
Henningsen) #30548
[1b41829828] - util: improve unicode support (Ruben Bridgewater)
#31319
[a0b1a06fff] - util: add todo comments for inspect to add unicode
support (Ruben Bridgewater) #31112
[e0e8a9af6f] - util,readline: NFC-normalize strings before
getStringWidth (Anna Henningsen) #33052
[6a9f867e56] - vm: throw error when duplicated exportNames in
SyntheticModule (himself65) #32810
[02de66a110] - vm: lazily initialize primordials for vm contexts
(Joyee Cheung) #31738
[843a54fd33] - wasi: use free() to release preopen array (Anna
Henningsen) #33110
[7f845e614b] - wasi: update start() behavior to match spec (Colin
Ihrig) #33073
[e1fe0b66b5] - wasi: rename __wasi_unstable_reactor_start() (Colin
Ihrig) #33073
[7c723af3ae] - wasi: clean up options validation (Denys Otrishko)
#31797
[9ce6e363f4] - worker: fix process.env var empty key access
(Christopher Beeson) #32921
[57cd7d2faa] - worker: fix type check in receiveMessageOnPort (Anna
Henningsen) #32745
[ade4ec6f9a] - worker: runtime error on pthread creation (Harshitha
KP) #32344
Documentation commits
[51c3c8d1e8] - doc: fix a typo in crypto.generateKeyPairSync()
(himself65) #33187
[62143b5cb9] - doc: add util.types.isArrayBufferView() (Kevin Locke)
#33092
[f127ae3102] - doc: clarify when not to run CI on docs (Juan José
Arboleda) #33101
[7c8b0d27eb] - doc: fix the spelling error in stream.md (白一梓)
#31561
[31b143ccf1] - doc: correct Nodejs to Node.js spelling (Nick
Schonning) #33088
[2ac0f20019] - doc: improve worker pool example (Ranjan Purbey) #33082
[90cf88614e] - doc: some grammar fixes (Chris Holland) #33081
[8a9be1d071] - doc: don't check links in tmp dirs (Ben Noordhuis)
#32996
[5ea5c26442] - doc: improve WHATWG url constructor code example (Liran
Tal) #32782
[c90a070735] - doc: make openssl maintenance position independent (Sam
Roberts) #32977
[d75f644dc2] - doc: improve release documentation (Michaël Zasso)
#33042
[98c3c427fc] - doc: add documentation for transferList arg at worker
threads (Juan José Arboleda) #32881
[9038e64619] - doc: avoid tautology in README (Ishaan Jain) #33005
[cb7dae3385] - doc: updated directory entry information (Eileen)
#32791
[7397f80dc2] - doc: ignore no-literal-urls in README (Nick Schonning)
#32676
[d8bb226c0d] - doc: convert bare email addresses to mailto links (Nick
Schonning) #32676
[b057175893] - doc: ignore no-literal-urls in changelogs (Nick
Schonning) #32676
[92d91d1e78] - doc: add angle brackets around implicit links (Nick
Schonning) #32676
[e5a24507f2] - doc: remove repeated word in modules.md (Prosper Opara)
#32931
[a7ec1ea38d] - doc: elevate diagnostic report to tier1 (Gireesh
Punathil) #32732
[931c0c74b0] - doc: fix typo in security-release-process.md (Edward
Elric) #32926
[26cf6a3752] - doc: fix usage of folder and directory terms in fs.md
(karan singh virdi) #32919
[1472a39819] - doc: fix typo in zlib.md (雨夜带刀) #32901
[26fdc64d96] - doc: synch SECURITY.md with website (Rich Trott) #32903
[6ddf37cbfd] - doc: add tsc-agenda to onboarding labels list (Rich
Trott) #32832
[f7b78f221d] - doc: add N-API version 6 to table (Michael Dawson)
#32829
[aed5112889] - doc: add juanarbol as collaborator (Juan José Arboleda)
#32906
[68a1cec37f] - doc: missing brackets (William Bonawentura) #32657
[8d53024889] - doc: improve consistency in usage of NULL (Michael
Dawson) #32726
[e9927e5587] - doc: improve net docs (Robert Nagy) #32811
[8e7c41ee55] - doc: note that signatures of binary may be from subkeys
(Reşat SABIQ) #32591
[873d4aaaa2] - doc: add transform stream destroy() return value (Colin
Ihrig) #32788
[39da5bfca7] - doc: updated guidance for n-api changes (Michael
Dawson) #32721
[38e51d335d] - doc: remove warning from response.writeHead (Cecchi
MacNaughton) #32700
[fa51d859b5] - doc: document buffer.from returns internal pool buffer
(Harshitha KP) #32703
[47d2a9604b] - doc: add puzpuzpuz to collaborators (Andrey Pechkurov)
#32817
[ad2fdd5142] - doc: make openssl commit messages be valid (Sam
Roberts) #32602
[a55d215b08] - doc: add missing changes: entry for dns.ALL (Anna
Henningsen) #32617
[13342f884b] - doc: fix typo in maintaining-openssl guide (Nitin
Kumar) #32292
[d7e4bb20a7] - doc: add missing changes: entry for mkdir (Anna
Henningsen) #32490
[742a032775] - doc: complete n-api version matrix (Gabriel Schulhof)
#32304
[f5b60ec8dd] - doc: change worker.takeHeapSnapshot to getHeapSnapshot
(Gerhard Stoebich) #32061
[c0cf234da9] - doc: remove personal pronoun usage in policy.md (Rich
Trott) #32142
[97689e05fd] - doc: remove personal pronoun usage in fs.md (Rich
Trott) #32142
[9a7f89245d] - doc: remove personal pronoun usage in errors.md (Rich
Trott) #32142
[c98ba9537b] - doc: remove personal pronoun usage in addons.md (Rich
Trott) #32142
[e8985c2e87] - doc: improve AsyncLocalStorage sample (Andrey
Pechkurov) #32757
[9d9e185e3a] - doc: list largepage values in --help (Colin Ihrig)
#31537
[f13ecd801e] - doc: fix typo in maintaining-zlib guide (Nitin Kumar)
#32292
[3e939ffb5e] - doc: describe how to update zlib (Sam Roberts) #31800
[1d2565b8b6] - doc: document readline key bindings (Harshitha KP)
#31256
[8e829d4a56] - Revert "doc: fix default server timeout description for
https" (Michaël Zasso) #33069
Other commits
[cdf4f4875d] - benchmark: use let instead of var in worker (Daniele
Belardi) #31794
[c572218552] - benchmark: use let instead of var in util (Daniele
Belardi) #31794
[862aeae238] - benchmark: use let instead of var in url (Daniele
Belardi) #31794
[e68c21f079] - benchmark: use let instead of var in tls (Daniele
Belardi) #31794
[f3ef8946d0] - benchmark: use let instead of var in timers (Daniele
Belardi) #31794
[33858fa917] - benchmark: use let instead of var in run.js (Daniele
Belardi) #31794
[a05f22647a] - benchmark: use let instead of var in dns (Daniele
Belardi) #31794
[2d7c52d729] - benchmark: use let instead of var in common.js (Daniele
Belardi) #31794
[d205bc91d4] - benchmark: use const instead of var in async_hooks
(Daniele Belardi) #31794
[d7f1add038] - benchmark: add no-var rule in .eslintrc.yaml (Daniele
Belardi) #31794
[b4a6351634] - benchmark: remove special test entries (Ruben
Bridgewater) #31755
[71397885b2] - benchmark: add test and all options and improve errors"
(Ruben Bridgewater) #31755
[011e3dec00] - benchmark: refactor helper into a class (Ruben
Bridgewater) #31755
[cf2ca11828] - Revert "benchmark: refactor helper into a class" (Anna
Henningsen) #31722
[ef80c02794] - Revert "benchmark: remove special test entries" (Anna
Henningsen) #31722
[3861c69b02] - benchmark: fix error on server close in
AsyncLocalStorage benchmark (Andrey Pechkurov) #32503
[daf6e1702f] - benchmark: use let instead of var in zlib (Daniele
Belardi) #31794
[6b02359dbf] - test: update c8 ignore comment (Benjamin Coe) #33151
[d7b13abbf8] - test: skip memory usage tests when ASAN is enabled
(Anna Henningsen) #33129
[238353839c] - test: move test-process-title to sequential (Anna
Henningsen) #33150
[13cae34484] - test: fix out-of-bound reads from invalid sizeof usage
(Anna Henningsen) #33115
[08e01a12d0] - test: add missing calls to napi_async_destroy (Anna
Henningsen) #33114
[3015887019] - test: check args on SourceTextModule cachedData (Juan
José Arboleda) #32956
[dad82173cd] - test: mark test flaky on freebsd (Sam Roberts) #32849
[4ab6643abb] - test: flaky test-stdout-close-catch on freebsd (Sam
Roberts) #32849
[60550f35ac] - test: refactor test-async-hooks-constructor (himself65)
#33063
[83520451cc] - test: remove timers-blocking-callback (Jeremiah
Senkpiel) #32870
[579f68c5fd] - test: better error validations for event-capture
(Adrian Estrada) #32771
[dacd27927a] - test: refactor events tests for invalid listeners
(Adrian Estrada) #32769
[4c67568148] - test: test-async-wrap-constructor prefer forEach
(Daniel Estiven Rico Posada) #32631
[0bae243438] - test: mark test-child-process-fork-args as flaky on
Windows (Andrey Pechkurov) #32950
[f181b5996a] - test: changed function to arrow function (Nimit) #32875
[68e3954d1a] - test: replace console.log/error() with debuglog
(daemon1024) #32692
[c566906789] - test: only detect uname on supported os (Xu Meng)
#32833
[50130f0e23] - test: mark cpu-prof-dir-worker flaky on all (Sam
Roberts) #32828
[96c93113a8] - test: replace equal with strictEqual (Jesus Hernandez)
#32727
[e839a71ca8] - test: mark test-worker-prof flaky on arm (Sam Roberts)
#32826
[44ca47904d] - test: mark test-http2-reset-flood flaky on all (Sam
Roberts) #32825
[271b309c91] - test: cover node entry type in perf_hooks (Julian
Duque) #32751
[769ac24eba] - test: use symlinks to copy shells (John Kleinschmidt)
#32129
[b3ac840b97] - test: save test file in temporary directory (Luigi
Pinca) #32670
[c5e0615942] - test: refactor test-worker (himself65) #32509
[8eb6807dfe] - test: replace flag expose_internals to expose-internals
(Juan José Arboleda) #32542
[5598dd14df] - test: fix a typo on test-fs-read-optional-params
(himself65) #32461
[30207985cc] - test: als variant of test-timers-clearImmediate
(Harshitha KP) #32303
[e3baee6c3d] - test: refactoring / cleanup on child-process tests
(James M Snell) #32078
[6a0bc83370] - test: remove common.skipIfReportDisabled() (Colin
Ihrig) #32242
[4a08b85fc8] - test: make test-memory-usage predictable (Matheus
Marchini) #32239
[efc844d00d] - test: verify that WASI errors are rethrown (Colin
Ihrig) #32157
[10ee89a8d5] - test: refactor and simplify test-repl-preview (Ruben
Bridgewater) #32154
[5a8e54b6de] - test: refactor all benchmark tests to use the new test
option (Ruben Bridgewater) #31755
[d1d22fa86e] - test: add secp224k1 check in crypto-dh-stateless
(Daniel Bevenius) #31715
[8a044cb9ae] - test: fix flaky parallel/test-repl-history-navigation
test (Ruben Bridgewater) #31708
[2fc72cac97] - test: fix flaky test-trace-sigint-on-idle (Anna
Henningsen) #31645
[a4ee930d71] - test: improve logged errors (Ruben Bridgewater) #31425
[4aaf4075e9] - test: show child stderr output in largepages test (Ben
Noordhuis) #31612
[2508e1321f] - test: add new scenario for async-local storage
(Harshitha KP) #32082
[52a11544cf] - test: add GC test for disabled AsyncLocalStorage
(Andrey Pechkurov) #31995
[98ece74dc7] - test: improve disable AsyncLocalStorage test (Andrey
Pechkurov) #31998
[e5a64e5def] - test: fix flaky test-memory-usage (Anna Henningsen)
#31602
[02ec03ce27] - test: cover property n-api null cases (Gabriel
Schulhof) #31488
[733002b081] - test: skip keygen tests on arm systems (Tobias Nießen)
#31178
[5e5d053585] - test: add repl tests to verify unicode support in
previews (Ruben Bridgewater) #31112
[f1624bbafa] - test: add multiple repl preview tests (Ruben
Bridgewater) #30907
[9dcf137623] - test,benchmark: fix test-benchmark-zlib (Rich Trott)
#31538
[94e4847142] - tools: bump remark-preset-lint-node to 1.15.0 (Rich
Trott) #33157
[58bd92aa26] - tools: update [email protected] (Rich
Trott) #33072
[b9d9c24cfc] - tools: update broken types in type parser (Colin Ihrig)
#33068
[3dafc1460d] - tools: fix mkcodecache when run with ASAN (Anna
Henningsen) #32850
[1c010b41a1] - tools: update ESLint to 7.0.0-rc.0 (himself65) #33062
[5f79ab2239] - tools: remove unused code in doc generation tool (Rich
Trott) #32913
[576a62688f] - tools: decrease timeout in test.py (Anna Henningsen)
#32868
[9cf9cb436b] - tools: remove prefer-common-expectserror lint rule
(Colin Ihrig) #31147
}}}
--
Ticket URL: <http://wiki.linuxfromscratch.org/blfs/ticket/13576#comment:2>
BLFS Trac <http://wiki.linuxfromscratch.org/blfs>
Beyond Linux From Scratch
--
http://lists.linuxfromscratch.org/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page