Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doc: deprecate coercion to string in fs.write, fs.writeFile, fs.appendFile #42149

Merged
merged 1 commit into from Mar 8, 2022

Conversation

LiviaMedeiros
Copy link
Contributor

Refs: #41677

This deprecation allows to align Callback/fs.write with Synchronous and Promise cousin methods, and to implement options parameter for it.

Let me know if doc-only phase might be skipped for this one.

@nodejs-github-bot nodejs-github-bot added deprecations Issues and PRs related to deprecations. doc Issues and PRs related to the documentations. labels Feb 28, 2022
Copy link
Contributor

@aduh95 aduh95 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doc-only deprecation makes perfect sense here, so it can be backported to LTS release lines.

The very string argument for deprecate this is that @@toPrimitive (even if inherited) has "higher priority" over toString (even if own):

const fs = require('fs');
class Parent {
  [Symbol.toPrimitive](){ return '@@toPrimitive'; }
}
fs.writeFileSync('./test.txt', new class extends Parent {constructor(){
  super();
  this.toString = () => 'toString';
}});
console.log(fs.readFileSync('./test.txt', 'utf-8') === '@@toPrimitive'); // true

@aduh95
Copy link
Contributor

aduh95 commented Feb 28, 2022

/cc @ljharb since you're the author of #34993.

@ljharb
Copy link
Member

ljharb commented Feb 28, 2022

I’m fine with a docs-only deprecation, but i don’t think Symbol.toPrimitive being higher than toString is an argument in favor of it - the deprecation is phrased to apply to coercion, which applies to both Symbol.toPrimitive and a toString method.

Anyone passing a stringifiable object into fs.readFile is surely intending to do so.

@aduh95 aduh95 added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. commit-queue-squash Add this label to instruct the Commit Queue to squash all the PR commits into the first one. notable-change PRs with changes that should be highlighted in changelogs. labels Feb 28, 2022
@aduh95
Copy link
Contributor

aduh95 commented Feb 28, 2022

but i don’t think Symbol.toPrimitive being higher than toString is an argument in favor of it - the deprecation is phrased to apply to coercion, which applies to both Symbol.toPrimitive and a toString method.

To clarify what I meant by that, the problem I have with the current API is that it checks Object.hasOwn(bufferOrOption, 'toString'), but then don't even call that toString method if there is a @@toPrimitive in the prototype chain. It's at best inconsistent. Deprecating the coercion is to remove that footgun.

@LiviaMedeiros
Copy link
Contributor Author

@aduh95 thanks a lot for this code example!

First of all, my bad, I completely overlooked the fact that methods such as fs.writeFile and fs.appendFile rely on fs.write and therefore inherit its behaviour. I'll list them in this deprecation and doublecheck cousin methods in Promises/Synchronous APIs.

Also initially I thought that typechecking in these methods is transparent, but apparently it is not.
Instead of passing its second param "as is", fs.writeFileSync converts it to a string, then converts that string to Buffer, then calls fs.writeSync with guaranteed ArrayBufferView instance.
While if we try to call fs.writeSync with "object with own toString property" directly, the outcome is abortion.

Callback API version works in the same way, except fs.write doesn't abort. Therefore, it's a subject for deprecation procedure.

fsPromises.writeFile does similar thing, but doesn't convert the object to string before passing it to Buffer.from, so it's a guaranteed ERR_INVALID_ARG_TYPE; i.e. coercion removal in Promises API is not a breaking change.

@LiviaMedeiros LiviaMedeiros changed the title doc: deprecate coercion to string in fs.write doc: deprecate coercion to string in fs.write, fs.writeFile, fs.appendFile Feb 28, 2022
@ljharb
Copy link
Member

ljharb commented Feb 28, 2022

@aduh95 that's totally fair, and it'd also be fine imo to improve that detection with Symbol.toPrimitive in bufferOrOption.

@aduh95
Copy link
Contributor

aduh95 commented Feb 28, 2022

@LiviaMedeiros Shouldn't we also deprecate coercion in fs.writeFileSync and fs.appendFileSync?

doc/api/deprecations.md Outdated Show resolved Hide resolved
doc/api/deprecations.md Outdated Show resolved Hide resolved
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: nodejs#41677
@LiviaMedeiros
Copy link
Contributor Author

Squashed and force-pushed to edit first commit message, sorry for the mess.

@aduh95 yep, doublechecked and added those. Some coercions aren't documented.
Since "File" methods don't depend on typechecks inside fs.writeSync, it seems to be safe to adjust this method while "File" ones are still in deprecation phase.

@ljharb thanks for feedback!
Most of context-specific reasons are covered by #41666 and #41677 (tl;dr: stringable objects are obstacle blocking "named arguments" feature)
However, I'd like to clarify more generic arguments for it as well.
Also refs: #31030 as initial version of this.

In my opinion, it is always better to keep param checking strict, simple and unambiguous - in both code and docs.
typeof param === 'string' does the job. ArrayBuffer.isView(param) does.
Does typeof param === 'string' || typeof param === 'object' && param !== null && typeof param.toString === 'function' && ObjectPrototypeHasOwnProperty(param, 'toString') (which must be called after checking for isArrayBufferView first)?

Anyone passing a stringifiable object into fs.readFile is surely intending to do so.

I'm not sure about it. Anyone might pass a value returned via multiple layers of abstraction and third-party libraries. And if they care, they will explicitly typecheck and/or stringify it in userland.
And if an error happens (e.g. someone somewhere refactored toString to @@toPrimitive; or something failed and returned false), it's better to throw than to corrupt files by writing results of implicit coercion.

Also, "stringifiable object" is a complicated term. Is new String('a') or null or {} stringifiable? "has own callable property toString" doesn't sound like a common thing in JS.

Idiomatic JS behaviour (like how USVString from w3c specs works) is a well-known footgun feature, most users are familiar with it and know what to expect. And even unconditional coercion could be completely fine in function like fs.writeAsString(fd, data, ...), where data must be interpreted as nothing but string.
But fs.write is polymorphic, so we have no choice but to strictly segregate types; since otherwise we couldn't choose an obvious and unambiguous path to process the data.

Most of above are generalizations, and I understand that "has own toString" rule was intended to reach the balance and solve that problem. It is also a clever workaround to keep compatibility with legacy code for some extra time. Unfortunately, attempts to improve this way might make the logic even more obscure and error-prone.

it'd also be fine imo to improve that detection with Symbol.toPrimitive in bufferOrOption.

[ // even builtin objects are inconsistent now
  new Date(),                     // false true
  new String('amString'),         // false false
  new URL('https://example.com'), // false false
].forEach(s => console.log(s.hasOwnProperty('toString'), Symbol.toPrimitive in s));

// how do we explain this in docs?
// and why do we allow implicit/inherited @@toPrimitive while toString has to be ownProperty?
class Potato { [Symbol.toPrimitive](hint) { if (hint === 'number') return 42; } }
const potato = new Potato();
potato.toString = () => 'amString';
console.log(String(potato)); // "undefined"

// what if this will evaluate to true in future standards?
Symbol.toPrimitive in {};

// what if user did this?
Array.prototype[Symbol.toPrimitive] = function() { return this.join('\n'); }

I hope this makes the overall idea more clear. If any of these thoughts are wrong, I'll be happy to learn from mistakes.

@ljharb
Copy link
Member

ljharb commented Feb 28, 2022

@LiviaMedeiros in general, I agree that strictly validating input is preferred. However, landing #34993 unbroke a use case I consider important.

I do not think such breakage is "worth it" merely to give a nicer argument signature; if that's the goal, I think a better choice may be an entirely new API.

@aduh95 aduh95 added the commit-queue Add this label to land a pull request using GitHub Actions. label Mar 8, 2022
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Mar 8, 2022
@nodejs-github-bot nodejs-github-bot merged commit 4b198ff into nodejs:master Mar 8, 2022
@nodejs-github-bot
Copy link
Collaborator

Landed in 4b198ff

bengl pushed a commit that referenced this pull request Mar 21, 2022
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: #41677

PR-URL: #42149
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
bengl added a commit that referenced this pull request Mar 21, 2022
Notable changes:

doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) #42149
http:
  * (SEMVER-MINOR) trace http client by perf_hooks (theanarkh) #42345

PR-URL: TODO
@bengl bengl mentioned this pull request Mar 21, 2022
bengl added a commit that referenced this pull request Mar 21, 2022
Notable changes:

doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) #42149
http:
  * (SEMVER-MINOR) trace http client by perf_hooks (theanarkh) #42345

PR-URL: #42425
bengl added a commit that referenced this pull request Mar 21, 2022
Notable changes:

doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) #42149
http:
  * (SEMVER-MINOR) trace http client by perf_hooks (theanarkh) #42345
deps:
  * upgrade npm to 8.5.5 (npm team) #42382
  * update undici to 4.15.1 (Michaël Zasso) #42246

PR-URL: #42425
bengl added a commit that referenced this pull request Mar 21, 2022
Notable changes:

doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) #42149
http:
  * (SEMVER-MINOR) trace http client by perf_hooks (theanarkh) #42345
deps:
  * upgrade npm to 8.5.5 (npm team) #42382
  * update undici to 4.15.1 (Michaël Zasso) #42246

PR-URL: #42425
bengl added a commit that referenced this pull request Mar 22, 2022
Notable changes:

doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) #42149
http:
  * (SEMVER-MINOR) trace http client by perf_hooks (theanarkh) #42345
deps:
  * upgrade npm to 8.5.5 (npm team) #42382
  * update undici to 4.15.1 (Michaël Zasso) #42246

PR-URL: #42425
nodejs-github-bot pushed a commit that referenced this pull request Apr 8, 2022
PR-URL: #42608
Refs: #42149
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
danielleadams pushed a commit to danielleadams/node that referenced this pull request Apr 21, 2022
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: nodejs#41677

PR-URL: nodejs#42149
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
danielleadams added a commit that referenced this pull request Apr 24, 2022
Notable changes:

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * add @JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add @joesepi to collaborators (Joe Sepi) #41914
  * add @marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* lib:
  * (SEMVER-MINOR) add fetch (Michaël Zasso) #41749
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445
danielleadams added a commit that referenced this pull request Apr 24, 2022
Notable changes:

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* lib:
  * (SEMVER-MINOR) add fetch (Michaël Zasso) #41749
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
danielleadams added a commit to danielleadams/node that referenced this pull request Apr 24, 2022
Notable changes:

* build:
  * remove broken x32 arch support (Ben Noordhuis) nodejs#41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) nodejs#42093
* doc:
  * add @ShogunPanda to collaborators (Shogun) nodejs#42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) nodejs#42185
  * add joesepi to collaborators (Joe Sepi) nodejs#41914
  * add marsonya to collaborators (Akhil Marsonya) nodejs#41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) nodejs#42149
  * deprecate notice for process methods (Yash Ladha) nodejs#41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) nodejs#36328
* lib:
  * (SEMVER-MINOR) add fetch (Michaël Zasso) nodejs#41749
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) nodejs#41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) nodejs#41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) nodejs#41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) nodejs#41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) nodejs#41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) nodejs#41445

PR-URL: nodejs#42847
danielleadams pushed a commit that referenced this pull request Apr 24, 2022
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: #41677

PR-URL: #42149
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
danielleadams added a commit that referenced this pull request Apr 24, 2022
Notable changes:

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* lib:
  * (SEMVER-MINOR) add fetch (Michaël Zasso) #41749
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
danielleadams pushed a commit that referenced this pull request Apr 24, 2022
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: #41677

PR-URL: #42149
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
danielleadams pushed a commit that referenced this pull request Apr 24, 2022
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: #41677

PR-URL: #42149
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
danielleadams added a commit that referenced this pull request Apr 24, 2022
Notable changes:

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* lib:
  * (SEMVER-MINOR) add fetch (Michaël Zasso) #41749
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
xtx1130 pushed a commit to xtx1130/node that referenced this pull request Apr 25, 2022
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: nodejs#41677

PR-URL: nodejs#42149
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
xtx1130 pushed a commit to xtx1130/node that referenced this pull request Apr 25, 2022
Notable changes:

doc:
  * add @ShogunPanda to collaborators (Shogun) nodejs#42362
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) nodejs#42149
http:
  * (SEMVER-MINOR) trace http client by perf_hooks (theanarkh) nodejs#42345
deps:
  * upgrade npm to 8.5.5 (npm team) nodejs#42382
  * update undici to 4.15.1 (Michaël Zasso) nodejs#42246

PR-URL: nodejs#42425
xtx1130 pushed a commit to xtx1130/node that referenced this pull request Apr 25, 2022
PR-URL: nodejs#42608
Refs: nodejs#42149
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
danielleadams added a commit that referenced this pull request Apr 25, 2022
Notable changes:

Add fetch API

Adds experimental support to the fetch API. This adds a `--experimental-fetch`
flag that installs the `fetch`, `Request`, `Reponse` and `Headers` globals.

* (SEMVER-MINOR) add fetch (Michaël Zasso) #41749

Other notable changes

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Shogun) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
danielleadams added a commit that referenced this pull request Apr 25, 2022
Notable changes:

Add fetch API

Adds experimental support to the fetch API. This adds a `--experimental-fetch`
flag that installs the `fetch`, `Request`, `Reponse` and `Headers` globals.

* (SEMVER-MINOR) add fetch (Michaël Zasso) #41749

Other notable changes

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Paolo Insogna) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
danielleadams added a commit that referenced this pull request Apr 26, 2022
Notable changes:

Add fetch API

Adds experimental support to the fetch API. This adds a `--experimental-fetch`
flag that installs the `fetch`, `Request`, `Reponse``Headers`, and `FormData`
globals.

* (SEMVER-MINOR) add fetch (Michaël Zasso) #41749
* (SEMVER-MINOR) add FormData global when fetch is enabled (Michaël Zasso) #41956

Other notable changes

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Paolo Insogna) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
danielleadams added a commit that referenced this pull request Apr 26, 2022
Notable changes:

Add fetch API

Adds experimental support to the fetch API. This adds the `--experimental-fetch`
flag that installs the `fetch`, `Request`, `Response`, `Headers`, and `FormData`
globals.

* (SEMVER-MINOR) add fetch (Michaël Zasso) #41749
* (SEMVER-MINOR) add FormData global when fetch is enabled (Michaël Zasso) #41956

Other notable changes

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Paolo Insogna) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
danielleadams added a commit that referenced this pull request Apr 27, 2022
Notable changes:

Add fetch API

Adds experimental support to the fetch API. This adds the `--experimental-fetch`
flag that installs the `fetch`, `Request`, `Response`, `Headers`, and `FormData`
globals.

* (SEMVER-MINOR) add fetch (Michaël Zasso) #41749
* (SEMVER-MINOR) add FormData global when fetch is enabled (Michaël Zasso) #41956

Other notable changes

* build:
  * remove broken x32 arch support (Ben Noordhuis) #41905
* crypto:
  * (SEMVER-MINOR) add KeyObject.prototype.equals method (Filip Skokan) #42093
* doc:
  * add @ShogunPanda to collaborators (Paolo Insogna) #42362
  * add JakobJingleheimer to collaborators list (Jacob Smith) #42185
  * add joesepi to collaborators (Joe Sepi) #41914
  * add marsonya to collaborators (Akhil Marsonya) #41991
  * deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia
    Medeiros) #42149
  * deprecate notice for process methods (Yash Ladha) #41587
* esm:
  * (SEMVER-MINOR) support https remotely and http locally under flag
    (Bradley Farias) #36328
* module:
  * (SEMVER-MINOR) unflag esm json modules (Geoffrey Booth) #41736
* node-api:
  * (SEMVER-MINOR) add node_api_symbol_for() (Darshan Sen) #41329
* process:
  * deprecate multipleResolves (Benjamin Gruenbaum) #41872
* stream:
  * (SEMVER-MINOR) support some and every (Benjamin Gruenbaum) #41573
  * (SEMVER-MINOR) add toArray (Benjamin Gruenbaum) #41553
  * (SEMVER-MINOR) add forEach method (Benjamin Gruenbaum) #41445

PR-URL: #42847
mwalbeck pushed a commit to mwalbeck/docker-cyberchef that referenced this pull request May 2, 2022
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [node](https://github.com/nodejs/node) | stage | minor | `16.14.2-bullseye` -> `16.15.0-bullseye` |

---

### Release Notes

<details>
<summary>nodejs/node</summary>

### [`v16.15.0`](https://github.com/nodejs/node/releases/v16.15.0)

[Compare Source](https://github.com/nodejs/node/compare/v16.14.2...v16.15.0)

##### Notable changes

##### Add fetch API

Adds experimental support to the fetch API. This adds the `--experimental-fetch`
flag that installs the `fetch`, `Request`, `Response`, `Headers`, and `FormData`
globals.

-   **(SEMVER-MINOR)** add fetch (Michaël Zasso) [#&#8203;41749](https://github.com/nodejs/node/pull/41749)
-   **(SEMVER-MINOR)** add FormData global when fetch is enabled (Michaël Zasso) [#&#8203;41956](https://github.com/nodejs/node/pull/41956)

##### Other notable changes

-   **build**:
    -   remove broken x32 arch support (Ben Noordhuis) [#&#8203;41905](https://github.com/nodejs/node/pull/41905)
-   **crypto**:
    -   **(SEMVER-MINOR)** add KeyObject.prototype.equals method (Filip Skokan) [#&#8203;42093](https://github.com/nodejs/node/pull/42093)
-   **doc**:
    -   add [@&#8203;ShogunPanda](https://github.com/ShogunPanda) to collaborators (Paolo Insogna) [#&#8203;42362](https://github.com/nodejs/node/pull/42362)
    -   add JakobJingleheimer to collaborators list (Jacob Smith) [#&#8203;42185](https://github.com/nodejs/node/pull/42185)
    -   add joesepi to collaborators (Joe Sepi) [#&#8203;41914](https://github.com/nodejs/node/pull/41914)
    -   add marsonya to collaborators (Akhil Marsonya) [#&#8203;41991](https://github.com/nodejs/node/pull/41991)
    -   deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) [#&#8203;42149](https://github.com/nodejs/node/pull/42149)
    -   deprecate notice for process methods (Yash Ladha) [#&#8203;41587](https://github.com/nodejs/node/pull/41587)
-   **esm**:
    -   **(SEMVER-MINOR)** support https remotely and http locally under flag (Bradley Farias) [#&#8203;36328](https://github.com/nodejs/node/pull/36328)
-   **module**:
    -   **(SEMVER-MINOR)** unflag esm json modules (Geoffrey Booth) [#&#8203;41736](https://github.com/nodejs/node/pull/41736)
-   **node-api**:
    -   **(SEMVER-MINOR)** add node_api_symbol_for() (Darshan Sen) [#&#8203;41329](https://github.com/nodejs/node/pull/41329)
-   **process**:
    -   deprecate multipleResolves (Benjamin Gruenbaum) [#&#8203;41872](https://github.com/nodejs/node/pull/41872)
-   **stream**:
    -   **(SEMVER-MINOR)** support some and every (Benjamin Gruenbaum) [#&#8203;41573](https://github.com/nodejs/node/pull/41573)
    -   **(SEMVER-MINOR)** add toArray (Benjamin Gruenbaum) [#&#8203;41553](https://github.com/nodejs/node/pull/41553)
    -   **(SEMVER-MINOR)** add forEach method (Benjamin Gruenbaum) [#&#8203;41445](https://github.com/nodejs/node/pull/41445)

##### Commits

-   \[[`3d4df9cd70`](https://github.com/nodejs/node/commit/3d4df9cd70)] - **(SEMVER-MINOR)** **benchmark**: add `subarray` to `buffer-slice` (Benjamin Gruenbaum) [#&#8203;41596](https://github.com/nodejs/node/pull/41596)
-   \[[`d40f5a177a`](https://github.com/nodejs/node/commit/d40f5a177a)] - **buffer**: improve blob read performance (Xuguang Mei) [#&#8203;42117](https://github.com/nodejs/node/pull/42117)
-   \[[`84752a495f`](https://github.com/nodejs/node/commit/84752a495f)] - **(SEMVER-MINOR)** **buffer**: alias `subarray` and `slice` (Benjamin Gruenbaum) [#&#8203;41596](https://github.com/nodejs/node/pull/41596)
-   \[[`c5da1dda4a`](https://github.com/nodejs/node/commit/c5da1dda4a)] - **build**: use ccache in make-v8.sh on ppc64le and s390x (Richard Lau) [#&#8203;42204](https://github.com/nodejs/node/pull/42204)
-   \[[`ba56e41953`](https://github.com/nodejs/node/commit/ba56e41953)] - **build**: drop shortened URL from lint-commit-message (Richard Lau) [#&#8203;42168](https://github.com/nodejs/node/pull/42168)
-   \[[`b2c88ec69c`](https://github.com/nodejs/node/commit/b2c88ec69c)] - **build**: fix usage of input in feature action (Michael Dawson) [#&#8203;42150](https://github.com/nodejs/node/pull/42150)
-   \[[`bcabd70d93`](https://github.com/nodejs/node/commit/bcabd70d93)] - **build**: increase max ops for stale feature action (Michael Dawson) [#&#8203;42130](https://github.com/nodejs/node/pull/42130)
-   \[[`042fb6f4d5`](https://github.com/nodejs/node/commit/042fb6f4d5)] - **build**: add corepack to the auto-updated dependencies (Maël Nison) [#&#8203;42090](https://github.com/nodejs/node/pull/42090)
-   \[[`611cbf13a6`](https://github.com/nodejs/node/commit/611cbf13a6)] - **build**: last test of the stale feature action (Michael Dawson) [#&#8203;42085](https://github.com/nodejs/node/pull/42085)
-   \[[`0d8f76ff2f`](https://github.com/nodejs/node/commit/0d8f76ff2f)] - **build**: update feature close action for testing (Michael Dawson) [#&#8203;42082](https://github.com/nodejs/node/pull/42082)
-   \[[`bc3d8a752f`](https://github.com/nodejs/node/commit/bc3d8a752f)] - **build**: cancel running CI jobs when a PR is updated (Michaël Zasso) [#&#8203;42017](https://github.com/nodejs/node/pull/42017)
-   \[[`e049173bce`](https://github.com/nodejs/node/commit/e049173bce)] - **build**: increase operations and test tag (Michael Dawson) [#&#8203;42038](https://github.com/nodejs/node/pull/42038)
-   \[[`4c47d59e9b`](https://github.com/nodejs/node/commit/4c47d59e9b)] - **build**: allow manual run of feature request action (Michael Dawson) [#&#8203;42037](https://github.com/nodejs/node/pull/42037)
-   \[[`692ee2ae06`](https://github.com/nodejs/node/commit/692ee2ae06)] - **build**: add action to close stale feature requests (Michael Dawson) [#&#8203;41981](https://github.com/nodejs/node/pull/41981)
-   \[[`290a2bfd81`](https://github.com/nodejs/node/commit/290a2bfd81)] - **build**: prevent concurrent CI and CQ workflow runs (Michaël Zasso) [#&#8203;42016](https://github.com/nodejs/node/pull/42016)
-   \[[`d2c1624279`](https://github.com/nodejs/node/commit/d2c1624279)] - **build**: use zoslib_include_dir provided by node-gyp (alexcfyung) [#&#8203;41713](https://github.com/nodejs/node/pull/41713)
-   \[[`db4a3dc1a6`](https://github.com/nodejs/node/commit/db4a3dc1a6)] - **build**: move tool updates workflow runtime a day later (Rich Trott) [#&#8203;41982](https://github.com/nodejs/node/pull/41982)
-   \[[`24d0c32af4`](https://github.com/nodejs/node/commit/24d0c32af4)] - **build**: extend yamllint configuration (Mestery) [#&#8203;41756](https://github.com/nodejs/node/pull/41756)
-   \[[`428b967ea4`](https://github.com/nodejs/node/commit/428b967ea4)] - **build**: remove broken x32 arch support (Ben Noordhuis) [#&#8203;41905](https://github.com/nodejs/node/pull/41905)
-   \[[`51847e0d24`](https://github.com/nodejs/node/commit/51847e0d24)] - **build**: revert fast-track changes (Filip Skokan) [#&#8203;41892](https://github.com/nodejs/node/pull/41892)
-   \[[`1452f8d6f1`](https://github.com/nodejs/node/commit/1452f8d6f1)] - **build**: improve consistency between workflows (Mestery) [#&#8203;41791](https://github.com/nodejs/node/pull/41791)
-   \[[`9677da4b46`](https://github.com/nodejs/node/commit/9677da4b46)] - **(SEMVER-MINOR)** **build**: add --v8-enable-hugepage flag (Daoming Qiu) [#&#8203;41487](https://github.com/nodejs/node/pull/41487)
-   \[[`5468de5317`](https://github.com/nodejs/node/commit/5468de5317)] - **build,tools**: change the quotes in YAML (Mestery) [#&#8203;41756](https://github.com/nodejs/node/pull/41756)
-   \[[`f32c39762c`](https://github.com/nodejs/node/commit/f32c39762c)] - **child_process**: kHideConsoleWindows for spawnSync (Raymond Zhao) [#&#8203;41412](https://github.com/nodejs/node/pull/41412)
-   \[[`914f9071ba`](https://github.com/nodejs/node/commit/914f9071ba)] - **cluster**: respect listen backlog set by workers (Elad Nava) [#&#8203;41623](https://github.com/nodejs/node/pull/41623)
-   \[[`f990308972`](https://github.com/nodejs/node/commit/f990308972)] - **crypto**: fix auth tag length error when mode != GCM (Tobias Nießen) [#&#8203;42383](https://github.com/nodejs/node/pull/42383)
-   \[[`7f43f94304`](https://github.com/nodejs/node/commit/7f43f94304)] - **crypto**: fix fingerprint string size calculation (Tobias Nießen) [#&#8203;42175](https://github.com/nodejs/node/pull/42175)
-   \[[`602f34eeb8`](https://github.com/nodejs/node/commit/602f34eeb8)] - **crypto**: add CHECKs to remaining BIO_s_mem allocs (Tobias Nießen) [#&#8203;42155](https://github.com/nodejs/node/pull/42155)
-   \[[`4eecb25125`](https://github.com/nodejs/node/commit/4eecb25125)] - **crypto**: validate `this` value for `webcrypto.getRandomValues` (Antoine du Hamel) [#&#8203;41760](https://github.com/nodejs/node/pull/41760)
-   \[[`b7599d8b14`](https://github.com/nodejs/node/commit/b7599d8b14)] - **(SEMVER-MINOR)** **crypto**: add KeyObject.prototype.equals method (Filip Skokan) [#&#8203;42093](https://github.com/nodejs/node/pull/42093)
-   \[[`70ae0ae8a0`](https://github.com/nodejs/node/commit/70ae0ae8a0)] - **crypto**: check result of BIO_new in X509ToObject (Tobias Nießen) [#&#8203;41979](https://github.com/nodejs/node/pull/41979)
-   \[[`36b9028f4f`](https://github.com/nodejs/node/commit/36b9028f4f)] - **crypto**: rename X509\_NAME_FLAGS (Tobias Nießen) [#&#8203;42001](https://github.com/nodejs/node/pull/42001)
-   \[[`a592442218`](https://github.com/nodejs/node/commit/a592442218)] - **(SEMVER-MINOR)** **crypto**: expose Web Crypto API on the global scope (Antoine du Hamel) [#&#8203;41938](https://github.com/nodejs/node/pull/41938)
-   \[[`46dda316df`](https://github.com/nodejs/node/commit/46dda316df)] - **crypto**: do not advertise unsupported algorithms (Brian White) [#&#8203;41864](https://github.com/nodejs/node/pull/41864)
-   \[[`adb88fcb46`](https://github.com/nodejs/node/commit/adb88fcb46)] - **(SEMVER-MINOR)** **crypto**: support RFC 2818 compatible checkHost (Tobias Nießen) [#&#8203;41569](https://github.com/nodejs/node/pull/41569)
-   \[[`e9d7af1cc6`](https://github.com/nodejs/node/commit/e9d7af1cc6)] - **debugger**: correct typo in inspect_repl.js (Kohei Ueno) [#&#8203;42267](https://github.com/nodejs/node/pull/42267)
-   \[[`e6019a4cc0`](https://github.com/nodejs/node/commit/e6019a4cc0)] - **debugger**: add debugger alias for exec(expr) (Xuguang Mei) [#&#8203;41907](https://github.com/nodejs/node/pull/41907)
-   \[[`83691ada5b`](https://github.com/nodejs/node/commit/83691ada5b)] - **debugger**: remove duplicate setPauseOnException call (Balakrishna Avulapati) [#&#8203;41838](https://github.com/nodejs/node/pull/41838)
-   \[[`7e73e5e46b`](https://github.com/nodejs/node/commit/7e73e5e46b)] - **deps**: upgrade npm to 8.5.5 (npm team) [#&#8203;42382](https://github.com/nodejs/node/pull/42382)
-   \[[`8d734cbde6`](https://github.com/nodejs/node/commit/8d734cbde6)] - **deps**: cares: cherry-pick [`b5a3d96`](https://github.com/nodejs/node/commit/b5a3d96) (bradh352) [#&#8203;42216](https://github.com/nodejs/node/pull/42216)
-   \[[`ba1d949ce0`](https://github.com/nodejs/node/commit/ba1d949ce0)] - **deps**: V8: cherry-pick [`c6f6626`](https://github.com/nodejs/node/commit/c6f6626deb14) (Lu Yahan) [#&#8203;42240](https://github.com/nodejs/node/pull/42240)
-   \[[`6b721d7103`](https://github.com/nodejs/node/commit/6b721d7103)] - **deps**: upgrade npm to 8.5.3 (npm team) [#&#8203;42205](https://github.com/nodejs/node/pull/42205)
-   \[[`baeb66a35a`](https://github.com/nodejs/node/commit/baeb66a35a)] - **deps**: update nghttp2 to 1.47.0 (Yash Ladha) [#&#8203;42127](https://github.com/nodejs/node/pull/42127)
-   \[[`1a0f26f55c`](https://github.com/nodejs/node/commit/1a0f26f55c)] - **deps**: upgrade npm to 8.5.2 (npm team) [#&#8203;42122](https://github.com/nodejs/node/pull/42122)
-   \[[`396240bf80`](https://github.com/nodejs/node/commit/396240bf80)] - **deps**: V8: cherry-pick [`77d5154`](https://github.com/nodejs/node/commit/77d515484864) (Lu Yahan) [#&#8203;42067](https://github.com/nodejs/node/pull/42067)
-   \[[`3f09a6d227`](https://github.com/nodejs/node/commit/3f09a6d227)] - **deps**: V8: cherry-pick [`b663343`](https://github.com/nodejs/node/commit/b66334313c8b) (Lu Yahan) [#&#8203;42067](https://github.com/nodejs/node/pull/42067)
-   \[[`a73536b286`](https://github.com/nodejs/node/commit/a73536b286)] - **deps**: upgrade npm to 8.5.1 (npm-robot) [#&#8203;42039](https://github.com/nodejs/node/pull/42039)
-   \[[`c64b0381ee`](https://github.com/nodejs/node/commit/c64b0381ee)] - **deps**: update undici to 5.0.0 (Node.js GitHub Bot) [#&#8203;42583](https://github.com/nodejs/node/pull/42583)
-   \[[`a670c1fb5f`](https://github.com/nodejs/node/commit/a670c1fb5f)] - **deps**: update undici to 4.16.0 (Node.js GitHub Bot) [#&#8203;42414](https://github.com/nodejs/node/pull/42414)
-   \[[`721d10751b`](https://github.com/nodejs/node/commit/721d10751b)] - **deps**: update undici to 4.15.1 (Michaël Zasso) [#&#8203;42246](https://github.com/nodejs/node/pull/42246)
-   \[[`83a667621b`](https://github.com/nodejs/node/commit/83a667621b)] - **deps**: update undici to [`3e267ec`](https://github.com/nodejs/node/commit/3e267ece5f) (Michaël Zasso) [#&#8203;41955](https://github.com/nodejs/node/pull/41955)
-   \[[`208ab5723e`](https://github.com/nodejs/node/commit/208ab5723e)] - **doc**: improve README.md usability (Rich Trott) [#&#8203;42378](https://github.com/nodejs/node/pull/42378)
-   \[[`682248c980`](https://github.com/nodejs/node/commit/682248c980)] - **doc**: add that chacha20-poly1305 is IETF version (Tobias Nießen) [#&#8203;42370](https://github.com/nodejs/node/pull/42370)
-   \[[`83391d185c`](https://github.com/nodejs/node/commit/83391d185c)] - **doc**: document goal to have examples (Michael Dawson) [#&#8203;42274](https://github.com/nodejs/node/pull/42274)
-   \[[`7073017efb`](https://github.com/nodejs/node/commit/7073017efb)] - **doc**: fix Embedder's Guide link to V8 official docs (Aroyan) [#&#8203;42373](https://github.com/nodejs/node/pull/42373)
-   \[[`cb07930bda`](https://github.com/nodejs/node/commit/cb07930bda)] - **doc**: remove unneeded lint disable comment (Rich Trott) [#&#8203;42374](https://github.com/nodejs/node/pull/42374)
-   \[[`fb42f99514`](https://github.com/nodejs/node/commit/fb42f99514)] - **doc**: revise async_hooks docs (Rich Trott) [#&#8203;42337](https://github.com/nodejs/node/pull/42337)
-   \[[`835e65b78e`](https://github.com/nodejs/node/commit/835e65b78e)] - **doc**: add [@&#8203;ShogunPanda](https://github.com/ShogunPanda) to collaborators (Paolo Insogna) [#&#8203;42362](https://github.com/nodejs/node/pull/42362)
-   \[[`df1909982d`](https://github.com/nodejs/node/commit/df1909982d)] - **doc**: update base branch name for `nodejs/nodejs.org` (Danielle Adams) [#&#8203;42355](https://github.com/nodejs/node/pull/42355)
-   \[[`4f6b187059`](https://github.com/nodejs/node/commit/4f6b187059)] - **doc**: fix async iterable pipeline signal examples (Randall Leeds) [#&#8203;42258](https://github.com/nodejs/node/pull/42258)
-   \[[`3188dcb390`](https://github.com/nodejs/node/commit/3188dcb390)] - **doc**: clarify path search in `child_process.spawn` (Damjan Cvetko) [#&#8203;41418](https://github.com/nodejs/node/pull/41418)
-   \[[`f53b454e2e`](https://github.com/nodejs/node/commit/f53b454e2e)] - **doc**: clarify the meaning of legacy status (Darshan Sen) [#&#8203;42269](https://github.com/nodejs/node/pull/42269)
-   \[[`43b8a4fc57`](https://github.com/nodejs/node/commit/43b8a4fc57)] - **doc**: improve pipe description (Mikael Finstad) [#&#8203;42295](https://github.com/nodejs/node/pull/42295)
-   \[[`9fa6e445d5`](https://github.com/nodejs/node/commit/9fa6e445d5)] - **doc**: remove outdated timeout.unref content (Xuguang Mei) [#&#8203;42241](https://github.com/nodejs/node/pull/42241)
-   \[[`a84896ea2c`](https://github.com/nodejs/node/commit/a84896ea2c)] - **doc**: deprecate string coercion in `fs.write`, `fs.writeFileSync` (Livia Medeiros) [#&#8203;42149](https://github.com/nodejs/node/pull/42149)
-   \[[`436bdde654`](https://github.com/nodejs/node/commit/436bdde654)] - **doc**: remove refs to old OpenSSL list-\* commands (Tobias Nießen) [#&#8203;42235](https://github.com/nodejs/node/pull/42235)
-   \[[`6763bede4c`](https://github.com/nodejs/node/commit/6763bede4c)] - **doc**: readline `'line'` event emits final line (Matt Probert) [#&#8203;42214](https://github.com/nodejs/node/pull/42214)
-   \[[`6545094a94`](https://github.com/nodejs/node/commit/6545094a94)] - **doc**: update stale feature messages (Michael Dawson) [#&#8203;42217](https://github.com/nodejs/node/pull/42217)
-   \[[`275b66d54e`](https://github.com/nodejs/node/commit/275b66d54e)] - **doc**: remove erroneous comma in cluster explainer (Tobias Nießen) [#&#8203;42238](https://github.com/nodejs/node/pull/42238)
-   \[[`cda623cc1d`](https://github.com/nodejs/node/commit/cda623cc1d)] - **doc**: remove "considered" for clarity (Rich Trott) [#&#8203;42218](https://github.com/nodejs/node/pull/42218)
-   \[[`17172fef20`](https://github.com/nodejs/node/commit/17172fef20)] - **doc**: clarify that some modules don't work when compiled without ssl (Antoine du Hamel) [#&#8203;42198](https://github.com/nodejs/node/pull/42198)
-   \[[`126045356a`](https://github.com/nodejs/node/commit/126045356a)] - **doc**: add note about nghttp2 hd pair size (Rafael Silva) [#&#8203;42172](https://github.com/nodejs/node/pull/42172)
-   \[[`63b468f753`](https://github.com/nodejs/node/commit/63b468f753)] - **doc**: use parenthesis instead of em dash (Antoine du Hamel) [#&#8203;42202](https://github.com/nodejs/node/pull/42202)
-   \[[`19b62ddd68`](https://github.com/nodejs/node/commit/19b62ddd68)] - **doc**: add next-10 to strategic initiatives (Michael Dawson) [#&#8203;42167](https://github.com/nodejs/node/pull/42167)
-   \[[`993a943f2c`](https://github.com/nodejs/node/commit/993a943f2c)] - **doc**: add missing single-quotes to `http.OutgoingMessage` (Juan José Arboleda) [#&#8203;42162](https://github.com/nodejs/node/pull/42162)
-   \[[`d0ce089622`](https://github.com/nodejs/node/commit/d0ce089622)] - **doc**: fix typos (apeltop) [#&#8203;42146](https://github.com/nodejs/node/pull/42146)
-   \[[`88e67b8ec3`](https://github.com/nodejs/node/commit/88e67b8ec3)] - **doc**: add JakobJingleheimer to collaborators list (Jacob Smith) [#&#8203;42185](https://github.com/nodejs/node/pull/42185)
-   \[[`5322c73241`](https://github.com/nodejs/node/commit/5322c73241)] - **doc**: remove reference to obsolete security program (Rich Trott) [#&#8203;42144](https://github.com/nodejs/node/pull/42144)
-   \[[`5980b6d133`](https://github.com/nodejs/node/commit/5980b6d133)] - **doc**: remove repeated a word (apeltop) [#&#8203;42138](https://github.com/nodejs/node/pull/42138)
-   \[[`a70a1ce3a9`](https://github.com/nodejs/node/commit/a70a1ce3a9)] - **doc**: make building with ninja more discoverable (Balakrishna Avulapati) [#&#8203;41840](https://github.com/nodejs/node/pull/41840)
-   \[[`bc457c2339`](https://github.com/nodejs/node/commit/bc457c2339)] - **doc**: document change to IncomingMessage.headers enumerability (Arnold Zokas) [#&#8203;42095](https://github.com/nodejs/node/pull/42095)
-   \[[`1eb4d8b89c`](https://github.com/nodejs/node/commit/1eb4d8b89c)] - **doc**: add meixg to triagers (Xuguang Mei) [#&#8203;42066](https://github.com/nodejs/node/pull/42066)
-   \[[`3d75c8748c`](https://github.com/nodejs/node/commit/3d75c8748c)] - **doc**: clarify persistent ref behavior (Michael Dawson) [#&#8203;42035](https://github.com/nodejs/node/pull/42035)
-   \[[`8c26d8cea1`](https://github.com/nodejs/node/commit/8c26d8cea1)] - **doc**: move bnoordhuis back to collaborators (Ben Noordhuis) [#&#8203;42064](https://github.com/nodejs/node/pull/42064)
-   \[[`0c21b58d57`](https://github.com/nodejs/node/commit/0c21b58d57)] - **doc**: clarify supported versus enabled TLS ciphers (Tobias Nießen) [#&#8203;42063](https://github.com/nodejs/node/pull/42063)
-   \[[`a658437c64`](https://github.com/nodejs/node/commit/a658437c64)] - **doc**: add missing api entries on performance (legendecas) [#&#8203;42018](https://github.com/nodejs/node/pull/42018)
-   \[[`51cb78022e`](https://github.com/nodejs/node/commit/51cb78022e)] - **doc**: fix typo in http2 endAfterHeaders description (Alexandru Comanescu) [#&#8203;42060](https://github.com/nodejs/node/pull/42060)
-   \[[`40ddfa4e69`](https://github.com/nodejs/node/commit/40ddfa4e69)] - **doc**: make minor fixes to contributing guides (T-O-R-U-S) [#&#8203;41966](https://github.com/nodejs/node/pull/41966)
-   \[[`60d6409af0`](https://github.com/nodejs/node/commit/60d6409af0)] - **doc**: use openpgp.org for keyserver examples (Nick Schonning) [#&#8203;39227](https://github.com/nodejs/node/pull/39227)
-   \[[`9800719237`](https://github.com/nodejs/node/commit/9800719237)] - **doc**: adjust a/an word usage (Derek Wolpert) [#&#8203;41915](https://github.com/nodejs/node/pull/41915)
-   \[[`43894b1bc4`](https://github.com/nodejs/node/commit/43894b1bc4)] - **doc**: capitalize valgrind (T•Ø•R•Ü•S) [#&#8203;41986](https://github.com/nodejs/node/pull/41986)
-   \[[`a34cc75026`](https://github.com/nodejs/node/commit/a34cc75026)] - **doc**: fix deprecation number (Antoine du Hamel) [#&#8203;41990](https://github.com/nodejs/node/pull/41990)
-   \[[`dd88f54d57`](https://github.com/nodejs/node/commit/dd88f54d57)] - **doc**: add marsonya to collaborators (Akhil Marsonya) [#&#8203;41991](https://github.com/nodejs/node/pull/41991)
-   \[[`8858950a9f`](https://github.com/nodejs/node/commit/8858950a9f)] - **doc**: deprecate notice for process methods (Yash Ladha) [#&#8203;41587](https://github.com/nodejs/node/pull/41587)
-   \[[`d77db88386`](https://github.com/nodejs/node/commit/d77db88386)] - **doc**: fix bug in `readable.unshift` code example (Xuguang Mei) [#&#8203;41944](https://github.com/nodejs/node/pull/41944)
-   \[[`81e56c9178`](https://github.com/nodejs/node/commit/81e56c9178)] - **doc**: add missing `buffer` in the `stream/consumers` import example (Mestery) [#&#8203;41961](https://github.com/nodejs/node/pull/41961)
-   \[[`c08efba968`](https://github.com/nodejs/node/commit/c08efba968)] - **doc**: fix typo in readableStream.locked description (Tobias Nießen) [#&#8203;41923](https://github.com/nodejs/node/pull/41923)
-   \[[`e21831bad1`](https://github.com/nodejs/node/commit/e21831bad1)] - **doc**: fix wrong indent in stream documentation (Xuguang Mei) [#&#8203;41943](https://github.com/nodejs/node/pull/41943)
-   \[[`e55f340052`](https://github.com/nodejs/node/commit/e55f340052)] - **doc**: emphasize security warning in vm module doc (Rich Trott) [#&#8203;41916](https://github.com/nodejs/node/pull/41916)
-   \[[`ce15007fd7`](https://github.com/nodejs/node/commit/ce15007fd7)] - **doc**: clarify `tls.Server` `'connection'` event documentation (Austin Cheney) [#&#8203;41917](https://github.com/nodejs/node/pull/41917)
-   \[[`6fc0a25b64`](https://github.com/nodejs/node/commit/6fc0a25b64)] - **doc**: improve scrollbar appearance in dark mode (Aaron Xie) [#&#8203;41890](https://github.com/nodejs/node/pull/41890)
-   \[[`90d955100d`](https://github.com/nodejs/node/commit/90d955100d)] - **doc**: replace text with paths in toggle SVGs (Brian White) [#&#8203;41885](https://github.com/nodejs/node/pull/41885)
-   \[[`6fd538331d`](https://github.com/nodejs/node/commit/6fd538331d)] - **doc**: edit process.config deprecation text (Rich Trott) [#&#8203;41889](https://github.com/nodejs/node/pull/41889)
-   \[[`55caa10c54`](https://github.com/nodejs/node/commit/55caa10c54)] - **doc**: add joesepi to collaborators (Joe Sepi) [#&#8203;41914](https://github.com/nodejs/node/pull/41914)
-   \[[`73f3a2cf96`](https://github.com/nodejs/node/commit/73f3a2cf96)] - **doc**: remove unneeded ellipsis in header (Rich Trott) [#&#8203;41888](https://github.com/nodejs/node/pull/41888)
-   \[[`b950f5db84`](https://github.com/nodejs/node/commit/b950f5db84)] - **doc**: fix webstream close reject state state doc (Benjamin Gruenbaum) [#&#8203;41860](https://github.com/nodejs/node/pull/41860)
-   \[[`e46c7d6f69`](https://github.com/nodejs/node/commit/e46c7d6f69)] - **(SEMVER-MINOR)** **doc**: deprecate `buffer.slice` (Benjamin Gruenbaum) [#&#8203;41596](https://github.com/nodejs/node/pull/41596)
-   \[[`83129729c6`](https://github.com/nodejs/node/commit/83129729c6)] - **doc**: fix backticks around 'default' (Tobias Nießen) [#&#8203;41613](https://github.com/nodejs/node/pull/41613)
-   \[[`f8819e86fd`](https://github.com/nodejs/node/commit/f8819e86fd)] - **doc**: fix version history for `net.Socket` and `net.Server` (Antoine du Hamel) [#&#8203;42268](https://github.com/nodejs/node/pull/42268)
-   \[[`12bf85a606`](https://github.com/nodejs/node/commit/12bf85a606)] - **doc,tools**: improve navigability of API docs (Paolo Insogna) [#&#8203;41404](https://github.com/nodejs/node/pull/41404)
-   \[[`37f6f92905`](https://github.com/nodejs/node/commit/37f6f92905)] - **errors**: do not access .stack in debug (Benjamin Coe) [#&#8203;42096](https://github.com/nodejs/node/pull/42096)
-   \[[`166eb782f9`](https://github.com/nodejs/node/commit/166eb782f9)] - **esm**: fix base URL for network imports (Bradley Farias) [#&#8203;42131](https://github.com/nodejs/node/pull/42131)
-   \[[`b68db72746`](https://github.com/nodejs/node/commit/b68db72746)] - **esm**: fix relative imports for https (Bradley Farias) [#&#8203;42119](https://github.com/nodejs/node/pull/42119)
-   \[[`c777cb3368`](https://github.com/nodejs/node/commit/c777cb3368)] - **esm**: make extension-less errors in type:module actionable (Bradley Farias) [#&#8203;42301](https://github.com/nodejs/node/pull/42301)
-   \[[`2e42ccf1a5`](https://github.com/nodejs/node/commit/2e42ccf1a5)] - **esm**: improve typings and code coverage (Bradley Farias) [#&#8203;42305](https://github.com/nodejs/node/pull/42305)
-   \[[`25017ca107`](https://github.com/nodejs/node/commit/25017ca107)] - **esm**: add runtime warning for specifier resolution flag (Geoffrey Booth) [#&#8203;42252](https://github.com/nodejs/node/pull/42252)
-   \[[`1324023fea`](https://github.com/nodejs/node/commit/1324023fea)] - **esm**: improve `fetch_module` test coverage and remove hack (Antoine du Hamel) [#&#8203;41947](https://github.com/nodejs/node/pull/41947)
-   \[[`9b8c927d29`](https://github.com/nodejs/node/commit/9b8c927d29)] - **esm**: remove erroneous `context.parentURL` property passed to `load` hook (Jacob Smith) [#&#8203;41975](https://github.com/nodejs/node/pull/41975)
-   \[[`47cefec5c9`](https://github.com/nodejs/node/commit/47cefec5c9)] - **esm**: fix typo in `fetch_module` (Michael Scovetta) [#&#8203;41924](https://github.com/nodejs/node/pull/41924)
-   \[[`0d185f7930`](https://github.com/nodejs/node/commit/0d185f7930)] - **(SEMVER-MINOR)** **esm**: support https remotely and http locally under flag (Bradley Farias) [#&#8203;36328](https://github.com/nodejs/node/pull/36328)
-   \[[`b0a83115db`](https://github.com/nodejs/node/commit/b0a83115db)] - **events**: set default handler value (Benjamin Gruenbaum) [#&#8203;41970](https://github.com/nodejs/node/pull/41970)
-   \[[`6b55ba2fa2`](https://github.com/nodejs/node/commit/6b55ba2fa2)] - **fs**: adjust default `length` for `fs.readSync` and fsPromises/`read` (Livia Medeiros) [#&#8203;42128](https://github.com/nodejs/node/pull/42128)
-   \[[`da87c731b8`](https://github.com/nodejs/node/commit/da87c731b8)] - **fs**: fix default `length` parameter for `fs.read` (wbt) [#&#8203;40349](https://github.com/nodejs/node/pull/40349)
-   \[[`33e4a32f9e`](https://github.com/nodejs/node/commit/33e4a32f9e)] - **(SEMVER-MINOR)** **fs**: support copy of relative links with cp and cpSync (Marcos Bjoerkelund) [#&#8203;41819](https://github.com/nodejs/node/pull/41819)
-   \[[`571eb6dc74`](https://github.com/nodejs/node/commit/571eb6dc74)] - **fs**: fix cb/sync writev empty array behavior (Benjamin Gruenbaum) [#&#8203;41932](https://github.com/nodejs/node/pull/41932)
-   \[[`257a7a5802`](https://github.com/nodejs/node/commit/257a7a5802)] - **fs**: fix writev empty array error behavior (Benjamin Gruenbaum) [#&#8203;41919](https://github.com/nodejs/node/pull/41919)
-   \[[`2d165652f1`](https://github.com/nodejs/node/commit/2d165652f1)] - **fs**: refactor to use ES2020 syntax (小菜) [#&#8203;41903](https://github.com/nodejs/node/pull/41903)
-   \[[`39fb114dde`](https://github.com/nodejs/node/commit/39fb114dde)] - **(SEMVER-MINOR)** **http**: trace http client by perf_hooks (theanarkh) [#&#8203;42345](https://github.com/nodejs/node/pull/42345)
-   \[[`16c00c6ac8`](https://github.com/nodejs/node/commit/16c00c6ac8)] - **http**: add default argument for Agent.prototype.getName (小菜) [#&#8203;41906](https://github.com/nodejs/node/pull/41906)
-   \[[`d301a8825b`](https://github.com/nodejs/node/commit/d301a8825b)] - **http2**: fix potential integer overflow (Michael Dawson) [#&#8203;42248](https://github.com/nodejs/node/pull/42248)
-   \[[`ddef6bbcb8`](https://github.com/nodejs/node/commit/ddef6bbcb8)] - **http2**: add edge case to GOAWAY request (Rafael Silva) [#&#8203;42190](https://github.com/nodejs/node/pull/42190)
-   \[[`28af75ef65`](https://github.com/nodejs/node/commit/28af75ef65)] - **http2**: close stream and session on frameError (Rafael Silva) [#&#8203;42147](https://github.com/nodejs/node/pull/42147)
-   \[[`ebe2b6d21e`](https://github.com/nodejs/node/commit/ebe2b6d21e)] - **lib**: refactor to use primordials in `lib/assert.js` (Akhil Marsonya) [#&#8203;41702](https://github.com/nodejs/node/pull/41702)
-   \[[`dcebb99dfc`](https://github.com/nodejs/node/commit/dcebb99dfc)] - **lib**: fix AsyncResource.bind not using 'this' from the caller by default (Roch Devost) [#&#8203;42177](https://github.com/nodejs/node/pull/42177)
-   \[[`e1704407ae`](https://github.com/nodejs/node/commit/e1704407ae)] - **lib**: clean after the cancel algorithm throw error (Chen Gang) [#&#8203;41366](https://github.com/nodejs/node/pull/41366)
-   \[[`91a06bd629`](https://github.com/nodejs/node/commit/91a06bd629)] - **lib**: add legacy built-in functions to primordials (Antoine du Hamel) [#&#8203;42049](https://github.com/nodejs/node/pull/42049)
-   \[[`e80043fb61`](https://github.com/nodejs/node/commit/e80043fb61)] - **lib**: stop installing webcrypto if `no_browser_globals` is `true` (Mestery) [#&#8203;41971](https://github.com/nodejs/node/pull/41971)
-   \[[`9946b9bceb`](https://github.com/nodejs/node/commit/9946b9bceb)] - **lib**: allow respondWithNewView on byob auto allocated streams (Sean Quinlan) [#&#8203;41887](https://github.com/nodejs/node/pull/41887)
-   \[[`f4e39171de`](https://github.com/nodejs/node/commit/f4e39171de)] - **lib**: restrict usage of fetch related globals in core internals (Antoine du Hamel) [#&#8203;41957](https://github.com/nodejs/node/pull/41957)
-   \[[`b1f0cc6412`](https://github.com/nodejs/node/commit/b1f0cc6412)] - **lib**: move kEnumerableProperty to internal/util (Mestery) [#&#8203;41877](https://github.com/nodejs/node/pull/41877)
-   \[[`2a85e0ac00`](https://github.com/nodejs/node/commit/2a85e0ac00)] - **lib**: add internal genericNodeError() function (Rich Trott) [#&#8203;41879](https://github.com/nodejs/node/pull/41879)
-   \[[`647805a747`](https://github.com/nodejs/node/commit/647805a747)] - **(SEMVER-MINOR)** **lib**: add FormData global when fetch is enabled (Michaël Zasso) [#&#8203;41956](https://github.com/nodejs/node/pull/41956)
-   \[[`f17ce913c9`](https://github.com/nodejs/node/commit/f17ce913c9)] - **(SEMVER-MINOR)** **lib**: add fetch (Michaël Zasso) [#&#8203;41749](https://github.com/nodejs/node/pull/41749)
-   \[[`2cbf45b8a5`](https://github.com/nodejs/node/commit/2cbf45b8a5)] - **loader**: fix esm resolve for symlink file (Xuguang Mei) [#&#8203;42197](https://github.com/nodejs/node/pull/42197)
-   \[[`a363842261`](https://github.com/nodejs/node/commit/a363842261)] - **meta**: update AUTHORS (Node.js GitHub Bot) [#&#8203;42404](https://github.com/nodejs/node/pull/42404)
-   \[[`a122eb1989`](https://github.com/nodejs/node/commit/a122eb1989)] - **meta**: update AUTHORS (Node.js GitHub Bot) [#&#8203;42317](https://github.com/nodejs/node/pull/42317)
-   \[[`c56e15a0eb`](https://github.com/nodejs/node/commit/c56e15a0eb)] - **meta**: add dependencies label to label-pr-config (Mestery) [#&#8203;42129](https://github.com/nodejs/node/pull/42129)
-   \[[`137ca4e1d4`](https://github.com/nodejs/node/commit/137ca4e1d4)] - **meta**: update AUTHORS (Node.js GitHub Bot) [#&#8203;42227](https://github.com/nodejs/node/pull/42227)
-   \[[`09ab04696f`](https://github.com/nodejs/node/commit/09ab04696f)] - **meta**: update AUTHORS (Node.js GitHub Bot) [#&#8203;42142](https://github.com/nodejs/node/pull/42142)
-   \[[`d4d9c00949`](https://github.com/nodejs/node/commit/d4d9c00949)] - **meta**: correct link to feature request document (Simen Bekkhus) [#&#8203;42092](https://github.com/nodejs/node/pull/42092)
-   \[[`2135f8e6cb`](https://github.com/nodejs/node/commit/2135f8e6cb)] - **meta**: move one or more collaborators to emeritus (Node.js GitHub Bot) [#&#8203;42068](https://github.com/nodejs/node/pull/42068)
-   \[[`b969a278eb`](https://github.com/nodejs/node/commit/b969a278eb)] - **meta**: remove collaborator (Rich Trott) [#&#8203;42073](https://github.com/nodejs/node/pull/42073)
-   \[[`de035bceda`](https://github.com/nodejs/node/commit/de035bceda)] - **meta**: update AUTHORS (Node.js GitHub Bot) [#&#8203;42058](https://github.com/nodejs/node/pull/42058)
-   \[[`f5ffa34f77`](https://github.com/nodejs/node/commit/f5ffa34f77)] - **meta**: use plain emojis instead of escape sequences (Mestery) [#&#8203;41989](https://github.com/nodejs/node/pull/41989)
-   \[[`6f1adf1f3e`](https://github.com/nodejs/node/commit/6f1adf1f3e)] - **meta**: update AUTHORS and .mailmap (Rich Trott) [#&#8203;41953](https://github.com/nodejs/node/pull/41953)
-   \[[`363028c887`](https://github.com/nodejs/node/commit/363028c887)] - **(SEMVER-MINOR)** **module**: unflag esm json modules (Geoffrey Booth) [#&#8203;41736](https://github.com/nodejs/node/pull/41736)
-   \[[`b3afb20b44`](https://github.com/nodejs/node/commit/b3afb20b44)] - **(SEMVER-MINOR)** **net**: add new options to `net.Socket` and `net.Server` (Paolo Insogna) [#&#8203;41310](https://github.com/nodejs/node/pull/41310)
-   \[[`bd48ad9c16`](https://github.com/nodejs/node/commit/bd48ad9c16)] - **node-api**: fix typo in `node_api.cc` (Austin Kelleher) [#&#8203;42110](https://github.com/nodejs/node/pull/42110)
-   \[[`11ec3345e7`](https://github.com/nodejs/node/commit/11ec3345e7)] - **(SEMVER-MINOR)** **node-api**: add node_api_symbol_for() (Darshan Sen) [#&#8203;41329](https://github.com/nodejs/node/pull/41329)
-   \[[`7c0b8ca5ac`](https://github.com/nodejs/node/commit/7c0b8ca5ac)] - **perf_hooks**: do not return all entries with getEntriesBy\[Name|Type] (Xuguang Mei) [#&#8203;42104](https://github.com/nodejs/node/pull/42104)
-   \[[`b7a307f0ed`](https://github.com/nodejs/node/commit/b7a307f0ed)] - **perf_hooks**: use arrays to store EntryBuffers (Xuguang Mei) [#&#8203;42032](https://github.com/nodejs/node/pull/42032)
-   \[[`61ecdf8f12`](https://github.com/nodejs/node/commit/61ecdf8f12)] - **process**: fix named report export (madflow) [#&#8203;41861](https://github.com/nodejs/node/pull/41861)
-   \[[`bc08165953`](https://github.com/nodejs/node/commit/bc08165953)] - **process**: deprecate multipleResolves (Benjamin Gruenbaum) [#&#8203;41872](https://github.com/nodejs/node/pull/41872)
-   \[[`a88d4a2e2c`](https://github.com/nodejs/node/commit/a88d4a2e2c)] - **repl**: remove preview when press escape (meixg) [#&#8203;42053](https://github.com/nodejs/node/pull/42053)
-   \[[`83267aaa7f`](https://github.com/nodejs/node/commit/83267aaa7f)] - **repl**: [#&#8203;41690](https://github.com/nodejs/node/issues/41690) REPL gives wrong autocomplete on literals (Xuguang Mei) [#&#8203;41883](https://github.com/nodejs/node/pull/41883)
-   \[[`73ce911a6f`](https://github.com/nodejs/node/commit/73ce911a6f)] - **src**: convert hex2bin() into a regular function (Darshan Sen) [#&#8203;42321](https://github.com/nodejs/node/pull/42321)
-   \[[`7fe16ecc7a`](https://github.com/nodejs/node/commit/7fe16ecc7a)] - **src**: fix coverity warnings in node_file.cc (Michael Dawson) [#&#8203;42272](https://github.com/nodejs/node/pull/42272)
-   \[[`5b30e28eb4`](https://github.com/nodejs/node/commit/5b30e28eb4)] - **src**: check EC_POINT_get_affine_coordinates result (Tobias Nießen) [#&#8203;42304](https://github.com/nodejs/node/pull/42304)
-   \[[`57b619da46`](https://github.com/nodejs/node/commit/57b619da46)] - **src**: simplify bound check in ParseArrayIndex (Tobias Nießen) [#&#8203;42306](https://github.com/nodejs/node/pull/42306)
-   \[[`0e3e3fda22`](https://github.com/nodejs/node/commit/0e3e3fda22)] - **src**: avoid returning invalid value from hex2bin (Tobias Nießen) [#&#8203;42307](https://github.com/nodejs/node/pull/42307)
-   \[[`5eaa59159f`](https://github.com/nodejs/node/commit/5eaa59159f)] - **src**: check return value of HMAC_Final (Tobias Nießen) [#&#8203;42303](https://github.com/nodejs/node/pull/42303)
-   \[[`376b3c4293`](https://github.com/nodejs/node/commit/376b3c4293)] - **src**: include internal/options in the snapshot (Joyee Cheung) [#&#8203;42203](https://github.com/nodejs/node/pull/42203)
-   \[[`268fd97925`](https://github.com/nodejs/node/commit/268fd97925)] - **src**: remove redundant buffer size check (Tobias Nießen) [#&#8203;42257](https://github.com/nodejs/node/pull/42257)
-   \[[`90ce5c9fc5`](https://github.com/nodejs/node/commit/90ce5c9fc5)] - **src**: perform minor cleanups on zlib code (Anna Henningsen) [#&#8203;42247](https://github.com/nodejs/node/pull/42247)
-   \[[`de3748a7e7`](https://github.com/nodejs/node/commit/de3748a7e7)] - **src**: use `emplace_back` instead of `push_back` (Yash Ladha) [#&#8203;42159](https://github.com/nodejs/node/pull/42159)
-   \[[`830f93d892`](https://github.com/nodejs/node/commit/830f93d892)] - **src**: fix unchecked return warning from coverity (Michael Dawson) [#&#8203;42176](https://github.com/nodejs/node/pull/42176)
-   \[[`db9f7752a9`](https://github.com/nodejs/node/commit/db9f7752a9)] - **src**: return proper URLs from node_api_get_module_file_name (Anna Henningsen) [#&#8203;41758](https://github.com/nodejs/node/pull/41758)
-   \[[`d4b1b5cf85`](https://github.com/nodejs/node/commit/d4b1b5cf85)] - **src**: skip revoke_data_object if uuid is not found (Xuguang Mei) [#&#8203;42212](https://github.com/nodejs/node/pull/42212)
-   \[[`3026449009`](https://github.com/nodejs/node/commit/3026449009)] - **src**: remove dead code in AddFingerprintDigest (Tobias Nießen) [#&#8203;42145](https://github.com/nodejs/node/pull/42145)
-   \[[`29fd5ff37d`](https://github.com/nodejs/node/commit/29fd5ff37d)] - **src**: combine GetCurveASN1Name and GetCurveNistName (Tobias Nießen) [#&#8203;42118](https://github.com/nodejs/node/pull/42118)
-   \[[`447ae8c5a3`](https://github.com/nodejs/node/commit/447ae8c5a3)] - **src**: simplify TLSWrap::SetSession (Tobias Nießen) [#&#8203;42087](https://github.com/nodejs/node/pull/42087)
-   \[[`2fe17f3891`](https://github.com/nodejs/node/commit/2fe17f3891)] - **src**: prefer bool over int in crypto_common (Tobias Nießen) [#&#8203;42097](https://github.com/nodejs/node/pull/42097)
-   \[[`237f47e38e`](https://github.com/nodejs/node/commit/237f47e38e)] - **src**: simplify arg type of AddFingerprintDigest (Tobias Nießen) [#&#8203;42101](https://github.com/nodejs/node/pull/42101)
-   \[[`4244b1a0bb`](https://github.com/nodejs/node/commit/4244b1a0bb)] - **src**: do not ignore return value of BIO_reset (Tobias Nießen) [#&#8203;42103](https://github.com/nodejs/node/pull/42103)
-   \[[`e77a7cf985`](https://github.com/nodejs/node/commit/e77a7cf985)] - **src**: simplify GetExponentString (Tobias Nießen) [#&#8203;42121](https://github.com/nodejs/node/pull/42121)
-   \[[`c811b8a1cb`](https://github.com/nodejs/node/commit/c811b8a1cb)] - **(SEMVER-MINOR)** **src**: allow preventing InitializeInspector in env (Shelley Vohr) [#&#8203;35025](https://github.com/nodejs/node/pull/35025)
-   \[[`af73a853f5`](https://github.com/nodejs/node/commit/af73a853f5)] - **src**: use const reference instead of pointer in URL::SerializeURL (Anna Henningsen) [#&#8203;41759](https://github.com/nodejs/node/pull/41759)
-   \[[`703593ab2a`](https://github.com/nodejs/node/commit/703593ab2a)] - **src**: reserve string allocation space early in URL::SerializeURL (Anna Henningsen) [#&#8203;41759](https://github.com/nodejs/node/pull/41759)
-   \[[`170a6cb33e`](https://github.com/nodejs/node/commit/170a6cb33e)] - **src**: fix query/fragment serialization in URL::SerializeURL (Anna Henningsen) [#&#8203;41759](https://github.com/nodejs/node/pull/41759)
-   \[[`86b9d3af98`](https://github.com/nodejs/node/commit/86b9d3af98)] - **src**: don't print interface if sin6\_scope_id is 0 (Santiago Gimeno) [#&#8203;41547](https://github.com/nodejs/node/pull/41547)
-   \[[`fdea60e958`](https://github.com/nodejs/node/commit/fdea60e958)] - **src,buffer**: evaluate THROW_AND_RETURN_IF_OOB() expression only once (Darshan Sen) [#&#8203;41945](https://github.com/nodejs/node/pull/41945)
-   \[[`bf1f485c8d`](https://github.com/nodejs/node/commit/bf1f485c8d)] - **src,crypto**: avoid tristate Maybe\<bool> in ExportJWKEcKey() (Darshan Sen) [#&#8203;42223](https://github.com/nodejs/node/pull/42223)
-   \[[`a5b189cda7`](https://github.com/nodejs/node/commit/a5b189cda7)] - **stream**: use .chunk when calling adapters's writev (Xuguang Mei) [#&#8203;42161](https://github.com/nodejs/node/pull/42161)
-   \[[`0c690456cf`](https://github.com/nodejs/node/commit/0c690456cf)] - **stream**: add more forEach tests (Benjamin Gruenbaum) [#&#8203;41937](https://github.com/nodejs/node/pull/41937)
-   \[[`f12cf6db47`](https://github.com/nodejs/node/commit/f12cf6db47)] - **(SEMVER-MINOR)** **stream**: add reduce (Benjamin Gruenbaum) [#&#8203;41669](https://github.com/nodejs/node/pull/41669)
-   \[[`4b6343964e`](https://github.com/nodejs/node/commit/4b6343964e)] - **stream**: use synchronous error validation on iteration helpers (iMoses) [#&#8203;41652](https://github.com/nodejs/node/pull/41652)
-   \[[`60e28ba507`](https://github.com/nodejs/node/commit/60e28ba507)] - **stream**: add asIndexedPairs (Benjamin Gruenbaum) [#&#8203;41681](https://github.com/nodejs/node/pull/41681)
-   \[[`88a48197c4`](https://github.com/nodejs/node/commit/88a48197c4)] - **stream**: add drop and take (Benjamin Gruenbaum) [#&#8203;41630](https://github.com/nodejs/node/pull/41630)
-   \[[`205c018ab4`](https://github.com/nodejs/node/commit/205c018ab4)] - **(SEMVER-MINOR)** **stream**: support flatMap (Benjamin Gruenbaum) [#&#8203;41612](https://github.com/nodejs/node/pull/41612)
-   \[[`0be2321d53`](https://github.com/nodejs/node/commit/0be2321d53)] - **(SEMVER-MINOR)** **stream**: support some and every (Benjamin Gruenbaum) [#&#8203;41573](https://github.com/nodejs/node/pull/41573)
-   \[[`ac8526e9a5`](https://github.com/nodejs/node/commit/ac8526e9a5)] - **(SEMVER-MINOR)** **stream**: add toArray (Benjamin Gruenbaum) [#&#8203;41553](https://github.com/nodejs/node/pull/41553)
-   \[[`dcc58314b9`](https://github.com/nodejs/node/commit/dcc58314b9)] - **(SEMVER-MINOR)** **stream**: add forEach method (Benjamin Gruenbaum) [#&#8203;41445](https://github.com/nodejs/node/pull/41445)
-   \[[`f21f104c7c`](https://github.com/nodejs/node/commit/f21f104c7c)] - **string_decoder**: fix crash when calling \__proto\_\_.write() (Darshan Sen) [#&#8203;42062](https://github.com/nodejs/node/pull/42062)
-   \[[`e3bced182c`](https://github.com/nodejs/node/commit/e3bced182c)] - **test**: give slow tests more time on Rasberry PIs (Michael Dawson) [#&#8203;42380](https://github.com/nodejs/node/pull/42380)
-   \[[`04243a85c7`](https://github.com/nodejs/node/commit/04243a85c7)] - **test**: improve https_renew_cert.sh script (Tobias Nießen) [#&#8203;42343](https://github.com/nodejs/node/pull/42343)
-   \[[`6d422ad807`](https://github.com/nodejs/node/commit/6d422ad807)] - **test**: improve \_http_incoming.js coverage (Yoshiki Kurihara) [#&#8203;42211](https://github.com/nodejs/node/pull/42211)
-   \[[`3d37efe588`](https://github.com/nodejs/node/commit/3d37efe588)] - **test**: improve \_http_outgoing coverage (Yoshiki Kurihara) [#&#8203;42213](https://github.com/nodejs/node/pull/42213)
-   \[[`245577e15c`](https://github.com/nodejs/node/commit/245577e15c)] - **test**: add test case for reverted 17.7 regression (Rich Trott) [#&#8203;42283](https://github.com/nodejs/node/pull/42283)
-   \[[`3cc06de597`](https://github.com/nodejs/node/commit/3cc06de597)] - **test**: use global webcrypto for WPT tests (Antoine du Hamel) [#&#8203;42236](https://github.com/nodejs/node/pull/42236)
-   \[[`623be18fa3`](https://github.com/nodejs/node/commit/623be18fa3)] - **test**: cover 32-bit sizes in generatePrime (Tobias Nießen) [#&#8203;42207](https://github.com/nodejs/node/pull/42207)
-   \[[`70281e17ad`](https://github.com/nodejs/node/commit/70281e17ad)] - **test**: fix test-process-env-tz.js by using RegExp (Khaidi Chu) [#&#8203;42113](https://github.com/nodejs/node/pull/42113)
-   \[[`33b11a3548`](https://github.com/nodejs/node/commit/33b11a3548)] - **test**: update V8 trace events test expectations (Nikolaos Papaspyrou) [#&#8203;42120](https://github.com/nodejs/node/pull/42120)
-   \[[`978b50fe44`](https://github.com/nodejs/node/commit/978b50fe44)] - **test**: deflake test-common-expect-warning (Luigi Pinca) [#&#8203;42046](https://github.com/nodejs/node/pull/42046)
-   \[[`629d06ace8`](https://github.com/nodejs/node/commit/629d06ace8)] - **test**: validate `EventEmitterAsyncResource` methods throw on invalid this (Yoshiki Kurihara) [#&#8203;42041](https://github.com/nodejs/node/pull/42041)
-   \[[`17af006e38`](https://github.com/nodejs/node/commit/17af006e38)] - **test**: increase Fibonacci argument to 40 (Rich Trott) [#&#8203;42055](https://github.com/nodejs/node/pull/42055)
-   \[[`b06780801c`](https://github.com/nodejs/node/commit/b06780801c)] - **test**: remove test-stdout-close-catch flaky designation (Rich Trott) [#&#8203;42045](https://github.com/nodejs/node/pull/42045)
-   \[[`9ae6982387`](https://github.com/nodejs/node/commit/9ae6982387)] - **test**: check that fetch globals are disabled by default (Michaël Zasso) [#&#8203;42015](https://github.com/nodejs/node/pull/42015)
-   \[[`2a1a94bbbb`](https://github.com/nodejs/node/commit/2a1a94bbbb)] - **test**: improve vm test coverage (Yoshiki Kurihara) [#&#8203;41847](https://github.com/nodejs/node/pull/41847)
-   \[[`3e354da097`](https://github.com/nodejs/node/commit/3e354da097)] - **test**: run webmessaging/broadcastchannel WPT (Ben Noordhuis) [#&#8203;41962](https://github.com/nodejs/node/pull/41962)
-   \[[`711e863084`](https://github.com/nodejs/node/commit/711e863084)] - **test**: fix names of tests marked flaky on IBM i (Richard Lau) [#&#8203;41984](https://github.com/nodejs/node/pull/41984)
-   \[[`95eb03c298`](https://github.com/nodejs/node/commit/95eb03c298)] - **test**: fix typographical error (Rich Trott) [#&#8203;41983](https://github.com/nodejs/node/pull/41983)
-   \[[`31def41391`](https://github.com/nodejs/node/commit/31def41391)] - **test**: fix intl tests on small-icu builds (Antoine du Hamel) [#&#8203;41939](https://github.com/nodejs/node/pull/41939)
-   \[[`11e76fcba4`](https://github.com/nodejs/node/commit/11e76fcba4)] - **test**: remove lint rule for setTimeout() arguments (Rich Trott) [#&#8203;41901](https://github.com/nodejs/node/pull/41901)
-   \[[`fd8bf09608`](https://github.com/nodejs/node/commit/fd8bf09608)] - **test**: move test-crypto-engine to addon (Michael Dawson) [#&#8203;41830](https://github.com/nodejs/node/pull/41830)
-   \[[`25109a6471`](https://github.com/nodejs/node/commit/25109a6471)] - **test**: improve stability of oom test (Benjamin Gruenbaum) [#&#8203;41681](https://github.com/nodejs/node/pull/41681)
-   \[[`ad17c9ce0c`](https://github.com/nodejs/node/commit/ad17c9ce0c)] - **test,crypto**: add and update empty passphrase regression tests (Darshan Sen) [#&#8203;42319](https://github.com/nodejs/node/pull/42319)
-   \[[`9649d656ba`](https://github.com/nodejs/node/commit/9649d656ba)] - **tls**: avoid throw in onerror for bad TLSSocket obj (Valters Jansons) [#&#8203;41523](https://github.com/nodejs/node/pull/41523)
-   \[[`789e6041a6`](https://github.com/nodejs/node/commit/789e6041a6)] - **tools**: update lint-md-dependencies to rollup@2.70.1 (Node.js GitHub Bot) [#&#8203;42403](https://github.com/nodejs/node/pull/42403)
-   \[[`1c1061549a`](https://github.com/nodejs/node/commit/1c1061549a)] - **tools**: update doc to highlight.js@11.5.0 unified@10.1.2 (Node.js GitHub Bot) [#&#8203;42315](https://github.com/nodejs/node/pull/42315)
-   \[[`97aa236083`](https://github.com/nodejs/node/commit/97aa236083)] - **tools**: update lint-md-dependencies to rollup@2.70.0 unified@10.1.2 (Node.js GitHub Bot) [#&#8203;42316](https://github.com/nodejs/node/pull/42316)
-   \[[`7636370bdb`](https://github.com/nodejs/node/commit/7636370bdb)] - **tools**: update eslint to 8.11.0 (Node.js GitHub Bot) [#&#8203;42318](https://github.com/nodejs/node/pull/42318)
-   \[[`359395393f`](https://github.com/nodejs/node/commit/359395393f)] - **tools**: fix web streams API links (Brian White) [#&#8203;42153](https://github.com/nodejs/node/pull/42153)
-   \[[`fe5578b627`](https://github.com/nodejs/node/commit/fe5578b627)] - **tools**: update lint-md-dependencies to rollup@2.69.1 (Node.js GitHub Bot) [#&#8203;42226](https://github.com/nodejs/node/pull/42226)
-   \[[`8532f83c8e`](https://github.com/nodejs/node/commit/8532f83c8e)] - **tools**: update lint-md rollup dependencies (Node.js GitHub Bot) [#&#8203;42141](https://github.com/nodejs/node/pull/42141)
-   \[[`f2a16158a0`](https://github.com/nodejs/node/commit/f2a16158a0)] - **tools**: update eslint to 8.10.0 (Node.js GitHub Bot) [#&#8203;42143](https://github.com/nodejs/node/pull/42143)
-   \[[`11f747b0e4`](https://github.com/nodejs/node/commit/11f747b0e4)] - **tools**: update lint-md-dependencies to rollup@2.67.3 (Node.js GitHub Bot) [#&#8203;42057](https://github.com/nodejs/node/pull/42057)
-   \[[`c47b436bd0`](https://github.com/nodejs/node/commit/c47b436bd0)] - **tools**: enable es2022 env in ESLint config (Michaël Zasso) [#&#8203;42043](https://github.com/nodejs/node/pull/42043)
-   \[[`bbdf285a39`](https://github.com/nodejs/node/commit/bbdf285a39)] - **tools**: add `console` to the list of restricted globals (Antoine du Hamel) [#&#8203;42012](https://github.com/nodejs/node/pull/42012)
-   \[[`aace6c2626`](https://github.com/nodejs/node/commit/aace6c2626)] - **tools**: lint deprecation codes (Antoine du Hamel) [#&#8203;41992](https://github.com/nodejs/node/pull/41992)
-   \[[`c229889022`](https://github.com/nodejs/node/commit/c229889022)] - **tools**: fix bugs in prefer-primordials linter rule (Antoine du Hamel) [#&#8203;42010](https://github.com/nodejs/node/pull/42010)
-   \[[`410d0ce44a`](https://github.com/nodejs/node/commit/410d0ce44a)] - **tools**: add timers functions to the list of restricted globals (Antoine du Hamel) [#&#8203;42013](https://github.com/nodejs/node/pull/42013)
-   \[[`06d8c53e62`](https://github.com/nodejs/node/commit/06d8c53e62)] - **tools**: reduce list of globals in ESLint config (Rich Trott) [#&#8203;41996](https://github.com/nodejs/node/pull/41996)
-   \[[`82b64f44fc`](https://github.com/nodejs/node/commit/82b64f44fc)] - **tools**: update remark-preset-lint-node to 3.3.1 (Rich Trott) [#&#8203;41999](https://github.com/nodejs/node/pull/41999)
-   \[[`1db9cc7e59`](https://github.com/nodejs/node/commit/1db9cc7e59)] - **tools**: update ESLint to 8.9.0 (Luigi Pinca) [#&#8203;41973](https://github.com/nodejs/node/pull/41973)
-   \[[`f8c6232f90`](https://github.com/nodejs/node/commit/f8c6232f90)] - **tools**: update lint-md-dependencies to rollup@2.67.2 (Node.js GitHub Bot) [#&#8203;41941](https://github.com/nodejs/node/pull/41941)
-   \[[`57d5576c4d`](https://github.com/nodejs/node/commit/57d5576c4d)] - **tools**: fix typo in prefer-primordials.js (Ikko Ashimine) [#&#8203;41891](https://github.com/nodejs/node/pull/41891)
-   \[[`4bba27935a`](https://github.com/nodejs/node/commit/4bba27935a)] - **tools,lib**: remove `global` and `Intl` from the list of globals (Antoine du Hamel) [#&#8203;42014](https://github.com/nodejs/node/pull/42014)
-   \[[`e918570d10`](https://github.com/nodejs/node/commit/e918570d10)] - **url**: preserve null char in WHATWG URL errors (Rich Trott) [#&#8203;42263](https://github.com/nodejs/node/pull/42263)
-   \[[`962a8ec350`](https://github.com/nodejs/node/commit/962a8ec350)] - **url**: trim leading and trailing C0 control chars (Rich Trott) [#&#8203;42196](https://github.com/nodejs/node/pull/42196)
-   \[[`78647edba7`](https://github.com/nodejs/node/commit/78647edba7)] - **url, src**: modify one `special_back_slash` (Khaidi Chu) [#&#8203;42112](https://github.com/nodejs/node/pull/42112)
-   \[[`a458fbf949`](https://github.com/nodejs/node/commit/a458fbf949)] - **worker**: do not send message if port is closing (Rich Trott) [#&#8203;42357](https://github.com/nodejs/node/pull/42357)
-   \[[`604621a275`](https://github.com/nodejs/node/commit/604621a275)] - **worker**: fix typo in debug statement (Antoine du Hamel) [#&#8203;42011](https://github.com/nodejs/node/pull/42011)
-   \[[`237affc951`](https://github.com/nodejs/node/commit/237affc951)] - **(SEMVER-MINOR)** **worker**: graduate get/setEnvironmentData APIs (James M Snell) [#&#8203;41272](https://github.com/nodejs/node/pull/41272)

</details>

---

### Configuration

📅 **Schedule**: At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox.

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).

Reviewed-on: https://git.walbeck.it/mwalbeck/docker-cyberchef/pulls/62
Co-authored-by: renovate-bot <bot@walbeck.it>
Co-committed-by: renovate-bot <bot@walbeck.it>
juanarbol pushed a commit that referenced this pull request May 31, 2022
PR-URL: #42608
Refs: #42149
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
danielleadams pushed a commit that referenced this pull request Jun 27, 2022
PR-URL: #42608
Refs: #42149
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. commit-queue-squash Add this label to instruct the Commit Queue to squash all the PR commits into the first one. deprecations Issues and PRs related to deprecations. doc Issues and PRs related to the documentations. notable-change PRs with changes that should be highlighted in changelogs.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants