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

v15.9.0 proposal #37406

Merged
merged 108 commits into from
Feb 18, 2021
Merged

v15.9.0 proposal #37406

merged 108 commits into from
Feb 18, 2021

Conversation

danielleadams
Copy link
Contributor

@danielleadams danielleadams commented Feb 16, 2021

2021-02-17, Version 15.9.0 (Current), @danielleadams

Notable Changes

  • crypto:
    • add keyObject.export() 'jwk' format option (Filip Skokan) #37081
  • deps:
    • upgrade to libuv 1.41.0 (Colin Ihrig) #37360
  • doc:
    • add dmabupt to collaborators (Xu Meng) #37377
    • refactor fs docs structure (James M Snell) #37170
  • fs:
    • add fsPromises.watch() (James M Snell) #37179
    • use a default callback for fs.close() (James M Snell) #37174
    • add AbortSignal support to watch (Benjamin Gruenbaum) #37190
  • perf_hooks:
    • introduce createHistogram (James M Snell) #37155
  • stream:
    • improve Readable.from error handling (Benjamin Gruenbaum) #37158
  • timers:
    • introduce setInterval async iterator (linkgoron) #37153
  • tls:
    • add ability to get cert/peer cert as X509Certificate object (James M Snell) #37070

Commits

  • [d0f1ff53ff] - async_hooks: set unhandledRejection async context (Sajal Khandelwal) #37281
  • [c160d88c9e] - buffer: add @@toStringTag to Blob (Colin Ihrig) #37336
  • [8487184457] - child_process: fix bad abort signal leak (Nitzan Uziely) #37257
  • [e28ea89b1a] - crypto: fix subtle.importKey JWK OKP public key import (Filip Skokan) #37255
  • [55fd6b6611] - crypto: avoid infinite loops in prime generation (Tobias Nießen) #37212
  • [9dac99a11a] - crypto: fix and simplify prime option validation (Tobias Nießen) #37164
  • [3e2746ff63] - crypto: remove webcrypto "DSA" JWK Key Type operations (Filip Skokan) #37203
  • [011910b424] - (SEMVER-MINOR) crypto: add keyObject.export() 'jwk' format option (Filip Skokan) #37081
  • [c0eadef495] - deps: upgrade to libuv 1.41.0 (Colin Ihrig) #37360
  • [50e81ba0b8] - deps: V8: cherry-pick 0c8b6e415c30 (Matin Zadehdolatabad) #37276
  • [d1c1724c69] - deps: upgrade npm to 7.5.3 (Ruy Adorno) #37283
  • [20c65b00c2] - deps: V8: backport dfcf1e86fac0 (Michaël Zasso) #37245
  • [e63b380f76] - deps: upgrade npm to 7.5.2 (Ruy Adorno) #37191
  • [d808db2732] - doc: add dmabupt to collaborators (Xu Meng) #37377
  • [dd054ca37f] - doc: optimize HTML rendering (Antoine du Hamel) #37301
  • [c188466a18] - doc: fix quotes in stream docs (Tobias Nießen) #37269
  • [f5e4625468] - doc: fix backticks in crypto API docs (Tobias Nießen) #37269
  • [e2a2bab44e] - doc: link PACKAGE_EXPORTS_RESOLVE to ESM section (Utku Gultopu) #37135
  • [1e99175e01] - doc: alphabetize crypto.* methods (Rich Trott) #37353
  • [392c86d38b] - doc: use sentence case in benchmark doc (Rich Trott) #37351
  • [62b2648a96] - doc: apply sentence-consistently in C++ style guide (Rich Trott) #37350
  • [189ce399da] - doc: apply sentence case to release doc headers (Rich Trott) #37349
  • [610b29b8bd] - doc: fix performanceEntry.flags style format (Cheng Liu) #37274
  • [85b1476f1d] - doc: fix typo in deprecations.md (marsonya) #37282
  • [f253cb9303] - doc: fix typo in buffer.md (marsonya) #37268
  • [804e7ae713] - doc: add version metadata for packages features (Antoine du Hamel) #37289
  • [cdd2fe5651] - doc: fix typo in /api/dns.md (marsonya) #37312
  • [7d8fd3f576] - doc: refactor fs docs structure (James M Snell) #37170
  • [facf3a5c23] - doc: fix description of hasSubscribers (Tobias Nießen) #37324
  • [3464c9f007] - doc: discourage error event (Benjamin Gruenbaum) #37264
  • [85bed2ec26] - doc: fix misnamed SHASUMS256.txt name in README.md (marsonya) #37260
  • [cd50e93307] - doc: warn about using strings as inputs in crypto (Tobias Nießen) #37248
  • [5a4288ebb6] - doc: fix typo in crypto.md (marsonya) #37279
  • [0e887caf32] - doc: fix typo in console.md (marsonya) #37279
  • [47c4f1fc54] - doc: use sentence case in README headers (Rich Trott) #37251
  • [7da1c9b219] - doc: use sentence case for headers in BUILDING.md (Rich Trott) #37250
  • [ebf3597db1] - doc: rename N-API to Node-API (Gabriel Schulhof) #37259
  • [760f126adb] - doc: mark Certificate methods as static, add missing KeyObject.from (Filip Skokan) #37198
  • [aebe532967] - doc: consistent webcrypto node.keyObject format (Filip Skokan) #37200
  • [596bfb36a0] - doc: mention CryptoKey in port.postMessage() (Filip Skokan) #37196
  • [0702d60def] - doc: fix webcrypto HMAC generateKey example (Filip Skokan) #37197
  • [8a254058f5] - doc: fix accommodate typos (Colin Ihrig) #37229
  • [5906e85ce2] - doc: fix version number for DEP006 (Antoine du Hamel) #37231
  • [52c40c7a48] - doc: fix CHANGELOG_ARCHIVE table of contents (Antoine du Hamel) #37232
  • [eb08afdf24] - doc: fix typo in globals.md (Darshan Sen) #37228
  • [b87c0d6c16] - doc: fix typo in cli.md (Kalvin Vasconcellos) #37214
  • [3f815d93bf] - doc: fix pr-url for DEP0148 (Antoine du Hamel) #37205
  • [ff02e5e12c] - doc: fix 404 links in module.md (Antoine du Hamel) #37202
  • [67c9a8e176] - doc: improve promise terminology (Benjamin Gruenbaum) #37181
  • [15804e0b3f] - errors: align source-map stacks with spec (Benjamin Coe) #37252
  • [88d3f74c85] - (SEMVER-MINOR) fs: add fsPromises.watch() (James M Snell) #37179
  • [c30245072a] - fs: allow passing negative zero fd (Darshan Sen) #37123
  • [655d19638a] - (SEMVER-MINOR) fs: use a default callback for fs.close() (James M Snell) #37174
  • [acd087dffb] - (SEMVER-MINOR) fs: add AbortSignal support to watch (Benjamin Gruenbaum) #37190
  • [f5d1bf9d0e] - http: explain the possibilty of refactor unused argument (Qingyu Deng) #37275
  • [d63ac28a9a] - http: explain the unused argument in IncomingMessage._read (Qingyu Deng) #37275
  • [4cdc5ea823] - http: fix ClientRequest unhandled errors (Robert Nagy) #36970
  • [c6198fddc7] - lib: simplify check in child_process (Darshan Sen) #37367
  • [f6f9af6a59] - lib: fix WebIDL object and dictionary type conversion (ExE Boss) #37047
  • [acabe08b10] - lib: add weak event handlers (Benjamin Gruenbaum) #36607
  • [3db1b30732] - meta: update README releases section (Zuzana Svetlikova) #37318
  • [d96a97a2b9] - module: make synthetic module evaluation steps return a Promise to support top level await (Daniel Clark) #37300
  • [a693baa0cb] - module: use optional chaining in cjs/loader.js (Darshan Sen) #37238
  • [061939d2f6] - (SEMVER-MINOR) node-api: allow retrieval of add-on file name (Gabriel Schulhof) #37195
  • [c4faa39768] - (SEMVER-MINOR) perf_hooks: introduce createHistogram (James M Snell) #37155
  • [799b2d5275] - policy: fix cascade getting scope (Bradley Meck) #37298
  • [6d53e797d7] - repl: refactor to avoid unsafe array iteration (Antoine du Hamel) #37345
  • [3fee5b2219] - repl: add auto‑completion for dynamic import calls (ExE Boss) #37178
  • [c3778343aa] - repl: refactor to avoid unsafe array iteration (Antoine du Hamel) #37188
  • [e28fa6c3fc] - src: fix return type of method in string_search.h (Darshan Sen) #37167
  • [42cc33cc48] - src: add mutex to ManagedEVPPKey class (Daniel Bevenius) #36825
  • [1a9bcdf1d9] - src: refactor v8 binding (Joyee Cheung) #37112
  • [54d36b00af] - src: rename binding_data_name to type_name in BindingData (Joyee Cheung) #37112
  • [3079a78428] - src: avoid implicit type conversions (Michaël Zasso) #37149
  • [a6053dc14a] - src: add context for TODO comment in env.cc (Yash Ladha) #37140
  • [354df9e8a1] - src: use make_shared for safe allocation (Yash Ladha) #37139
  • [337b4e7540] - src: put (de)serialization code into node_snapshotable.h/cc (Joyee Cheung) #37114
  • [2a5f67b381] - src: refactor bookkeeping of bootstrap status (Joyee Cheung) #37113
  • [48ce1eb364] - src: fix warning in string_search.h (Darshan Sen) #37146
  • [bfe0b46d92] - src: simplify calls to BN_bin2bn in prime gen (Tobias Nießen) #37169
  • [9946c1137e] - src: read exactly two tokens from Linux THP sysfs config (James Addison) #37065
  • [1fea05149a] - (SEMVER-MINOR) stream: improve Readable.from error handling (Benjamin Gruenbaum) #37158
  • [d2a487e640] - Revert "stream: fix .end() error propagation" (Matteo Collina) #37060
  • [b5692b4b06] - test: fix test-doctool-html (Antoine du Hamel) #37397
  • [b09d21b06b] - test: enable no-restricted-syntax rule for test-timers-promisified (Rich Trott) #37357
  • [1fc8307138] - test: re-implement promises.setInterval() test robustly (Rich Trott) #37230
  • [8483de4da8] - test: only run prime test with supported OpenSSL (Tobias Nießen) #37212
  • [48a634e514] - test: rename n-api to node-api (Gabriel Schulhof) #37217
  • [51575252f5] - test: remove flaky designation for test-http2-large-file (Rich Trott) #37156
  • [13fe17c4ef] - test: split heap snapshot limit tests (Rich Trott) #37189
  • [dc38dd2c6f] - timers: fix unsafe array iteration (Darshan Sen) #37223
  • [eb7ec1b257] - timers: remove flaky setInterval test (Nitzan Uziely) #37227
  • [4ebe38b212] - (SEMVER-MINOR) timers: introduce setInterval async iterator (linkgoron) #37153
  • [dc84c181c3] - (SEMVER-MINOR) tls: add ability to get cert/peer cert as X509Certificate object (James M Snell) #37070
  • [2e1f1c6f3c] - tools: refactor prefer-primordials (Antoine du Hamel) #36018
  • [b2b64113b1] - tools: update ESLint to 7.20.0 (Colin Ihrig) #37339
  • [a483c284f3] - tools: fix lint-pr-url message (Antoine du Hamel) #37304
  • [1ff375beb3] - tools: avoid pending deprecation in doc generator (Michaël Zasso) #37267
  • [6db5e7958a] - tools: add GitHub Action linter for pr-url (Antoine du Hamel) #37221
  • [d8d851ac5c] - tools: bump remark-present-lint-node from 2.0.0 to 2.0.1 (Rich Trott) #37270
  • [eb0daaedf9] - tools: fix d8 macOS build (Michaël Zasso) #37211
  • [745aad73dc] - tools: update ESLint to 7.19.0 (Colin Ihrig) #37159
  • [676f696a99] - url: fix definitions of URL/SearchParams methods and accessors (ExE Boss) #36799
  • [fbcab109de] - url: move URLSearchParams method definitions (ExE Boss) #36799
  • [7c51cecbca] - util: use assert for unreachable code (Rich Trott) #37249
  • [66a14d3992] - vm: add importModuleDynamically option to compileFunction (Gus Caplan) #35431
  • [05a16e7259] - worker: refactor to avoid unsafe array iteration (Antoine du Hamel) #37346

mcollina and others added 30 commits February 15, 2021 14:55
This reverts commit 4c819d6.

PR-URL: #37060
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: Beth Griggs <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Danielle Adams <[email protected]>
PR-URL: #37181
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Zijian Liu <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
There was an unexpected and hard-to-spot issue here:
the /sys/kernel/mm/transparent_hugepage/enabled file contains three
entries, and the std::ifstream reader was reading two values on each
loop iteration, resulting in incorrect behaviour.

Fixes: #37064

PR-URL: #37065
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: James M Snell <[email protected]>
test/parallel/test-heapsnapshot-near-heap-limit.js is timing out in CI
on low-memory and slow-CPU devices. Split off the worker test to its own
test file to allow the test to finish in time.

Refs: #36961
PR-URL: #37189
Reviewed-By: Ash Cripps <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Filip Skokan <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Signed-off-by: James M Snell <[email protected]>

PR-URL: #37070
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Filip Skokan <[email protected]>
Adds [JWK](https://tools.ietf.org/html/rfc7517) keyObject.export format
option.

Supported key types: `ec`, `rsa`, `ed25519`, `ed448`, `x25519`, `x448`,
and symmetric keys, resulting in JWK `kty` (Key Type) values `EC`,
`RSA`, `OKP`, and `oct`.

`rsa-pss` is not supported since the JWK format does not support
PSS Parameters.

`EC` JWK curves supported are `P-256`, `secp256k1`, `P-384`, and `P-521`

PR-URL: #37081
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
PR-URL: #37191
Reviewed-By: Myles Borins <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
PR-URL: #37158
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
PR-URL: #37202
Reviewed-By: Zijian Liu <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Beth Griggs <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
PR-URL: #37205
Reviewed-By: Beth Griggs <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Pooja D P <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Zijian Liu <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Update ESLint to 7.19.0

PR-URL: #37159
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
PR-URL: #37169
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Added setInterval async generator to timers\promises.
Utilises async generators to provide an iterator compatible with
`for await`.

Co-Authored-By: Fabian Cook <[email protected]>

fix message

PR-URL: #37153
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: James M Snell <[email protected]>
This seems to have stopped happening, possibly because it only ever
happened on win2008 and that went eol last year.

Closes: #22327

PR-URL: #37156
Fixes: #22327
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Stephen Belanger <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #37214
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
ClientRequest could someone cause an unhandled error
from socket.

Fixes: #36931

PR-URL: #36970
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Fixes: #37145

PR-URL: #37146
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Juan José Arboleda <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
PR-URL: #37228
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Zijian Liu <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #37227
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
PR-URL: #37188
Reviewed-By: Zijian Liu <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
PR-URL: #37231
Reviewed-By: Juan José Arboleda <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Pooja D P <[email protected]>
Reviewed-By: Trivikram Kamat <[email protected]>
PR-URL: #37190
Refs: #37179
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
This patch

1. Refactors the bootstrap routine of the main instance so that
  when --no-node-snapshot is used,
  Environment::InitializeMainContext() will only be called once
  (previously it would be called twice, which was harmless for now
  but not ideal).
2. Mark the number of BaseObjects in RunBootstrapping() when creating
  the Environment from scratch and in InitializeMainContext() when
  the Environment is deserialized. Previously the marking was done in
  the Environment constructor and InitializeMainContext() respectively
  for the cctest which was incorrect because the cctest never uses
  an Environment that's not bootstrapped. Also renames the mark
  to base_object_created_after_bootstrap to reflect what it's
  intended for.

PR-URL: #37113
Refs: #36943
Reviewed-By: James M Snell <[email protected]>
So that it's easier to find the corresponding code.

PR-URL: #37114
Refs: #36943
Reviewed-By: Juan José Arboleda <[email protected]>
PR-URL: #37229
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Juan José Arboleda <[email protected]>
Reviewed-By: Pooja D P <[email protected]>
Reviewed-By: Trivikram Kamat <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
This reverts commit 2d5d773.

See: #32985
See: #33364
See: #33166
Fixes: #31860

PR-URL: #35431
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Ujjwal Sharma <[email protected]>
The `fs.close()` function requires a callback. Most often the only thing
that callback does is check and rethrow the error if one occurs. To
eliminate common boilerplate, make the callback optional with a default
that checks and rethrows the error as an uncaught exception.

Signed-off-by: James M Snell <[email protected]>

PR-URL: #37174
Reviewed-By: Juan José Arboleda <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Darshan Sen <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Zijian Liu <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
PR-URL: #37197
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
PR-URL: #37196
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
@nodejs-github-bot

This comment has been minimized.

@targos targos added the release Issues and PRs related to Node.js releases. label Feb 16, 2021
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

Copy link
Member

@targos targos left a comment

Choose a reason for hiding this comment

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

Please add PR-URL: https://github.com/nodejs/node/pull/37406 to the release commit message

PR-URL: #37406

Notable Changes:

* crypto:
  * add keyObject.export() jwk format option (Filip Skokan) #37081
* deps:
  * upgrade to libuv 1.41.0 (Colin Ihrig) #37360
* doc:
  * add dmabupt to collaborators (Xu Meng) #37377
  * refactor fs docs structure (James M Snell) #37170
* fs:
  * add fsPromises.watch() (James M Snell) #37179
  * use a default callback for fs.close() (James M Snell) #37174
  * add AbortSignal support to watch (Benjamin Gruenbaum) #37190
* perf_hooks:
  * introduce createHistogram (James M Snell) #37155
* stream:
  * improve Readable.from error handling (Benjamin Gruenbaum) #37158
* timers:
  * introduce setInterval async iterator (linkgoron) #37153
* tls:
  * add ability to get cert/peer cert as X509Certificate object (James M Snell) #37070
@danielleadams
Copy link
Contributor Author

@targos fixed, and added 👍🏼

@nodejs-github-bot

This comment has been minimized.

@nodejs nodejs deleted a comment from nodejs-github-bot Feb 17, 2021
@nodejs nodejs deleted a comment from nodejs-github-bot Feb 17, 2021
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@danielleadams danielleadams merged commit 877f66e into v15.x Feb 18, 2021
danielleadams added a commit that referenced this pull request Feb 18, 2021
danielleadams added a commit that referenced this pull request Feb 18, 2021
PR-URL: #37406

Notable Changes:

* crypto:
  * add keyObject.export() jwk format option (Filip Skokan) #37081
* deps:
  * upgrade to libuv 1.41.0 (Colin Ihrig) #37360
* doc:
  * add dmabupt to collaborators (Xu Meng) #37377
  * refactor fs docs structure (James M Snell) #37170
* fs:
  * add fsPromises.watch() (James M Snell) #37179
  * use a default callback for fs.close() (James M Snell) #37174
  * add AbortSignal support to watch (Benjamin Gruenbaum) #37190
* perf_hooks:
  * introduce createHistogram (James M Snell) #37155
* stream:
  * improve Readable.from error handling (Benjamin Gruenbaum) #37158
* timers:
  * introduce setInterval async iterator (linkgoron) #37153
* tls:
  * add ability to get cert/peer cert as X509Certificate object (James M Snell) #37070
danielleadams pushed a commit to danielleadams/nodejs.org that referenced this pull request Feb 18, 2021
danielleadams added a commit to nodejs/nodejs.org that referenced this pull request Feb 18, 2021
@danielleadams danielleadams deleted the v15.9.0-proposal branch February 18, 2021 02:41
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.