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

Node.js 8.6.0 Release Proposal #15509

Merged
merged 145 commits into from
Sep 26, 2017
Merged

Node.js 8.6.0 Release Proposal #15509

merged 145 commits into from
Sep 26, 2017

Conversation

jasnell
Copy link
Member

@jasnell jasnell commented Sep 20, 2017

Target Release Date: 2017-09-26

Notable Changes

  • crypto
    • Support for multiple ECDH curves. #15206
  • dgram
    • Added setMulticastInterface() API. #7855
  • n-api
    • The command-line flag is no longer required to use N-API. #14902
  • tls
    • Docs-only deprecation of parseCertString(). #14245
  • New Contributors

Commits

MylesBorins and others added 30 commits September 14, 2017 13:43
This error code originally landed in a semver-major commit and is used
by the ESM implementation. This backport includes the error message
and the documentation for the error.

I did attempt to write a test for this, but it did not seem possible
to catch an exception during import, I was also unable to execute
`node --experimental-modules` properly inside of a child_process.

I'll dig more into getting a test together, but we should backport
this fix in the mean time.

Refs: #14423
Fixes: #15374

PR-URL: #15388
Reviewed-By: Bradley Farias <[email protected]>
Reviewed-By: James M Snell <[email protected]>
The original changelog included incorrect information regarding
the new perf_hooks api.

refs: #15308 (comment)

PR-URL: #15384
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Evan Lucas <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #15235
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Daijiro Wachi <[email protected]>
Adds the `'timeout'` event to the `http.ClientRequest` documentation.

PR-URL: #15443
Fixes: #14856
Reviewed-By: Gibson Fahnestock <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Expand maxSendHeaderBlockLength test to check what happens if
frameError listener isn't available.

PR-URL: #15298
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Refael Ackermann <[email protected]>
Setting writable = false in IncomingMessage.end made some errors
being swallowed in some very popular OSS libraries that we must
support. This commit add some of those use cases to the tests,
so we avoid further regressions.
We should reevaluate how to set writable = false in IncomingMessage
in a way that does not break the ecosystem.

See: #14024
Fixes: #15029
PR-URL: #15404
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Using SSL_CTX_set1_curves_list() (OpenSSL 1.0.2+), this allows to set
colon separated ECDH curve names in SecureContext's ecdhCurve option.
The option can also be set to "auto" to select the curve automatically
from list built in OpenSSL by enabling SSL_CTX_set_ecdh_auto()
(OpenSSL 1.0.2+).

PR-URL: #15206
Ref: #15054
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
PR-URL: #11018
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Lance Ball <[email protected]>
PR-URL: #15111
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
test-require-symlink modifies the fixture directory by adding a symlink.
Copy the fixture to the test tmpdir instead of modifying the fixture
directory.

This also uses a more empirical test for checking for the ability to
make symlinks on Windows.

PR-URL: #15067
Reviewed-By: Refael Ackermann <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #14002
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: James M Snell <[email protected]>
TODO comment from node_crypto is no longer relevant. Unification of
commented code and string_bytes code would bloat the latter. Methods
for hex encoding produce different output in both files (crypto adds
colon and uses uppercase letters.) Common path between those two is
very limited now.

PR-URL: #15104
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #15406
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
PR-URL: #15408
Fixes: #14960
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Vse Mozhet Byt <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Adds support for link-module option to vcbuild.bat.

PR-URL: #15410
Fixes: #15377
Reviewed-By: Refael Ackermann <[email protected]>
PR-URL: #15420
Fixes: #15396
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Refael Ackermann <[email protected]>
Reviewed-By: Evan Lucas <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Fix Http2ServerRequest and Http2ServerResponse to emit close event
if the request is aborted before response.end can be called.

Fixes: #15385
PR-URL: #15415
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Increase server timeout, reduce frequency of calls and
unbind timeout after runs are done in order to avoid
race conditions. Temporarily moved to sequential.

Fixes: #15326
PR-URL: #15338
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Yuta Hiroto <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
fix documentation for methods getHeader, setHeader and removeHeader
for http.ClientRequest class. The documentation said these functions
can be called but they're wasn't describe into the API description yet.

add parameters and general description for each methods.

PR-URL: #15163
Fixes: #15048
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
The benchmarks for `assert` all take a `method` configuration option,
but the allowable values are different across the files. For each
benchmark, provide an arbitrary default if `method` is set to an empty
string. This allows all the `assert` benchmarks to be run with a single
command but only on a single method. This is primarily useful for
testing that the assert benchmark files don't contain egregious errors.
(In other words, it's useful for testing.)

PR-URL: #15174
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: James M Snell <[email protected]>
`deepequal-typedarrays.js` throws if `len` is set to 100 or less due to
a hardcoded index. Calculate the index based on `len` so benchmark can
be run with small `len` values if desired.

PR-URL: #15174
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #15275
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Fixes: #15374
PR-URL: #15389
Reviewed-By: Bradley Farias <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Bartosz Sosnowski <[email protected]>
Reviewed-By: Refael Ackermann <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
PR-URL: #15399
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Update docs and type checking for AsyncResource type

PR-URL: #15103
Reviewed-By: Refael Ackermann <[email protected]>
Reviewed-By: Andreas Madsen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Trevor Norris <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
`test-benchmark-buffer` has been observed to timeout on CI on SmartOS.
Move the test to `sequential` so it is not competing with other tests
for resources.

PR-URL: #15373
Fixes: #15372
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Evan Lucas <[email protected]>
Reviewed-By: Refael Ackermann <[email protected]>
Reviewed-By: Yuta Hiroto <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Remove napi_is_construct_call and introduce napi_get_new_target.

PR-URL: #14698
Reviewed-By: Jason Ginchereau <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Kyle Farnung <[email protected]>
As per discussion in abi-stable-node:
nodejs/abi-stable-node#256,
take a refactor to napi_addon_register_func such that
the result from the register function is assigned to
the module exports property. By making this change,
native module can be agnostic about which type of
module the environment supports.

PR-URL: #15088
Reviewed-By: Gabriel Schulhof <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Hitesh Kanwathirtha <[email protected]>
PR-URL: #15621
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Yuta Hiroto <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Khaidi Chu <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
@jasnell jasnell force-pushed the v8.6.0-proposal branch 2 times, most recently from 48d7f58 to 1732dac Compare September 26, 2017 15:04
@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

@nodejs/collaborators @nodejs/tsc ... please take a final look. This will be going out today.

@Fishrock123
Copy link
Contributor

Fishrock123 commented Sep 26, 2017

Were the N-API changes that were wanted to be made before it was unflagged ever done?

Certainly seems fine otherwise.
There isn't any mention of it, is this supposed to be LTS: Carbon?

@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

There isn't any mention of it, is this supposed to be LTS: Carbon?

No. The LTS release will come later.

@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

Were the N-API changes that were wanted to be made before it was unflagged ever done?

As far as I understand.

@lpinca
Copy link
Member

lpinca commented Sep 26, 2017

@jasnell it would be nice to land #15581 on master and add it to this release if it's not to late, otherwise no problem.

code samples of napi_create_object and napi_property_descriptor were
not updated to latest API.

PR-URL: #15581
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

@lpinca ... done

Copy link
Member

@mcollina mcollina left a comment

Choose a reason for hiding this comment

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

LGTM

Fixes: nodejs-private/security#147
PR-URL: nodejs-private/node-private#94
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Doug Wilson <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
Reviewed-By: Evan Lucas <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

Release build started: https://ci-release.nodejs.org/job/iojs+release/2048/

@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

Unable to proceed with the build due to an issue with the ci-release infrastructure. No response yet from @nodejs/build team members .

* **crypto**
  * Support for multiple ECDH curves. [#15206](#15206)
* **dgram**
  * Added `setMulticastInterface()` API. [#7855](#7855)
  * Custom lookup functions are now supported. [#14560](#14560)
* **n-api**
  * The command-line flag is no longer required to use N-API. [#14902](#14902)
* **tls**
  * Docs-only deprecation of `parseCertString()`. [#14245](#14245)
* **New Contributors**
  * Welcome Sebastiaan Deckers (@sebdeckers) as a new Collaborator! [#15354](#15354)
@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

@gibfahn
Copy link
Member

gibfahn commented Sep 26, 2017

No response yet from @nodejs/build team members .

Did you just ping on IRC? Didn't see anything in nodejs/build or nodejs/node.

@jasnell
Copy link
Member Author

jasnell commented Sep 26, 2017

It's up and going now. I pinged in the node-dev channel, pinged several individually via irc, pinged michael via hangouts and twitter dm... didn't want to spam the entire team tho :-)

@jasnell jasnell merged commit 69a2405 into v8.x Sep 26, 2017
jasnell added a commit to nodejs/nodejs.org that referenced this pull request Sep 26, 2017
jasnell added a commit to nodejs/nodejs.org that referenced this pull request Sep 26, 2017
@jasnell jasnell deleted the v8.6.0-proposal branch September 26, 2017 22:09
MylesBorins pushed a commit that referenced this pull request Sep 29, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.