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.1.0 release proposal #35948

Merged
merged 115 commits into from
Nov 4, 2020
Merged

v15.1.0 release proposal #35948

merged 115 commits into from
Nov 4, 2020

Conversation

targos
Copy link
Member

@targos targos commented Nov 3, 2020

2020-11-04, Version 15.1.0 (Current), @targos

Notable Changes

Diagnostics channel (experimental module)

diagnostics_channel is a new experimental module that provides an API to create named channels to report arbitrary message data for diagnostics purposes.

With diagnostics_channel, Node.js core and module authors can publish contextual data about what they are doing at a given time. This could be the hostname and query string of a mysql query, for example. Just create a named channel with dc.channel(name) and call channel.publish(data) to send the data to any listeners to that channel.

const dc = require('diagnostics_channel');
const channel = dc.channel('mysql.query');

MySQL.prototype.query = function query(queryString, values, callback) {
  // Broadcast query information whenever a query is made
  channel.publish({
    query: queryString,
    host: this.hostname,
  });

  this.doQuery(queryString, values, callback);
};

Channels are like one big global event emitter but are split into separate objects to ensure they get the best performance. If nothing is listening to the channel, the publishing overhead should be as close to zero as possible. Consuming channel data is as easy as using channel.subscribe(listener) to run a function whenever a message is published to that channel.

const dc = require('diagnostics_channel');
const channel = dc.channel('mysql.query');

channel.subscribe(({ query, host }) => {
  console.log(`mysql query to ${host}: ${query}`);
});

The data captured can be used to provide context for what an app is doing at a given time. This can be used for things like augmenting tracing data, tracking network and filesystem activity, logging queries, and many other things. It's also a very useful data source for diagnostics tools to provide a clearer picture of exactly what the application is doing at a given point in the data they are presenting.

Contributed by Stephen Belanger #34895.

New child process 'spawn' event

Instances of ChildProcess now emit a new 'spawn' event once the child process has spawned successfully.

If emitted, the 'spawn' event comes before all other events and before any data is received via stdout or stderr.

The 'spawn' event will fire regardless of whether an error occurs within the spawned process.
For example, if bash some-command spawns successfully, the 'spawn' event will fire, though bash may fail to spawn some-command.
This caveat also applies when using { shell: true }.

Contributed by Matthew Francis Brunetti #35369.

Set the local address for DNS resolution

It is now possible to set the local IP address used by a Resolver instance to send its requests.
This allows programs to specify outbound interfaces when used on multi-homed
systems.

The resolver will use the v4 local address when making requests to IPv4 DNS servers, and the v6 local address when making requests to IPv6 DNS servers.

const { Resolver } = require('dns');

const resolver = new Resolver();

resolver.setLocalAddress('10.1.2.3');
// Equivalent to: resolver.setLocalAddress('10.1.2.3', '::0');

Contributed by Josh Dague #34824.

Control V8 coverage at runtime

The v8 module includes two new methods to control the V8 coverage started by the NODE_V8_COVERAGE environment variable.

With v8.takeCoverage(), it is possible to write a coverage report to disk on demand. This can be done multiple times during the lifetime of the process, and the execution counter will be reset on each call.
When the process is about to exit, one last coverage will still be written to disk, unless v8.stopCoverage() was invoked before.

The v8.stopCoverage() method allows to stop the coverage collection, so that V8 can release the execution counters and optimize code.

Contributed by Joyee Cheung #33807.

Analyze Worker's event loop utilization

Worker instances now have a performance property, with a single eventLoopUtilization method that can be used to gather information about the worker's event loop utilization between the 'online' and 'exit' events.

The method works the same way as perf_hooks eventLoopUtilization().

Contributed by Trevor Norris #35664.

Take a V8 heap snapshot just before running out of memory (experimental)

With the new --heapsnapshot-near-heap-limit=max_count experimental command line flag, it is now possible to automatically generate a heap snapshot when the V8 heap usage is approaching the heap limit. count should be a non-negative integer (in which case Node.js will write no more than max_count snapshots to disk).

When generating snapshots, garbage collection may be triggered and bring the heap usage down, therefore multiple snapshots may be written to disk before the Node.js instance finally runs out of memory. These heap snapshots can be compared to determine what objects are being allocated during the time consecutive snapshots are taken.

Generating V8 snapshots takes time and memory (both memory managed by the V8 heap and native memory outside the V8 heap). The bigger the heap is, the more resources it needs. Node.js will adjust the V8 heap to accommondate the additional V8 heap memory overhead, and try its best to avoid using up all the memory avialable to the process.

$ node --max-old-space-size=100 --heapsnapshot-near-heap-limit=3 index.js
Wrote snapshot to Heap.20200430.100036.49580.0.001.heapsnapshot
Wrote snapshot to Heap.20200430.100037.49580.0.002.heapsnapshot
Wrote snapshot to Heap.20200430.100038.49580.0.003.heapsnapshot

<--- Last few GCs --->

[49580:0x110000000]     4826 ms: Mark-sweep 130.6 (147.8) -> 130.5 (147.8) MB, 27.4 / 0.0 ms  (average mu = 0.126, current mu = 0.034) allocation failure scavenge might not succeed
[49580:0x110000000]     4845 ms: Mark-sweep 130.6 (147.8) -> 130.6 (147.8) MB, 18.8 / 0.0 ms  (average mu = 0.088, current mu = 0.031) allocation failure scavenge might not succeed


<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
....

Contributed by Joyee Cheung #33010.

Commits

Semver-minor commits

  • [8169902b40] - (SEMVER-MINOR) child_process: add ChildProcess 'spawn' event (Matthew Francis Brunetti) #35369
  • [548f91af2c] - (SEMVER-MINOR) dns: add setLocalAddress to Resolver (Josh Dague) #34824
  • [f861733bac] - (SEMVER-MINOR) http: report request start and end with diagnostics_channel (Stephen Belanger) #34895
  • [883ed4b7f1] - (SEMVER-MINOR) http2: add updateSettings to both http2 servers (Vincent Boivin) #35383
  • [b38a43d5d9] - (SEMVER-MINOR) lib: create diagnostics_channel module (Stephen Belanger) #34895
  • [a7f37bc725] - (SEMVER-MINOR) src: add --heapsnapshot-near-heap-limit option (Joyee Cheung) #33010
  • [7bfa872013] - (SEMVER-MINOR) v8: implement v8.stopCoverage() (Joyee Cheung) #33807
  • [15ffed5319] - (SEMVER-MINOR) v8: implement v8.takeCoverage() (Joyee Cheung) #33807
  • [221e28311f] - (SEMVER-MINOR) worker: add eventLoopUtilization() (Trevor Norris) #35664

Semver-patch commits

Documentation commits

Other commits

joyeecheung and others added 30 commits November 3, 2020 17:54
This patch adds a --heapsnapshot-near-heap-limit CLI option
that takes heap snapshots when the V8 heap is approaching
the heap size limit. It will try to write the snapshots
to disk before the program crashes due to OOM.

PR-URL: #33010
Refs: #27552
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Original commit message:

    parser: better error message for await+tla

    Bug: v8:9344, v8:6513
    Change-Id: I1854e483515e7da99192367b6764a0ec7c8b41d9
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2411687
    Reviewed-by: Marja Hölttä <[email protected]>
    Commit-Queue: Gus Caplan <[email protected]>
    Cr-Commit-Position: refs/heads/master@{#70099}

Refs: v8/v8@4263f8a

PR-URL: #35650
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
Collect Windows and C++ coverage. Configure codecov so that
comments are more concise and are only left when coverage
varies.

PR-URL: #35670
Fixes: #35696
Refs: #35653
Refs: #35646
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Add an v8.takeCoverage() API that allows the user to write the
coverage started by NODE_V8_COVERAGE to disk on demand.
The coverage can be written multiple times during the lifetime
of the process, each time the execution counter will be reset.
When the process is about to exit, one last coverage will
still be written to disk.

Also refactors the internal profiler connection code
so that we use the inspector response id to identify
the profile response instead of using an ad-hoc flag in C++.

PR-URL: #33807
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: Ben Coe <[email protected]>
Add a v8.stopCoverage() API to stop the coverage collection
started by NODE_V8_COVERAGE - this would be useful in
conjunction with v8.takeCoverage() if the user don't want
to emit the coverage at the process exit but still want
to collect it on demand at some point.

PR-URL: #33807
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: Ben Coe <[email protected]>
PR-URL: #35712
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Daijiro Wachi <[email protected]>
PR-URL: #35710
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
PR-URL: #35750
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Guy Bedford <[email protected]>
PR-URL: #35719
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Cherry-pick 12c8b4d
Original commit message:
    This commit is a suggestion for adding a rule for NULL usages in the
    code base. This will currently report a number of errors which could be
    ignored using // NOLINT (readability/null_usage)

    PR-URL: #17373
    Reviewed-By: Jon Moss <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Timothy Gu <[email protected]>
    Reviewed-By: Colin Ihrig <[email protected]>
    Reviewed-By: Michael Dawson <[email protected]>
    Reviewed-By: Sakthipriyan Vairamani <[email protected]>
    Reviewed-By: Tobias Nießen <[email protected]>

Refs: 12c8b4d

Cherry-pick fc81e80
Original commit message:

    Update cpplint.py to check for inline headers when the corresponding
    header is already included.

    PR-URL: #21521
    Reviewed-By: Ben Noordhuis <[email protected]>
    Reviewed-By: James M Snell <[email protected]>

Refs: fc81e80

Cherry-pick cbc3dd9
Original commit message:

    src, tools: add check for left leaning pointers

    This commit adds a rule to cpplint to check that pointers in the code
    base lean to the left and not right, and also fixes the violations
    reported.

    PR-URL: #21010
    Reviewed-By: Ben Noordhuis <[email protected]>
    Reviewed-By: Anna Henningsen <[email protected]>
    Reviewed-By: Ruben Bridgewater <[email protected]>
    Reviewed-By: James M Snell <[email protected]>

Refs: cbc3dd9

Cherry-pick 9029981
Original commit message:

    tools: fix cpplint.py header rules

    THIS COMMIT SHOULD GO WITH THE NEXT. IT WILL FIND NEW LINT.

    PR-URL: #26306
    Reviewed-By: Gireesh Punathil <[email protected]>

Refs: 9029981

Cherry-pick 0a25ace
Original commit message:

    tools: move cpplint configuration to .cpplint

    PR-URL: #27098
    Reviewed-By: Joyee Cheung <[email protected]>
    Reviewed-By: Daniel Bevenius <[email protected]>

Refs: 0a25ace

Cherry-pick afa9a72
Original commit message:

    tools: refloat update link to google styleguide for cpplint

    This commit updates two old links to Google's C++ styleguide which
    currently result in a 404 when accessed.

    PR-URL: #30876
    Reviewed-By: Michaël Zasso <[email protected]>
    Reviewed-By: David Carlier <[email protected]>
    Reviewed-By: Colin Ihrig <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: Rich Trott <[email protected]>

Refs: afa9a72

Cherry-pick e23bf8f
Original commit message:

    tools,src: refloat forbid usage of v8::Persistent

    `v8::Persistent` comes with the surprising catch that it requires
    manual cleanup. `v8::Global` doesn’t, making it easier to use,
    and additionally provides move semantics. New code should always
    use `v8::Global`.

    PR-URL: #31018
    Reviewed-By: Colin Ihrig <[email protected]>
    Reviewed-By: Richard Lau <[email protected]>
    Reviewed-By: James M Snell <[email protected]>
    Reviewed-By: David Carlier <[email protected]>
    Reviewed-By: Rich Trott <[email protected]>
    Reviewed-By: Gus Caplan <[email protected]>
    Reviewed-By: Joyee Cheung <[email protected]>
    Reviewed-By: Ben Noordhuis <[email protected]>
    Reviewed-By: Stephen Belanger <[email protected]>

PR-URL: #35569
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Daijiro Wachi <[email protected]>
Reviewed-By: Jiawen Geng <[email protected]>

PR-URL: #35719
Reviewed-By: Antoine du Hamel <[email protected]>
Only imports has the experimental status right now but technically all
ESM related features are currently experimental. The list also doesn't
appear to be in any specific order so I've grouped the experimental
features together.

PR-URL: #35741
Reviewed-By: Guy Bedford <[email protected]>
Reviewed-By: Derek Lewis <[email protected]>
Reviewed-By: Daijiro Wachi <[email protected]>
Reviewed-By: Ujjwal Sharma <[email protected]>
PR-URL: #35745
Reviewed-By: Jan Krems <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
Reviewed-By: Ujjwal Sharma <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Fix duplicate logic in stream destroy as the same logic is being shared
across methods and thus can be encapsulated into a single method.

PR-URL: #35727
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: Ricky Zhou <[email protected]>
PR-URL: #35515
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Christian Clauss <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
* Make the 7 instances of breakOnSigint text blocks consistent.
* Use present tense.
* Use kbd element for keystrokes.
* Minor style edits.

PR-URL: #35692
Reviewed-By: Luigi Pinca <[email protected]>
Refs: #35525

PR-URL: #35782
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Signed-off-by: Lee, Bonggi <[email protected]>

PR-URL: #34964
Reviewed-By: Antoine du Hamel <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
PR-URL: #35683
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Ben Coe <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
The debug sprintf doesn't support %.* specifiers

Fixes: #35688

PR-URL: #35694
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Franziska Hinkelmann <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Ricky Zhou <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Fixes: #34818

PR-URL: #34824
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Roman Reiss <[email protected]>
Fixes: #35740

Refs: #31553
Refs: #32953
Refs: #33991
Refs: #34001
Refs: #34055
Refs: #34962

Co-authored-by: Antoine du Hamel <[email protected]>
Co-authored-by: Trivikram Kamat <[email protected]>
Co-authored-by: Rich Trott <[email protected]>

PR-URL: #34002
Reviewed-By: Trivikram Kamat <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Masashi Hirano <[email protected]>
Reviewed-By: Pranshu Srivastava <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Allow the user to update the server settings
after using http2.createSecureServer() or
after using http2.createServer().

Fixes: #35353

PR-URL: #35383
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Denys Otrishko <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Anatoli Papirovski <[email protected]>
Reviewed-By: Yongsheng Zhang <[email protected]>
Reviewed-By: Ricky Zhou <[email protected]>
Reinject the data already received from the TLS
socket when the HTTP2 client is attached with a
delay

Fixes: #35475

PR-URL: #35678
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Alba Mendez <[email protected]>
Reviewed-By: Franziska Hinkelmann <[email protected]>
Reviewed-By: Ricky Zhou <[email protected]>
We reinject when the sockets has already waiting
data, remarked by @mildsunrise

Co-authored-by: Alba Mendez <[email protected]>

PR-URL: #35678
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Alba Mendez <[email protected]>
Reviewed-By: Franziska Hinkelmann <[email protected]>
Reviewed-By: Ricky Zhou <[email protected]>
example code added to the process.setgroups() API
doc property in process.md

PR-URL: #35738
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
PR-URL: #35437
Reviewed-By: Anatoli Papirovski <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Using the variable name in the comment and justifying the type seems
redundant to me and instead it should defined the entity which it is
acting, like in our case it is acting as a flag to control the flow in
streams.

PR-URL: #35728
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
PR-URL: #35764
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Remove note indicating that the APIs can change at any time. This module
migrated from Experimental to Stable 6 years ago (in io.js 1.4.2).

PR-URL: #35774
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: Daijiro Wachi <[email protected]>
@MylesBorins
Copy link
Contributor

@vsemozhetbyt I'm escalating that issue to the npm team and will lyk

@tniessen
Copy link
Member

tniessen commented Nov 4, 2020

It would be great if #35914 could be included to fix #35898.

benjamingr and others added 9 commits November 4, 2020 18:39
PR-URL: #35806
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Antoine du Hamel <[email protected]>
Replace the OpenSSLBuffer utility with ByteSource and
remove OpenSSLBuffer.

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

PR-URL: #35663
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Franziska Hinkelmann <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Adding a new benchmark for testing the performance of loading
available public modules.

PR-URL: #35816
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Avoid using class fields in the benchmark tools since they are
not available in Node 10. This can be reverted when Node 10
reaches EOL.

PR-URL: #35817
Reviewed-By: Daijiro Wachi <[email protected]>
Reviewed-By: Jiawen Geng <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Yongsheng Zhang <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Mary Marchini <[email protected]>
The active worker check compared the time from sending message till
response arrived from worker with the complete time the worker was
running till it responses to the spin request.

If sending back the message is slow for some reason the test fails.

Adapt the test to compare the time seen inside the worker with the
time read from main thread.

PR-URL: #35891
Fixes: #35844
Refs: #35886
Refs: #35664
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
PR-URL: #35896
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Decide the return status of writeOrBuffer before
calling stream.write which can reset state.length

Add unit test for #35926

Refs: #35926

PR-URL: #35941
Fixes: #35926
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Fixes: #35898

PR-URL: #35914
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Franziska Hinkelmann <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Notable changes:

child_process:
  * (SEMVER-MINOR) add ChildProcess 'spawn' event (Matthew Francis Brunetti) #35369
dns:
  * (SEMVER-MINOR) add setLocalAddress to Resolver (Josh Dague) #34824
http:
  * (SEMVER-MINOR) report request start and end with diagnostics_channel (Stephen Belanger) #34895
http2:
  * (SEMVER-MINOR) add updateSettings to both http2 servers (Vincent Boivin) #35383
lib:
  * (SEMVER-MINOR) create diagnostics_channel module (Stephen Belanger) #34895
src:
  * (SEMVER-MINOR) add --heapsnapshot-near-heap-limit option (Joyee Cheung) #33010
v8:
  * (SEMVER-MINOR) implement v8.stopCoverage() (Joyee Cheung) #33807
  * (SEMVER-MINOR) implement v8.takeCoverage() (Joyee Cheung) #33807
worker:
  * (SEMVER-MINOR) add eventLoopUtilization() (Trevor Norris) #35664

PR-URL: #35948
@targos
Copy link
Member Author

targos commented Nov 4, 2020

I made an update based on the new commits on master.

@nodejs/release PTAL

@targos
Copy link
Member Author

targos commented Nov 4, 2020

/cc @ljharb

citgm.is-core-module-v2.0.0
...
 not ok 214 diagnostics_channel is a core module

@nodejs-github-bot
Copy link
Collaborator

@ljharb
Copy link
Member

ljharb commented Nov 4, 2020

Thanks; give me an hour and I’ll have is-core-module updated to recognize that module (thanks @Qard for inspect-js/is-core-module#1)

@targos
Copy link
Member Author

targos commented Nov 4, 2020

#35816 introduced an issue with a benchmark test for builds --without-intl. It is being fixed #35968 but I would like to land the release anyway as the issue does not impact runtime and everything else is ready for promotion.

@targos
Copy link
Member Author

targos commented Nov 4, 2020

@nodejs/release can I have at least one review?

Copy link
Contributor

@MylesBorins MylesBorins left a comment

Choose a reason for hiding this comment

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

LGTM

@ljharb
Copy link
Member

ljharb commented Nov 4, 2020

v2.1.0 of is-core-module has been published; CIGTM tests should pass on rerun.

targos added a commit that referenced this pull request Nov 4, 2020
@targos targos merged commit 2291e07 into v15.x Nov 4, 2020
targos added a commit that referenced this pull request Nov 4, 2020
Notable changes:

child_process:
  * (SEMVER-MINOR) add ChildProcess 'spawn' event (Matthew Francis Brunetti) #35369
dns:
  * (SEMVER-MINOR) add setLocalAddress to Resolver (Josh Dague) #34824
http:
  * (SEMVER-MINOR) report request start and end with diagnostics_channel (Stephen Belanger) #34895
http2:
  * (SEMVER-MINOR) add updateSettings to both http2 servers (Vincent Boivin) #35383
lib:
  * (SEMVER-MINOR) create diagnostics_channel module (Stephen Belanger) #34895
src:
  * (SEMVER-MINOR) add --heapsnapshot-near-heap-limit option (Joyee Cheung) #33010
v8:
  * (SEMVER-MINOR) implement v8.stopCoverage() (Joyee Cheung) #33807
  * (SEMVER-MINOR) implement v8.takeCoverage() (Joyee Cheung) #33807
worker:
  * (SEMVER-MINOR) add eventLoopUtilization() (Trevor Norris) #35664

PR-URL: #35948
@targos targos deleted the v15.1.0-proposal branch November 4, 2020 20:56
targos added a commit to nodejs/nodejs.org that referenced this pull request Nov 4, 2020
targos added a commit to nodejs/nodejs.org that referenced this pull request Nov 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project.
Projects
None yet
Development

Successfully merging this pull request may close these issues.