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

v17.8.0 proposal #42425

Merged
merged 70 commits into from
Mar 22, 2022
Merged

v17.8.0 proposal #42425

merged 70 commits into from
Mar 22, 2022

Conversation

bengl
Copy link
Member

@bengl bengl commented Mar 21, 2022

2022-03-22, Version 17.8.0 (Current), @bengl

Notable Changes

Commits

mhdawson and others added 30 commits March 20, 2022 17:27
Fix unchecked return warning from coverity in
src/env.cc. Added check in same manner as other
places where uv_async_init is called.

Signed-off-by: Michael Dawson <[email protected]>

PR-URL: #42176
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Updated docs to reflect current behaviour of readline:
final line of input will be emitted via `'line'` event
when input stream `'end'` event is emitted even when
the input is not newline terminated.

Refs: nodejs/node-v0.x-archive#7238

PR-URL: #42214
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
PR-URL: #42153
Reviewed-By: Mestery <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #42129
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
Reviewed-By: James M Snell <[email protected]>
The function generating fingerprint strings never accesses more than
EVP_MAX_MD_SIZE * 3 characters, including the terminating '\0'.

PR-URL: #42175
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
If `ccache` is available, use it during V8 builds on ppc64le and s390x.
Only create the `gcc` and `g++` shims if necessary.

PR-URL: #42204
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Emulate the WHATWHG URL parse behavior of trimming leading and trailing
C0 control characters. This moves url.parse() slightly closer to
WHATWHG URL behavior. The current behavior is possibly insecure for some
uses. (The url.parse() API is marked as Legacy and the documentation
specifically says it has known bugs and insecure behaviors. Still this
change makes a lot of sense.)

This issue was reported by P0cas. https://github.com/P0cas

PR-URL: #42196
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
This makes the function throw an exception from JS instead of crashing.

Fixes: #41949
Signed-off-by: Darshan Sen <[email protected]>

PR-URL: #42062
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Mestery <[email protected]>
The last release line that did not support the new openssl list command
was OpenSSL 1.1.0, which reached its end-of-life status years ago.

PR-URL: #42235
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #42205
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
PR-URL: #42177
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Gerhard Stöbich <[email protected]>
Reviewed-By: Bradley Farias <[email protected]>
Reviewed-By: Bryan English <[email protected]>
Reviewed-By: James M Snell <[email protected]>
This also affects `fs.writeFile`, `fs.appendFile`, and
`fs.appendFileSync`

Refs: #41677

PR-URL: #42149
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #42159
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #42236
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
Reviewed-By: James M Snell <[email protected]>
The function currently uses the return value to convey whether an
exception was thrown while it was running by using either Just(true) or
Nothing<bool>(). Unfortunately, Maybe<bool> also has a third state -
Just(false), which doesn't make any sense here. So this change avoids
the possibility of a tristate return value by making use of Maybe<void>
which only has two valid states - JustVoid() / Nothing<void>(), which
fits right in.

Signed-off-by: Darshan Sen <[email protected]>

PR-URL: #42223
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #42267
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Mestery <[email protected]>
This also adds a script to automate the update and includes the sources
included in the npm tarball.

PR-URL: #42246
Fixes: #42199
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Tierney Cyren <[email protected]>
The workflow already updates Corepack, which is a `deps`, not a `tool`.
Add subsystem and label variables to the matrix to better control the
automated pull requests and add undici to the updated deps.

PR-URL: #42246
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Tierney Cyren <[email protected]>
resolve: #42239

PR-URL: #42241
Fixes: #42239
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Mestery <[email protected]>
Fix report from coverity on potential integer overflow
in http2.

Signed-off-by: Michael Dawson <[email protected]>

PR-URL: #42248
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Mohammed Keyvanzadeh <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
PR-URL: #42252
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Jacob Smith <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
- Use `final` to indicate the classes that we actually
  instantiate
- Properly use `const` (and the necessary associated `const_cast`
  for zlib because we don’t define `ZLIB_CONST` and allow shared
  builds)
- Store the JS callback in an internal field rather than a `Global`
  (which improves memory leak debugging capabilities, removes
  a potential future memory leak footgun, and aligns the code
  with the rest of the codebase more closely)
- Other minor C++ cleanup

PR-URL: #42247
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Original commit message:

    [riscv64] Fix segmentation fault of webpack-make from cockpit

    issue: riscv-collab/v8#520

    Change-Id: I7fe298ad16a2f599805929db0f084a81c4eb7f7a
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3503170
    Auto-Submit: Yahan Lu <[email protected]>
    Reviewed-by: ji qiu <[email protected]>
    Reviewed-by: Yahan Lu <[email protected]>
    Commit-Queue: Yahan Lu <[email protected]>
    Cr-Commit-Position: refs/heads/main@{#79376}

Refs: v8/v8@c6f6626

PR-URL: #42240
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
This condition is already checked by the CHECK_BUFLEN_IN_RANGE macro,
so if it was true here, that would contradict the previous check.

PR-URL: #42257
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Refs: #42279

PR-URL: #42283
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Mestery <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
A null character in the middle of an invalid URL was resulting in an
error message that truncated the input string. This preserves the entire
input string in the error message.

Refs: #39592

PR-URL: #42263
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
This patch enables internal/options to be included in the snapshot,
so that when lazy loading the run time options, the modules only
need to make sure that the options are queried lazily and do not
have to lazy load the internal/options module together. We can
still guarantee that no run time options are serialized into the
state-independent bootstrap snapshot with the assertion inside
GetCLIOptions().

PR-URL: #42203
Refs: #37476
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Bradley Farias <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
PR-URL: #42317
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Original commit message:

Asterisks should be allowed in host validation as CNAMEs may reference
wildcard domains

CloudFlare appears to use this logic in CNAMEs as per
#42171

Fixes: c-ares/c-ares#457
Fix By: Brad House (@bradh352)

PR-URL: #42216
Fixes: #42171
Fixes: #457
Refs: c-ares/c-ares#457
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
@targos targos added release Issues and PRs related to Node.js releases. and removed fast-track PRs that do not need to wait for 48 hours to land. needs-ci PRs that need a full CI run. dont-land-on-v12.x dependencies Pull requests that update a dependency file. labels 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
@nodejs-github-bot

This comment was marked as outdated.

@bengl
Copy link
Member Author

bengl commented Mar 21, 2022

I accidentally included a file in the release commit that shouldn't have been there. I've amended, re-pushed and kicked off CI again, omitting CITGM because there's no way a random text file in the root of the project should affect CITGM (I'd hope).

CI: https://ci.nodejs.org/job/node-test-pull-request/43153/
V8: https://ci.nodejs.org/job/node-test-commit-v8-linux/4583/

@bengl bengl merged commit 123661e into v17.x Mar 22, 2022
bengl added a commit that referenced this pull request Mar 22, 2022
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
bengl added a commit to bengl/nodejs.org that referenced this pull request Mar 22, 2022
bengl added a commit to nodejs/nodejs.org that referenced this pull request Mar 22, 2022
@bengl bengl deleted the v17.8.0-proposal branch March 22, 2022 14:58
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release Issues and PRs related to Node.js releases.
Projects
None yet
Development

Successfully merging this pull request may close these issues.