This repository has been archived by the owner on Oct 11, 2024. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
12
->14
Release Notes
nodejs/node
v14.17.1
Compare Source
Notable Changes
6035492c8f
] - deps: update ICU to 69.1 (Michaël Zasso) #381789417fd0bc8
] - errors: align source-map stacks with spec (Benjamin Coe) #37252Commits
87fa636953
] - assert: refactor to use more primordials (Antoine du Hamel) #36234cfff3b4462
] - assert: refactor to avoid unsafe array iteration (Antoine du Hamel) #37344dd18def7db
] - async_hooks: refactor to avoid unsafe array iteration (Antoine du Hamel) #371255f3e96b570
] - async_hooks,doc: replace process.stdout.fd with 1 (Darshan Sen) #38382f4cb8b8281
] - benchmark: avoid usingconsole.log()
(Antoine du Hamel) #383709e4c1f2f2c
] - benchmark: useprocess.hrtime.bigint()
(Antoine du Hamel) #383693c886e0ad6
] - buffer: remove TODOs inatob
/btoa
(Khaidi Chu) #38548c5b86f8c2f
] - buffer: remove unreachable code (Rongjian Zhang) #385379ae2a27d44
] - buffer: make FastBuffer safe to construct (Antoine du Hamel) #36587ff546ff744
] - buffer: refactor to use primordials instead of Array#reduce (Antoine du Hamel) #363925acf0a5ba3
] - buffer: refactor to use more primordials (Antoine du Hamel) #3616652fd42ec46
] - build: work around bug in MSBuild v16.10.0 (Michaël Zasso) #388735df0f35bf6
] - build: add workaround for V8 builds (Richard Lau) #38632754aa384e0
] - build: remove dependency ondistutils.spawn
(Richard Lau) #386005de7e64f3a
] - build: fix make test-npm (Ruy Adorno) #36369e5fae63108
] - child_process: reduce abort handler code duplication (Rich Trott) #36644598d2bdf09
] - child_process: treat already-aborted controller as aborting (Rich Trott) #366448d7708bdef
] - child_process: refactor to use more primordials (Antoine du Hamel) #36003b8c4d30e77
] - deps: update to cjs-module-lexer@1.2.1 (Guy Bedford) #384506035492c8f
] - deps: update ICU to 69.1 (Michaël Zasso) #3817851dad8cabb
] - deps: V8: cherry-pick035c305
(Michaël Zasso) #38497a467125c8d
] - deps: V8: cherry-pickdfcdf78
(Benjamin Coe) #36573acc9fad2ba
] - deps: V8: cherry-pick86991d0
(Benjamin Coe) #36254d67827744b
] - deps: V8: cherry-pick530080c
(Milad Fa) #38508bac9ba4f8a
] - dgram: extract cluster lazy loading method to make it testable (Rongjian Zhang) #38563f5b2115b76
] - dgram: refactor to use more primordials (Antoine du Hamel) #36286cd7cf0547a
] - dns: refactor to use more primordials (Antoine du Hamel) #363149f67c0852c
] - doc: cleanup events.md structure (James M Snell) #3610041cfe645c0
] - doc: fix JS flavor selection (Antoine du Hamel) #377917c4748b0dc
] - doc: useHEAD
instead ofmaster
for links (Antoine du Hamel) #3851826426577ff
] - doc: remove import.meta.resolve parent URL type (Kevin Locke) #3858588055abf19
] - doc: document buffer.kStringMaxLength (Tobias Nießen) #386882e8dfee165
] - doc: clarify synchronous blocking of Worker stdio (James M Snell) #38658212cd5cf05
] - doc: update contact info (Gabriel Schulhof) #38689fa35c0662b
] - doc: change color of doctag on night mode (Qingyu Deng) #386524c67437c53
] - doc: clarify DiffieHellmanGroup class docs (Nitzan Uziely) #38363e90c60b1e3
] - doc: use AIX instead of Aix in fs.md (Rich Trott) #38535dc67fec1b4
] - doc: remove extraneous dash from flag prefix (Rodolfo Carvalho) #385324c54d81a59
] - doc: document'secureConnect'
event limitation (James M Snell) #38447839e8d1672
] - doc: mark querystring api as legacy (James M Snell) #38436a75b7af9bd
] - doc: add arguments for stream event of Http2Server and Http2SecureServer (Qingyu Deng) #37892cf0007edc4
] - doc: indicate that abort tests do not generate core files (Rich Trott) #38422945450b5cf
] - doc: add try/catch in http2 respondWithFile example (Matteo Collina) #384101f7cd7148a
] - doc: note the system requirements for V8 tests (DeeDeeG) #38319cd54834854
] - doc: minor clarification to pathObject (James M Snell) #38437ba117c2c6f
] - doc: document new TCP_KEEPCNT and TCP_KEEPINTVL socket option defaults (Arnold Zokas) #38313dcdbaffced
] - doc: do not mention TCP in the allowHalfOpen option description (Luigi Pinca) #38360fe8003e5de
] - doc: update message to match actual output (Rich Trott) #35271c03f23e126
] - doc: request default snap track be updated for LTS (Rod Vagg) #37708a9f7aeed12
] - doc: markprocess.hrtime()
as legacy (Antoine du Hamel) #38371cede0c57b8
] - doc: fix version history for"exports"
patterns (Antoine du Hamel) #383559702f22397
] - doc: fixpackage.json
"imports"
field history (Antoine du Hamel) #383562d96da875e
] - doc: fix typo in buffer.md (divlo) #383236b58f28472
] - doc: add nodejs-sec email template (Daniel Bevenius) #382905a532e4725
] - doc: update TSC members list with three new members (Rich Trott) #38352e994d6a27c
] - doc: usefoo.prototype.bar
notation in buffer.md (Voltrex) #38032c61f363d66
] - doc: internal/test/binding for testing (Bradley Meck) #380260bb6fe31b3
] - doc: add missing events.on metadata (Anna Henningsen) #3796530c82b2745
] - doc: fix wording in outgoingMessage.write (Tobias Nießen) #37894932000020a
] - doc: fix grammar errors in http document (Qingyu Deng) #3726519e8ae44c4
] - doc: add document for http.OutgoingMessage (Qingyu Deng) #37265a6c123363d
] - doc: remove generated from dsaEncoding description (Marko Kaznovac) #37459bc6ea63e48
] - doc: document how to register external bindings for snapshot (Joyee Cheung) #374632168e954aa
] - doc: document the NO_COLOR and FORCE_COLOR env vars (James M Snell) #374772907848fc9
] - doc: clarify event.isTrusted text (Rich Trott) #368277efa020892
] - doc: expand openssl instructions (Michael Dawson) #36554b197a44152
] - doc: document ABORT_ERR code (Benjamin Gruenbaum) #363191d80f89442
] - doc: document changes for*/promises
alias modules (ExE Boss) #340029417fd0bc8
] - errors: align source-map stacks with spec (Benjamin Coe) #37252dcd221ce69
] - errors: refactor to use more primordials (Antoine du Hamel) #36651ee444473e9
] - errors: display original symbol name (Benjamin Coe) #3604283d28374d6
] - errors: refactor to use more primordials (Antoine du Hamel) #361677d7e34c15a
] - errors: refactor to use more primordials (Antoine du Hamel) #3594418e5c0f3e2
] - events: refactor to use optional chaining (ZiJian Liu) #367634fdcbae583
] - events: refactor to use more primordials (Antoine du Hamel) #36304c4e7dca8f3
] - fs: fix error when writing buffers > INT32_MAX (Zach Bjornson) #3854607c55d2844
] - Revert "http: make HEAD method to work with keep-alive" (Michaël Zasso) #38949d8da265c81
] - http2: treat non-EOF empty frames like other invalid frames (Anna Henningsen) #37875c3bd0fdb73
] - http2: fix setting options before handle exists (Anna Henningsen) #3787574fe1d8f0c
] - http2: add support for TypedArray to getUnpackedSettings (Antoine du Hamel) #36141c90f1dbeb3
] - https: refactor to use more primordials (Antoine du Hamel) #361958258799472
] - inspector: remove redundant method for connection check (Yash Ladha) #37986ba19313e1e
] - inspector: refactor to use more primordials (Antoine du Hamel) #36356eb8f7ee634
] - lib: revert primordials in a hot path (Antoine du Hamel) #38248cea8b4265c
] - lib: makeIterableWeakMap
safe to iterate (Antoine du Hamel) #38523490bc58229
] - lib: fix and improve os typings (Akhil Marsonya) #38316af39df6d03
] - lib: add URI handling functions to primordials (Antoine du Hamel) #3739416691be80e
] - lib: fix WebIDLobject
and dictionary type conversion (ExE Boss) #3704747ed512312
] - lib: refactor to use optional chaining in internal/options.js (raisinten) #36939346fc0ac21
] - lib: support returning Safe collections from C++ (ExE Boss) #369898912caba64
] - lib: expose primordials object (Antoine du Hamel) #3687246c019b988
] - lib: refactor source_map to use more primordials (Antoine du Hamel) #36733cf9556d8f7
] - lib: refactor source_map to avoid unsafe array iteration (Antoine du Hamel) #367346eaf357f49
] - lib: simplifyprimordials.uncurryThis
(ExE Boss) #368669338759b01
] - lib: remove v8_prof_polyfill from eslint ignore list (Antoine du Hamel) #36537c9861a344a
] - lib: remove unused code (Brian White) #3663201a71dd393
] - lib: refactor to use more primordials in internal/encoding.js (raisinten) #36480e6c0877604
] - lib: refactor to use primordials in internal/priority_queue.js (ZiJian Liu) #365606e3a2ffb98
] - lib: add primordials.SafeStringIterator (Antoine du Hamel) #36526bf0738bc07
] - lib: make safe primordials safe to construct (Antoine du Hamel) #364287ebc18f293
] - lib: make safe primordials safe to iterate (Antoine du Hamel) #36391e12dbc8519
] - lib: refactor to use more primordials in internal/histogram.js (raisinten) #364555daeac64a4
] - lib: add uncurried accessor properties toprimordials
(ExE Boss) #36329bb4900d9eb
] - lib: refactor primordials.uncurryThis (Antoine du Hamel) #362210fbe945ebb
] - lib: refactor to use more primordials (Antoine du Hamel) #3614024d4d63308
] - lib: add %TypedArray% abstract constructor to primordials (ExE Boss) #36016e2395b0f3b
] - lib: use Object static properties from primordials (Michaël Zasso) #35380b3e22e1612
] - lib,tools: enforce access to prototype from primordials (Antoine du Hamel) #36025e94e0b488e
] - meta: add v8 team (Jiawen Geng) #38566fcc6a00f1a
] - meta: post comment when pr labeled fast-track (James M Snell) #38446bd0d9647ca
] - module: clarify CJS global-like variables not defined error message (Antoine du Hamel) #378520fdb5d59f7
] - module: refactor NativeModule to avoid unsafe array iteration (Antoine du Hamel) #3765677c7d979b6
] - module: simplify tryStatSync with throwIfNoEntry option (Antoine du Hamel) #369711aae572220
] - module: refactor to use more primordials (Antoine du Hamel) #363489e7f166161
] - module: refactor to use more primordials (Antoine du Hamel) #36024eee1d291cf
] - module: refactor to use iterable-weak-map (Benjamin Coe) #3591552cbe89f7f
] - net: refactor to use more primordials (Antoine du Hamel) #36303779ad54078
] - node-api: faster threadsafe_function (Fedor Indutny) #385065995221ced
] - node-api: fix shutdown crashes (Michael Dawson) #38492d8acec4cb1
] - node-api: make reference weak parameter an indirect link to references (Chengzhong Wu) #38000c442d89ad6
] - os: refactor to use more primordials (Antoine du Hamel) #36284daeb6fcd78
] - path: inline conditions (Voltrex) #38613e2f531f646
] - path: refactor to use more primordials (Akhil Marsonya) #37893c1364d15a2
] - path: refactor to use more primordials (Antoine du Hamel) #36302726ef40fcb
] - perf_hooks: throw ERR_INVALID_ARG_VALUE if histogram.percentile param is NaN (ZiJian Liu) #369374686f4f41b
] - perf_hooks: refactor to avoid unsafe array iteration (Antoine du Hamel) #367236adec6351e
] - perf_hooks: refactor to use more primordials (Antoine du Hamel) #36297bf9aa425c0
] - policy: refactor to use more primordials (Antoine du Hamel) #362100f6c3f76b3
] - querystring: refactor to use more primordials (Antoine du Hamel) #36315b5b8a996f3
] - readline: refactor to use more primordials (Antoine du Hamel) #36296cd981808b4
] - repl: document top level await limitation with const/let (James M Snell) #38449a4eb5571eb
] - repl: display prompt once after error callback (Anna Henningsen) #38314163fcecb69
] - src: fix multiple AddLinkedBinding() calls (Anna Henningsen) #390128809ef98f9
] - src: update cares_wrap OpenBSD defines (Anna Henningsen) #38670d66f88ce97
] - src: remove extra semi after member fn (Shelley Vohr) #38686bc2111c7e6
] - src: make workers messaging more resilient (Juan José Arboleda) #38510378e0e778b
] - src: fix validation of negative offset to avoid abort (James M Snell) #38421c170026b7b
] - src: use %progbits instead of @progbits (Stephen Gallagher) #38312d177541b0e
] - src: fix setting Converter sub char length (James M Snell) #38331e279b029c0
] - src: avoid deferred gc/cleanup for Buffer.from (James M Snell) #38337006c7b78da
] - src: indent long help text properly (David Glasser) #37911f5541ddea3
] - src: fix ETW_WRITE_EMPTY_EVENT macro (Michaël Zasso) #373346b1052d034
] - src: disable unfixable MSVC warnings (Michaël Zasso) #3733438afa3fa79
] - src: avoid implicit type conversions (take 2) (Michaël Zasso) #373348a60ae2161
] - src: fix compiler warnings in node_buffer.cc (Darshan Sen) #3872278cde14c45
] - src: fix compiler warning in env.cc (Anna Henningsen) #35547ea311a41cc
] - src: add check against non-weak BaseObjects at process exit (Anna Henningsen) #35490a1b4681efc
] - src: use transferred consistently (Daniel Bevenius) #3634029c623e5cb
] - src: fix label indentation (Rich Trott) #36213dbb0d2612c
] - stream: fix multiple Writable.destroy() calls (Robert Nagy) #38221a18b1ff80b
] - stream: the position of _read() is wrong (helloyou2012) #38292ab130e929a
] - stream: only use legacy close listeners if not willEmitClose (Robert Nagy) #36649c31e2f6b0f
] - stream: fix legacy pipe error handling (Robert Nagy) #352571dc4dea215
] - string_decoder: throw ERR_STRING_TOO_LONG for UTF-8 (Michaël Zasso) #366610db9101922
] - string_decoder: refactor to use more primordials (Antoine du Hamel) #363588a44ee478e
] - test: improve coverage of lib/_http_client.js (Rongjian Zhang) #385998a45b85dbd
] - test: improve coverage of lib/os.js (Rongjian Zhang) #38653d7c6a3eb03
] - test: call functions internally (Voltrex) #38560726cb48bd8
] - test: complete coverage of querystring (Rongjian Zhang) #385204f1ba79eb8
] - test: increase coverage for AbortController (ZiJian Liu) #38514d98b355336
] - test: run message and pseudo-tty tests in parallel (Richard Lau) #385027938af6565
] - test: move test-net-connect-econnrefused from pummel to sequential (Rich Trott) #3846252f3837518
] - test: fixcommon.mustCall
length
andname
properties (Antoine du Hamel) #38464fdfb39e692
] - test: address deprecation warning (Rich Trott) #3844825e5afe3be
] - test: move abort test from pummel to abort directory (Rich Trott) #38396296b969e0a
] - test: skip some pummel tests on slower machines (Rich Trott) #38394a9ff9c0918
] - test: add ancestor package.json checks for tmpdir (Richard Lau) #38285c9ce98c377
] - test: replace function with arrow function and remove unused argument (Andres) #38235c77abf5a89
] - test: use .test domain for not found address (Richard Lau) #38286d9eb8b3ed0
] - test: increase fs promise coverage (Emil Sivervik) #36813d85b70fffa
] - test: increase timeout on ASAN Action (Antoine du Hamel) #37007836fba52ea
] - test: improve coverage ofSourceTextModule
getters (Juan José Arboleda) #37013f43fc6b6cc
] - test: improve coverage forModule
getters (Juan José Arboleda) #36950a45d280c18
] - test: improve coverage on worker threads (Juan José Arboleda) #36910ec4d79e259
] - test: improve coverage atlib/internal/vm/module.js
(Juan José Arboleda) #36898c34de75687
] - test: guard large string decoder allocation (Michaël Zasso) #367953215a58843
] - test: add already-aborted-controller test for spawn() (Rich Trott) #36644c3b116795b
] - test: add test for reused AbortController with execfile() (Rich Trott) #36644219ed0ba4c
] - test: add Actions annotation output (Mary Marchini) #3459089ee6abae0
] - test: use.then(common.mustCall())
for all async IIFEs (Anna Henningsen) #34363294b3e60a5
] - test,doc,lib: adjust object literal newlines for lint rule (Rich Trott) #37040bfe02b8808
] - test,readline: improve tab completion coverage (Antoine du Hamel) #384651dc7fd238c
] - timers: fix unsafe array iteration (Darshan Sen) #37223679973866d
] - timers: reject with AbortError on cancellation (Benjamin Gruenbaum) #36317dec3610a31
] - timers: refactor to use more primordials (Antoine du Hamel) #36132d84b05a619
] - timers: cleanup abort listener on awaitable timers (James M Snell) #36006f6e4dbb779
] - tls: validate ticket keys buffer (Antoine du Hamel) #38308661e9809bd
] - tls: fix session and keylog add listener segfault (Nitzan Uziely) #38180de44e90523
] - tools: refloat 7 Node.js patches to cpplint.py (Rich Trott) #3632437bc7d5945
] - tools: bump cpplint to 1.5.4 (Rich Trott) #3632484e918858e
] - tools: refloat 7 Node.js patches to cpplint.py (Rich Trott) #36235fb2bb93f95
] - tools: bump cpplint to 1.5.3 (Rich Trott) #362353351910f97
] - tools: refloat 7 Node.js patches to cpplint.py (Rich Trott) #36213193b18effa
] - tools: bump cpplint.py to 1.5.2 (Rich Trott) #362138a6c35d735
] - tools: update ESLint to 7.27.0 (Luigi Pinca) #38764f8753b6299
] - tools: update ESLint to 7.26.0 (Colin Ihrig) #386051098aec40b
] - tools: update ESLint to 7.25.0 (Colin Ihrig) #383783fbabfa94d
] - tools: update ESLint to 7.24.0 (Colin Ihrig) #381796ce779cd8b
] - tools: update ESLint to 7.23.0 (Luigi Pinca) #3797977f88e7725
] - tools: update ESLint to 7.22.0 (Colin Ihrig) #377345de911eeaf
] - tools: make update-eslint.sh work with npm@7 (Luigi Pinca) #37566839976669f
] - tools: add support for mjs and cjs JS snippet linting (Antoine du Hamel) #373112463bd0689
] - tools: update eslint-plugin-markdown configuration (Colin Ihrig) #37549f868fac455
] - tools: enable object-curly-newline in ESLint rules (Rich Trott) #37040d13508d219
] - tools: make GH Actions workflows work if default branch is not master (Antoine du Hamel) #385167021c31d06
] - tools: use mktemp to create the workspace directory (Luigi Pinca) #3843216a3e555ba
] - tools: use a shallow clone of the npm/cli repository (Luigi Pinca) #384633484a23140
] - tools: remove fixer for non-ascii-character ESLint custom rule (Rich Trott) #38413aec4b295e4
] - tools: fix doc generation when version info is not available (Antoine du Hamel) #383980172b110a3
] - tools: add _depot_tools to PATH (for V8 tests) (DeeDeeG) #38299d0eed18c87
] - tools: fix type mismatch in test runner (Richard Lau) #3828911ca018db9
] - tools: simplify eslint comma-dangle configuration (tools) (Rich Trott) #37883f7c14e86a7
] - tools: simplify eslint comma-dangle configuration (Rich Trott) #37850241e05795b
] - tools: run doctool tests on GitHub Actions CI (Antoine du Hamel) #37398a4dd50f8f9
] - tools: refactor prefer-primordials (Antoine du Hamel) #360184af3906e72
] - tools: update ESLint to 7.21.0 (Luigi Pinca) #37546955880de1a
] - tools: update ESLint to 7.20.0 (Colin Ihrig) #3733942c1f98a31
] - tools: update ESLint to 7.19.0 (Colin Ihrig) #3715925eb720b4d
] - tools: update ESLint to 7.18.0 (Colin Ihrig) #369554983ef205e
] - tools: update gyp-next to v0.7.0 (Michaël Zasso) #36580613378da1e
] - tools: update ESLint to 7.17.0 (Colin Ihrig) #36726e6d01f6545
] - tools: update ESLint to 7.16.0 (Yongsheng Zhang) #3657998806da810
] - tools: enable no-unsafe-optional-chaining lint rule (Colin Ihrig) #364117d411920f6
] - tools: update ESLint to 7.15.0 (Colin Ihrig) #36411226a86c3b5
] - tools: enable no-unused-expressions lint rule (Michaël Zasso) #3624824a81c7d6c
] - tools: enable no-nonoctal-decimal-escape lint rule (Colin Ihrig) #3621719d4eb17b9
] - tools: update ESLint to 7.14.0 (Colin Ihrig) #362179fa8d2037f
] - tools: add linting rule for async IIFEs (Anna Henningsen) #3436355fc206d13
] - tools: update ESLint to 7.13.0 (Luigi Pinca) #36031937fc0a30c
] - tools: update ESLint to 7.12.1 (Colin Ihrig) #3579929d0840a90
] - tools: update ESLint to 7.12.0 (Colin Ihrig) #35799dcbd44758c
] - tools: update ESLint to 7.11.0 (Colin Ihrig) #35578c7751b4e69
] - tools: add new ESLint rule: prefer-primordials (Leko) #354489a5411a2b4
] - tools,doc: add support for several flavors of JS code snippets (Antoine du Hamel) #37162e19478aa76
] - tools,lib: recommend using safe primordials (Antoine du Hamel) #360265f848a612d
] - tools,lib: tighten prefer-primordials rules for Error statics (Antoine du Hamel) #36017716076e389
] - tty: refactor to avoid unsafe array iteration (Antoine du Hamel) #3677141d74a4d9a
] - tty: refactor to use more primordials (Zijian Liu) #36272e35a3543fd
] - typings: add JSDoc typings for util (Rohit Gohri) #38213c8b22185f7
] - url: refactor to use more primordials (Antoine du Hamel) #36316e113035c9a
] - util: simplify constructor retrieval in inspect() (Rich Trott) #364661551b40d01
] - v8: refactor to use more primordials (Antoine du Hamel) #365276c1bbb5caf
] - v8: refactor to use more primordials (Antoine du Hamel) #362853aee77d279
] - vm: refactor to avoid unsafe array iteration (Antoine du Hamel) #367520dea86634d
] - wasi: refactor to avoid unsafe array iteration (Antoine du Hamel) #367242c66305ac4
] - Revert "worker: removeERR_CLOSED_MESSAGE_PORT
" (Juan José Arboleda) #38510698bffaa90
] - worker: refactor to avoid unsafe array iteration (Antoine du Hamel) #373463d4785c174
] - worker: refactor to use more primordials (Antoine du Hamel) #362678702b045a4
] - zlib: fix brotli flush range (Khaidi Chu) #38408459fe6864e
] - zlib: refactor to avoid unsafe array iteration (Antoine du Hamel) #36722740638de0f
] - zlib: refactor to use primordial instead of <string>.startsWith (Rohan Chougule) #3671832e10f388c
] - zlib: refactor to use more primordials (Antoine du Hamel) #36347v14.17.0
Compare Source
Notable Changes
Diagnostics channel (experimental module)
diagnostics_channel
is a new experimental module that provides an API to create named channels to report arbitrary message data for diagnostics purposes.The module was initially introduced in Node.js v15.1.0 and is backported to v14.17.0
to enable testing it at a larger scale.
With
diagnostics_channel
, Node.js core and module authors can publish contextual data about what they are doing at a given time. This could be the hostname and query string of a mysql query, for example. Just create a named channel withdc.channel(name)
and callchannel.publish(data)
to send the data to any listeners to that channel.Channels are like one big global event emitter but are split into separate objects to ensure they get the best performance. If nothing is listening to the channel, the publishing overhead should be as close to zero as possible. Consuming channel data is as easy as using
channel.subscribe(listener)
to run a function whenever a message is published to that channel.The data captured can be used to provide context for what an app is doing at a given time. This can be used for things like augmenting tracing data, tracking network and filesystem activity, logging queries, and many other things. It's also a very useful data source for diagnostics tools to provide a clearer picture of exactly what the application is doing at a given point in the data they are presenting.
Contributed by Stephen Belanger #34895.
UUID support in the crypto module
The new
crypto.randomUUID()
method now allows to generate randomRFC 4122 Version 4 UUID strings:
Contributed by James M Snell #36729.
Experimental support for
AbortController
andAbortSignal
Node.js 14.17.0 adds experimental partial support for
AbortController
andAbortSignal
.Both constructors can be enabled globally using the
--experimental-abortcontroller
flag.Additionally, several Node.js APIs have been updated to support
AbortSignal
for cancellation.It is not mandatory to use the built-in constructors with them. Any spec-compliant third-party alternatives
should be compatible.
AbortSignal
support was added to the following methods:child_process.exec
child_process.execFile
child_process.fork
child_process.spawn
dgram.createSocket
events.on
events.once
fs.readFile
fs.watch
fs.writeFile
http.request
https.request
http2Session.request
setImmediate
andsetTimeout
Other notable changes
Commits
9fb10dc4e7
] - assert,util: fix commutativity edge case (Ruben Bridgewater) #377112bbf253b00
] - benchmark: changedfstat
tofstatSync
(Narasimha Prasanna HN) #36206c00c31c3c5
] - benchmark: improve compare.R output (Brian White) #38118a191bc7761
] - benchmark: add benchmark for fsPromises.writeFile (Nitzan Uziely) #37610d2770a5608
] - benchmark: add benchmark for NODE_V8_COVERAGE (Benjamin Coe) #369724318e708b8
] - benchmark: make output RFC 4180 compliant (Tobias Nießen) #370380fbeab7a95
] - benchmark: improve explanations in R script (Tobias Nießen) #36995c22efc5191
] - benchmark: fix http2 benchmarks (Rich Trott) #36871682d0a92db
] - benchmark: fix http/headers.js with test-double (Rich Trott) #367943a11ee88a2
] - benchmark: add simple https benchmark (Andrey Pechkurov) #36612681c4afc51
] - benchmark: reduce code duplication (Rich Trott) #36568f28eea0896
] - benchmark,child_process: remove failing benchmark parameter (Antoine du Hamel) #36295bf2d9f25d4
] - (SEMVER-MINOR) buffer: implement btoa and atob (James M Snell) #375290544410328
] - buffer,errors: add missing n literal in range errConfiguration
📅 Schedule: "every weekend" (UTC).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.