- May 18, 2021
-
-
Nitzan Uziely authored
Add a test to verify that stream.finished works correctly on IncomingMessage refs: https://github.com/nodejs/node/issues/38657 PR-URL: https://github.com/nodejs/node/pull/38661 Refs: https://github.com/nodejs/node/issues/38657 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Juan José Arboleda <soyjuanarbol@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com>
-
Voltrex authored
PR-URL: https://github.com/nodejs/node/pull/38328 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Moritz Kneilmann authored
PR-URL: https://github.com/nodejs/node/pull/38669 Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Andreas Schwab authored
PR-URL: https://github.com/nodejs/node/pull/38626 Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Juan José Arboleda <soyjuanarbol@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
Hitesh Sharma authored
PR-URL: https://github.com/nodejs/node/pull/38610 Fixes: https://github.com/nodejs/node/issues/38606 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com>
-
moander authored
Avoid potentially huge messages and leaked secrets. PR-URL: https://github.com/nodejs/node/pull/38614 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Tiancheng "Timothy" Gu <timothygu99@gmail.com> Reviewed-By:
Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com>
-
Nitzan Uziely authored
fix an issue where chunks might be partially written when using writeFile with an async iterator. PR-URL: https://github.com/nodejs/node/pull/38615 Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
James M Snell authored
Fixes: https://github.com/nodejs/node/issues/25630 Signed-off-by:
James M Snell <jasnell@gmail.com> PR-URL: https://github.com/nodejs/node/pull/38658 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com>
-
James M Snell authored
Fixes: https://github.com/nodejs/node/issues/4230 Signed-off-by:
James M Snell <jasnell@gmail.com> PR-URL: https://github.com/nodejs/node/pull/38642 Reviewed-By:
Steven R Loomis <srloomis@us.ibm.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Matteo Collina <matteo.collina@gmail.com>
-
Anna Henningsen authored
Move the `#define`s back into `cares_wrap.cc`, as they are part of the implementation, not the declarations used in `cares_wrap.h`, and apply the suggestion from https://github.com/nodejs/node/pull/38572#discussion_r627809407 to make the defines a bit more generic and not check for OpenBSD specifically. Refs: https://github.com/nodejs/node/pull/38572 PR-URL: https://github.com/nodejs/node/pull/38670 Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
- May 17, 2021
-
-
Filip Skokan authored
closes #38611 PR-URL: https://github.com/nodejs/node/pull/38619 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Tobias Nießen <tniessen@tnie.de>
-
Filip Skokan authored
closes #38655 PR-URL: https://github.com/nodejs/node/pull/38668 Reviewed-By:
Gus Caplan <me@gus.host> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
- May 16, 2021
-
-
cjihrig authored
Update ESLint to 7.26.0 PR-URL: https://github.com/nodejs/node/pull/38605 Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Yongsheng Zhang <zyszys98@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Shelley Vohr authored
PR-URL: https://github.com/nodejs/node/pull/38686 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Juan José Arboleda <soyjuanarbol@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Antoine du Hamel authored
PR-URL: https://github.com/nodejs/node/pull/38656 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net>
-
- May 15, 2021
-
-
Ruy Adorno authored
PR-URL: https://github.com/nodejs/node/pull/38682 Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Danielle Adams <adamzdanielle@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
Gabriel Schulhof authored
Signed-off-by:
Gabriel Schulhof <gabrielschulhof@gmail.com> PR-URL: https://github.com/nodejs/node/pull/38689 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
Michael Dawson <midawson@redhat.com> Reviewed-By:
Juan José Arboleda <soyjuanarbol@gmail.com>
-
Qingyu Deng authored
Fixes: https://github.com/nodejs/node/issues/38641 PR-URL: https://github.com/nodejs/node/pull/38652 Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By:
Derek Lewis <DerekNonGeneric@inf.is> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Zijian Liu <lxxyxzj@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Antoine du Hamel authored
PR-URL: https://github.com/nodejs/node/pull/38651 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Masashi Hirano <shisama07@gmail.com>
-
Rongjian Zhang authored
PR-URL: https://github.com/nodejs/node/pull/38599 Refs: https://coverage.nodejs.org/coverage-f37c26b8a2e10d0a/lib/_http_client.js.html#L200 Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com>
-
Antoine du Hamel authored
PR-URL: https://github.com/nodejs/node/pull/38551 Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Daniel Bevenius authored
This commit enables FIPS when Node.js is dynamically linking against quictls/openssl-3.0. BUILDING.md has been updated with instructions to configure and build quictls/openssl 3.0.0-alpha-15 and includes a couple of work-arounds which I believe are fixed in alpha-16 and can be removed when alpha-16 is available. The information might be a little too detailed/verbose but I thought it would be helpful to at least initially include all the steps. PR-URL: https://github.com/nodejs/node/pull/38633 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
Michael Dawson <midawson@redhat.com>
-
Rongjian Zhang authored
PR-URL: https://github.com/nodejs/node/pull/38653 Refs: https://coverage.nodejs.org/coverage-52e4fb5b23157222/lib/os.js.html#L96 Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Michael Dawson <midawson@redhat.com>
-
- May 14, 2021
-
-
Rongjian Zhang authored
PR-URL: https://github.com/nodejs/node/pull/38598 Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com>
-
Timothy Gu authored
The legacy url.parse() function attempts to convert Unicode domains (IDNs) into their ASCII/Punycode form through the use of the toASCII function. However, toASCII can introduce or remove various characters that at best invalidate the parsed URL, and at worst cause hostname spoofing: url.parse('http://bad.c℀.good.com/').href === 'http://bad.ca/c.good.com/' (from [1]) url.parse('http://\u00AD/bad.com').href === 'http:///bad.com/' While changes to the legacy URL parser are discouraged in general, the security implications here outweigh the desire for strict compatibility. This is since this commit only changes behavior when non-ASCII characters appear in the hostname, an unusual situation for most use cases. Additionally, despite the availability of the WHATWG URL API, url.parse remain widely deployed in the Node.js ecosystem, as exemplified by the recent un-deprecation of the legacy API. This change is similar in spirit to CPython 3.8's change [2] fixing bpo-36216 [3] aka CVE-2019-9636, which also occurred despite potential compatibility concerns. [1]: https://hackerone.com/reports/678487 [2]: https://github.com/python/cpython/commit/16e6f7dee7f02bb81aa6b385b982dcdda5b99286 [3]: https://bugs.python.org/issue36216 PR-URL: https://github.com/nodejs/node/pull/38631 Reviewed-By:James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Matteo Collina <matteo.collina@gmail.com> Reviewed-By:
Joyee Cheung <joyeec9h3@gmail.com>
-
James M Snell authored
Signed-off-by:
James M Snell <jasnell@gmail.com> PR-URL: https://github.com/nodejs/node/pull/38659 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Gerhard Stöbich <deb2001-github@yahoo.de>
-
James M Snell authored
Provides a new `process.on('worker', (worker) => {})` event that is triggered by the creation of a new `worker_thread.Worker`. The use case is to allow hooks to be installed for monitoring workers without having to modify the call sites around those. Signed-off-by:James M Snell <jasnell@gmail.com> PR-URL: https://github.com/nodejs/node/pull/38659 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Gerhard Stöbich <deb2001-github@yahoo.de>
-
- May 13, 2021
-
-
Ruy Adorno authored
PR-URL: https://github.com/nodejs/node/pull/38628 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
Myles Borins <myles.borins@gmail.com>
-
- May 12, 2021
-
-
Voltrex authored
This condition can be inlined in the first `if` statement since if the `path`'s length is 0, it'll be a empty string so we can return that as there's no need for an extra `if` statement. PR-URL: https://github.com/nodejs/node/pull/38613 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Richard Lau authored
V8's build toolchain is not compatible with Python 3 and the CI job that tests V8 needs to be run with Python 2. Add a fallback to `find_executable` from `distutils.spawn` to allow the configure script to run in the V8 test job. PR-URL: https://github.com/nodejs/node/pull/38632 Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Danielle Adams authored
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 with `dc.channel(name)` and call `channel.publish(data)` to send the data to any listeners to that channel. ```js const dc = require('diagnostics_channel'); const channel = dc.channel('mysql.query'); MySQL.prototype.query = function query(queryString, values, callback) { // Broadcast query information whenever a query is made channel.publish({ query: queryString, host: this.hostname, }); this.doQuery(queryString, values, callback); }; ``` 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. ```js const dc = require('diagnostics_channel'); const channel = dc.channel('mysql.query'); channel.subscribe(({ query, host }) => { console.log(`mysql query to ${host}: ${query}`); }); ``` 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 (https://github.com/nodejs/node/pull/34895). UUID support in the crypto module: The new `crypto.randomUUID()` method now allows to generate random [RFC 4122](https://www.rfc-editor.org/rfc/rfc4122.txt) Version 4 UUID strings: ```js const { randomUUID } = require('crypto'); console.log(randomUUID()); // 'aa7c91a1-f8fc-4339-b9db-f93fc7233429' ``` Contributed by James M Snell (https://github.com/nodejs/node/pull/36729). Experimental support for `AbortController` and `AbortSignal`: Node.js 14.17.0 adds experimental partial support for `AbortController` and `AbortSignal`. 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` * The promisified variants of `setImmediate` and `setTimeout` Other notable changes: * doc: * revoke deprecation of legacy url, change status to legacy (James M Snell) (https://github.com/nodejs/node/pull/37784) * add legacy status to stability index (James M Snell) (https://github.com/nodejs/node/pull/37784) * upgrade stability status of report API (Gireesh Punathil) (https://github.com/nodejs/node/pull/35654) * deps: * V8: Backport various patches for Apple Silicon support (BoHong Li) (https://github.com/nodejs/node/pull/38051) * update ICU to 68.1 (Michaël Zasso) (https://github.com/nodejs/node/pull/36187) * upgrade to libuv 1.41.0 (Colin Ihrig) (https://github.com/nodejs/node/pull/37360) * http: * add http.ClientRequest.getRawHeaderNames() (simov) (https://github.com/nodejs/node/pull/37660) * report request start and end with diagnostics\_channel (Stephen Belanger) (https://github.com/nodejs/node/pull/34895) * util: * add getSystemErrorMap() impl (eladkeyshawn) (https://github.com/nodejs/node/pull/38101) PR-URL: https://github.com/nodejs/node/pull/38507
-
- May 11, 2021
-
-
Antoine du Hamel authored
PR-URL: https://github.com/nodejs/node/pull/38587 Refs: https://github.com/nodejs/node/pull/38585 Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Zach Bjornson authored
This reverts c380ee67. uv_fs_write returns an int, so it is not possible to ask it to write more than INT32_MAX. Instead, validate 'length' is an int32 in JS to avoid the assertion failure. PR-URL: https://github.com/nodejs/node/pull/38546 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com>
-
- May 10, 2021
-
-
Richard Lau authored
Debian based packages of Python 3 do not include `distutils.spawn` and require an additional apt package to be installed (`python3-distutils`). Replace use of `distutils.spawn` with `shutil.which`, available in all versions of Python currently allowed by our configure scripts. For the `configure` script only, fall back to `distutils.spawn` to allow friendlier error messages when run on older unsupported versions of Python (e.g. 2.7). `configure.py` also uses `distutils.version` -- this appears to be available in Debian packaged Python 3 without installing `python3-distutils` so has been left as-is. PR-URL: https://github.com/nodejs/node/pull/38600 Refs: https://github.com/nodejs/node/issues/30189 Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Christian Clauss <cclauss@me.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Luigi Pinca authored
The `mode` argument depends on the `flags` argument but it is optional even if the `flags` argument is specified. PR-URL: https://github.com/nodejs/node/pull/38591 Reviewed-By:
Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
Zijian Liu <lxxyxzj@gmail.com> Reviewed-By:
Benjamin Gruenbaum <benjamingr@gmail.com>
-
- May 09, 2021
-
-
Antoine du Hamel authored
Fixes: https://github.com/nodejs/node/issues/38558 PR-URL: https://github.com/nodejs/node/pull/38564 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Rongjian Zhang authored
PR-URL: https://github.com/nodejs/node/pull/38563 Refs: https://coverage.nodejs.org/coverage-26e318a321a872bc/lib/dgram.js.html#L202 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Darshan Sen <raisinten@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
ZiJian Liu authored
Refs: https://coverage.nodejs.org/coverage-7abc7e45b2e17730/lib/internal/repl.js.html#L33 PR-URL: https://github.com/nodejs/node/pull/38559 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com>
-
XadillaX authored
Refs: https://github.com/nodejs/node/pull/38433#issuecomment-828426932 PR-URL: https://github.com/nodejs/node/pull/38548 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Zijian Liu <lxxyxzj@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com>
-
- May 08, 2021
-
-
Jiawen Geng authored
PR-URL: https://github.com/nodejs/node/pull/38566 Reviewed-By:
Ujjwal Sharma <ryzokuken@disroot.org> Reviewed-By:
Richard Lau <rlau@redhat.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By:
James M Snell <jasnell@gmail.com>
-