Commit Graph

23948 Commits

Author SHA1 Message Date
James M Snell
0ad8c7319d http2: add RFC 8441 extended connect protocol support
PR-URL: https://github.com/nodejs/node/pull/23284
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-10-08 08:41:35 -07:00
James M Snell
8290015d0a deps: update nghttp2 to 1.34.0
Key new feature: RFC 8441 `:protocol` support

PR-URL: https://github.com/nodejs/node/pull/23284
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-10-08 08:41:18 -07:00
Yang Guo
314c1fa583 deps: V8: cherry-pick 64-bit hash seed commits
This serves as mitigation for the so-called HashWick vulnerability.

Original commit messages:

  commit 3833fef57368c53c6170559ffa524c8c69f16ee5
    Author: Yang Guo <yangguo@chromium.org>
    Date: Thu Sep 20 11:43:13 2018

    Refactor integer hashing function names

    We now clearly differentiate between:
    - unseeded hash for 32-bit integers
    - unseeded hash for 64-bit integers
    - seeded hash for 32-bit integers
    - seeded hash for strings

    R=bmeurer@chromium.org

    Bug: chromium:680662
    Change-Id: I7459958c4158ee3501c962943dff8f33258bb5ce
    Reviewed-on: https://chromium-review.googlesource.com/1235973
    Commit-Queue: Yang Guo <yangguo@chromium.org>
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#56068}

  commit 95a979e02d7154e45b293261a6998c99d71fc238
    Author: Yang Guo <yangguo@chromium.org>
    Date: Thu Sep 20 14:34:48 2018

    Call into C++ to compute seeded integer hash

    R=bmeurer@chromium.org

    Bug: chromium:680662
    Change-Id: I8dace89d576dfcc5833fd539ce698a9ade1cb5a0
    Reviewed-on: https://chromium-review.googlesource.com/1235928
    Commit-Queue: Yang Guo <yangguo@chromium.org>
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#56091}

  commit 2c2af0022d5feb9e525a00a76cb15db9f3e38dba
    Author: Yang Guo <yangguo@chromium.org>
    Date: Thu Sep 27 16:37:57 2018

    Use 64-bit for seeded integer hashes

    R=petermarshall@chromium.org

    Bug: chromium:680662
    Change-Id: If48d1043dbe1e1bb695ec890c23e103a6cacf2d4
    Reviewed-on: https://chromium-review.googlesource.com/1244220
    Commit-Queue: Yang Guo <yangguo@chromium.org>
    Reviewed-by: Peter Marshall <petermarshall@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#56271}

Refs: https://github.com/nodejs/node/issues/23259

PR-URL: https://github.com/nodejs/node/pull/23264
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
2018-10-08 08:49:29 +02:00
Beni von Cheni
f5ab9d1765 tls: update test & docs for ArrayBuffer/DataView
In tls module, accept ArrayBuffer/DataView in place of isUint8Array in
the source code & related test code in "test-tls-basic-validations.js",
per the "tls" item in the checklist of the comment in #1826.

PR-URL: https://github.com/nodejs/node/pull/23210
Refs: https://github.com/nodejs/node/issues/1826
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
2018-10-08 08:29:33 +02:00
Tobias Nießen
1c75ec2c7e crypto: remove node::crypto::CheckResult
PR-URL: https://github.com/nodejs/node/pull/23225
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
2018-10-08 06:20:35 +02:00
Daniel Bevenius
8d218a9bb9 crypto: replace goto SSL_CTX_use_certificate_chain
This commit removes the goto statements in SSL_CTX_use_certificate_chain
by using a unique_ptr.

PR-URL: https://github.com/nodejs/node/pull/23113
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-08 05:48:20 +02:00
Tom White
13e6e01ce5 test: add module require tests for certain package.json errors
test for unusual error cases: verify that module require()
falls back to index if package.json names a missing file and
throws an error if package.json is unparseable.

PR-URL: https://github.com/nodejs/node/pull/23285
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-10-07 17:14:43 -07:00
Rich Trott
1d96d7da73 benchmark: increase lint compliance
Remove two eslint-disable comments by replacing string concatenation
with template literals. These changes are in catch blocks that are not
part of the actual code being benchmarked.

PR-URL: https://github.com/nodejs/node/pull/23305
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-10-07 16:58:45 -07:00
Rich Trott
b155358235 doc: remove 72-hour mentions in pull-requests.md
vsemozhetbyt noted that there were two mentions of the now-defunct
72-hour-rule in pull-requests.md. This change updates the text to
reflect current wait-time rules.

PR-URL: https://github.com/nodejs/node/pull/23309
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-10-07 16:44:43 -07:00
Anna Henningsen
a9bb653ecc zlib: use common owner symbol to access JS wrapper
Use the same symbol that other `AsyncWrap` instances also use
for accessing the JS wrapper.

PR-URL: https://github.com/nodejs/node/pull/23189
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
2018-10-07 15:28:36 -07:00
Aleksey Chemakin
4f0971d366 doc: fix minor typo in n-api.md
Correct parameter name for `napi_is_error` description.

PR-URL: https://github.com/nodejs/node/pull/23310
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2018-10-07 23:11:04 +03:00
Gabriel Schulhof
fd6a7d4db1 doc: remove ABI guide
Move it to the nodejs.org repo.

PR-URL: https://github.com/nodejs/node/pull/23303
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
2018-10-07 12:03:38 -04:00
Vse Mozhet Byt
1a18e3572e doc: update author-ready label terms
PR-URL: https://github.com/nodejs/node/pull/23249
Refs: https://github.com/nodejs/node/pull/22255
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
2018-10-07 11:58:08 +03:00
Rich Trott
061e09891c doc: update onboarding task
Use fast-tracking on PRs where new Collaborators are adding themselves
to the README.

PR-URL: https://github.com/nodejs/node/pull/23300
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-10-06 21:29:27 -07:00
Rich Trott
f423579498 doc: use backticks around file names in README.md
Use backticks around `SHASUM256.txt` etc. in README.md.

PR-URL: https://github.com/nodejs/node/pull/23299
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2018-10-06 21:28:29 -07:00
Rich Trott
e5170d483b test: remove flaky designation for test
Unreliability for test-trace-events-fs-sync is believed to have been
fixed. Remove flaky designation.

Ref: https://github.com/nodejs/node/pull/22812
Ref: https://github.com/nodejs/node/issues/21038#issuecomment-421199960

PR-URL: https://github.com/nodejs/node/pull/22856
Refs: https://github.com/nodejs/node/pull/22812
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Yuta Hiroto <hello@hiroppy.me>
Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-10-06 20:52:48 -07:00
Rich Trott
bd162b6dc0 doc: improve API Documentation text in README
Clarify and implify the API Documentation download information in the
README. This also fixes a spelling error.

PR-URL: https://github.com/nodejs/node/pull/23268
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2018-10-06 15:43:22 -07:00
Gus Caplan
4c37df779c vm: add dynamic import support
PR-URL: https://github.com/nodejs/node/pull/22381
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Guy Bedford <guybedford@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
2018-10-06 17:33:25 -05:00
Rich Trott
124a8e2123 doc: shorten pull request wait time to 48 hours
Currently, we have a 72 rule for how many hours a pull request should
be left open at a minimum. Reduce that time to 48 hours.

PR-URL: https://github.com/nodejs/node/pull/23082
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
2018-10-06 15:32:51 -07:00
Rich Trott
004f8b037e doc: improve instructions for verifying binaries
Simplify and clarify the text in README.md for verifying binaries.

PR-URL: https://github.com/nodejs/node/pull/23248
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-06 15:26:15 -07:00
Rich Trott
1328dfa06b doc: shorten intro of README.md
There are many things I might want to know about if I'm reading the
introduction of the README file for Node.js: Where to get help, what the
latest release is, how to compile from source, where to report bugs, how
to contribute...

One thing I cannot imagine wondering about is, "I wonder if there is a
foundation that supports Node.js." Move that sentence to the end of the
paragraph as it is designed to serve the project and not the end user.

Bonus: This removes a usage of passive voice.

The Linux kernel README does not mention the Linux Foundation.
https://github.com/torvalds/linux/blob/master/README

The jQuery README does not mention the JS Foundation.
https://github.com/jquery/jquery/blob/master/README.md
(It does mention the no-longer-extant jQuery Foundation but only because
the Foundation itself apparently had coding standards.)

The Python README only mentions the Python Software Foundation as the
copyright owner.

The Apache httpd README does mention the Apache Software Foundation
although it does not link to it and it is mentioned in passing rather
than being the topic of a declarative sentence.

PR-URL: https://github.com/nodejs/node/pull/23073
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-10-06 14:32:49 -07:00
Ali Ijaz Sheikh
68b3e46fbf trace_events: destroy platform before tracing
For safer shutdown, we should destroy the platform – and background
threads - before the tracing infrastructure is destroyed. This change
fixes the relative order of NodePlatform disposition and the tracing
agent shutting down. This matches the nesting order for startup.

Make the tracing agent own the tracing controller instead of platform
to match the above.

Fixes: https://github.com/nodejs/node/issues/22865

PR-URL: https://github.com/nodejs/node/pull/22938
Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2018-10-06 06:05:17 -07:00
Duarte David
635161ae98 test: swap arguments in strictEqual()
Swap arguments in strictEqual() for parallel/test-buffer-copy.

PR-URL: https://github.com/nodejs/node/pull/23204
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-06 14:39:37 +02:00
Matheus Marchini
247ea557fc deps: backport 958b761 from upstream V8
Original commit message:

    [postmortem] add postmortem metadata for symbols

    As discussed in https://github.com/nodejs/llnode/issues/156, we need
    postmortem metadata for Symbols to properly print Symbol property
    names in postmortem debugging tools. Patch suggested by Ben
    Noordhuis
   (https://github.com/nodejs/llnode/issues/156#issuecomment-350467852).

    R=bmeurer@google.com, yangguo@google.com

    Change-Id: Ied6d3c079e8b23a9c796bc632c37785ed7dbc118
    Reviewed-on: https://chromium-review.googlesource.com/1205052
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Yang Guo <yangguo@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#55632}

Refs: https://github.com/v8/v8/commit/958b761d3392495c3bf635e97fb9bd0e45

PR-URL: https://github.com/nodejs/node/pull/22914
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-06 09:15:40 -03:00
Gabriel Schulhof
65366addb2 doc: add guide about abi stability
Re: https://github.com/nodejs/abi-stable-node/issues/332#issuecomment-418379903
PR-URL: https://github.com/nodejs/node/pull/23229
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
2018-10-06 04:55:09 -04:00
Ali Ijaz Sheikh
e273abc01b src: ready background workers before bootstrap
Make sure background workers are ready before proceeding with the
bootstrap or post-bootstrap execution of any code that may trigger
`process.exit()`.

Fixes: https://github.com/nodejs/node/issues/23065

PR-URL: https://github.com/nodejs/node/pull/23233
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
2018-10-05 21:31:09 -07:00
Anna Henningsen
6e43dfb6e3 doc: improve stream.Writable ctor encoding option docs
- Document `defaultEncoding`. This was previously undocumented.
- Clarify `decodeStrings`. In particular, the previous description was
  talking about decoding, which matches the unfortunate option name,
  but what actually happens is usually refererred to as encoding
  a string into a binary form.

PR-URL: https://github.com/nodejs/node/pull/23246
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
2018-10-05 17:18:06 -07:00
Anna Henningsen
48d1335bbc deps: provide more V8 backwards compatibility
Add back a number deprecated APIs, using shims that
should work well enough at least for the duration of Node 11
and do not come with significant maintenance overhead.

Refs: https://github.com/nodejs/node/issues/23122

PR-URL: https://github.com/nodejs/node/pull/23158
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2018-10-05 16:51:55 -07:00
Anna Henningsen
01ade5856a deps: revert 9136dd8088a9 from upstream V8
Reverting this enables us to provide slower, but longer-lasting
replacements for the deprecated APIs.

Original commit message:

    Put back deleted V8_DEPRECATE_SOON methods

    This partially reverts
    https://chromium-review.googlesource.com/c/v8/v8/+/1177861,
    which deleted many V8_DEPRECATE_SOON methods rather than moving them to
    V8_DEPRECATED first. This puts them back and marks them V8_DEPRECATED.

    Note V8_DEPRECATED that were deleted in the same CL stay deleted.

    NOTRY=true
    NOPRESUBMIT=true
    NOTREECHECKS=true

    Bug: v8:7786, v8:8240
    Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
    Change-Id: I00330036d957f98dab403465b25e30d8382aac22
    Reviewed-on: https://chromium-review.googlesource.com/1251422
    Commit-Queue: Dan Elphick <delphick@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Reviewed-by: Michael Hablich <hablich@chromium.org>
    Cr-Commit-Position: refs/branch-heads/7.0@{#49}
    Cr-Branched-From: 6e2adae6f7f8e891cfd01f3280482b20590427a6-refs/heads/7.0.276@{#1}
    Cr-Branched-From: bc08a8624cbbea7a2d30071472bc73ad9544eadf-refs/heads/master@{#55424}

Refs: 9136dd8088
Refs: https://github.com/nodejs/node/issues/23122

PR-URL: https://github.com/nodejs/node/pull/23158
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2018-10-05 16:51:50 -07:00
Michaël Zasso
3f77720b63 deps: patch V8 to 7.0.276.24
Refs: https://github.com/v8/v8/compare/7.0.276.22...7.0.276.24

PR-URL: https://github.com/nodejs/node/pull/23158
Refs: https://github.com/nodejs/node/issues/23122
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2018-10-05 16:51:45 -07:00
Umang Raghuvanshi
2ba19ff2b8 tty: document WriteStream.cursorTo() and others
Adds documentation for the following `WriteStream` instance methods:

- `WriteStream.clearLine()`
- `WriteStream.clearScreenDown()`
- `WriteStream.cursorTo()`
- `WriteStream.getWindowSize()`
- `WriteStream.moveCursor()`

PR-URL: https://github.com/nodejs/node/pull/22893
Fixes: https://github.com/nodejs/node/issues/9853
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
2018-10-06 01:36:03 +03:00
Ouyang Yadong
054481633a doc: fix code snippets in tls.md
Replace `server.close()` which don't exist in code snippets.

PR-URL: https://github.com/nodejs/node/pull/23239
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
2018-10-06 01:17:15 +03:00
Julien Gilli
a8526cb5a4 test: remove obsolete domain test
test-microtask-queue-run-immediate-domain.js tests that the behavior of
another test, test-microtask-queue-run-immediate.js, is still
consistent when the core domain module is loaded.

This was needed because before the changes in
https://github.com/nodejs/node/pull/1622 were merged, the core domain
module would replace the function that would call nextTick callbacks
with a different implementation.

This is no longer the case, and as such that test is no longer needed.

R-URL: https://github.com/nodejs/node/pull/23252
Refs: https://github.com/nodejs/node/pull/16222
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-05 12:35:58 -07:00
Rich Trott
2cf6a94839 tools: apply linting to first commit in PRs
Use Travis-CI to check the formatting of the first commit in a pull
request. This will hopefully reduce formatting errors and nits about
them in pull requests.

PR-URL: https://github.com/nodejs/node/pull/22452
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Steven R Loomis <srloomis@us.ibm.com>
2018-10-05 10:25:50 -07:00
Joyee Cheung
e1d4b0a646 src: remove accidentally added src/txt
PR-URL: https://github.com/nodejs/node/pull/23273
Refs: https://github.com/nodejs/node/pull/23072
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Gus Caplan <me@gus.host>
2018-10-05 15:48:17 +02:00
Daniel Bevenius
ff3fd3bf80 build: toggle lint-cpp using verbose (V) variable
This commit the verbosity of cpplint to be toggled by using the V
variable. The default setting is verbose but by passing an empty string
cpplint will be quiet.

PR-URL: https://github.com/nodejs/node/pull/23217
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-10-05 07:18:30 +02:00
Daniel Bevenius
c1cad2f9df build: make lint-addon-docs quiet
This commit adds the --quiet flag to cpplint for the lint-addon-docs
target to be consistent with the lint-cpp target.

PR-URL: https://github.com/nodejs/node/pull/23217
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
2018-10-05 07:18:18 +02:00
Gus Caplan
fce86849fc tools: remove useless assignment from configure.py
PR-URL: https://github.com/nodejs/node/pull/23200
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-10-05 05:59:44 +02:00
Daniel Bevenius
10436603dc inspector: add virtual destructor to WorkerDelegate
Currently the WorkerDelegate class has a virtual function
but no virtual destructor which means that if delete is called on a
WorkerDelegate pointer to a derived instance, the derived destructor
will not get called.

The following warning is currently being printed when
compiling:

warning: delete called on 'node::inspector::WorkerDelegate' that is
abstract but has non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete __ptr;
    ^

This commit adds a virtual destructor.

PR-URL: https://github.com/nodejs/node/pull/23215
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-05 05:11:22 +02:00
Daniel Bevenius
a8c145807e crypto: add virtual dtor to KeyPairGenerationConfig
Currently the KeyPairGenerationConfigs class has a virtual function
but no virtual destructor which means that if delete is called on a
KeyPairGenerationConfig pointer to a derived instance, the derived
destructor will not get called.

The following warning is currently being printed when
compiling:

warning: delete called on 'node::crypto::KeyPairGenerationConfig' that
is abstract but has non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete __ptr;

This commit adds a virtual destructor.

PR-URL: https://github.com/nodejs/node/pull/23215
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-05 05:11:18 +02:00
Daniel Bevenius
e5c7f10da7 src: add virtual desctructor to Options class
Currently the Options class has a virtual function but no virtual
destructor which means that if delete is called on a Options pointer
to a derived instance, the derived destructor will not get called.

The following warning is currently being printed when
compiling:

warning: delete called on non-final 'node::PerIsolateOptions' that has
virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
    delete __ptr;

This commit adds a virtual destructor.

PR-URL: https://github.com/nodejs/node/pull/23215
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-05 05:11:08 +02:00
Rich Trott
2f117e1cd8 doc: leave pull requests open for 72 hours
Currently, we have a 48/72 rule for how many hours a pull request should
be left open at a minimum. Unfortunately, whether a pull request should
be left open for 48 or 72 hours is often unclear. The 72 hours is
required if it is a weekend. If I open a pull request on a Friday
morning, does it need to stay open 48 hours or 72 or something in
between? Does it matter if I'm in one time zone or another?

The 48/72 rule predates our fast-tracking process. Given the ability to
fast-track trivial pull requests, there should be little disadvantage to
leaving significant changes open for 72 hours instead of 48 hours, and
arguably considerable advantage in terms of allowing people sufficient
time to review things.

So to simplify, standardize on 72 hours. Weekend or not, 72 hours. Easy.

PR-URL: https://github.com/nodejs/node/pull/22275
Reviewed-By: John-David Dalton <john.david.dalton@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Brian White <mscdex@mscdex.net>
Reviewed-By: Jon Moss <me@jonathanmoss.me>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Coe <bencoe@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: João Reis <reis@janeasystems.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
2018-10-04 16:32:39 -07:00
Ouyang Yadong
26af728994 dns: deprecate passing falsy hostname to dns.lookup
We can `dns.lookup` a falsy `hostname` like `dns.lookup(false)`
for the reason of backwards compatibility long before(see #13119
for detail). This behavior is undocumented and seems useless in
real world apps.

We could also make invalid `hostname` throw in the future and the
change might be semver-major.

Fixes: https://github.com/nodejs/node/issues/13119

PR-URL: https://github.com/nodejs/node/pull/23173
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-10-04 14:51:02 -07:00
Denys Otrishko
6f7fd7f9bc build: add pgo specific variables to common.gypi
Refs: https://github.com/nodejs/node/pull/22772#issuecomment-419930590

PR-URL: https://github.com/nodejs/node/pull/23102
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-04 14:45:58 -07:00
Refael Ackermann
5af1ac6b01 build: cleanup in .gitignore
* explicitly unignore files that we track.

The following are not created anymore (only as subdirs of v8/gypfiles)
/deps/v8/src/debug/obj
deps/v8/src/Debug/
deps/v8/src/Release/
deps/v8/src/inspector/Debug/
deps/v8/src/inspector/Release/

PR-URL: https://github.com/nodejs/node/pull/23180
Refs: https://github.com/nodejs/node/pull/23156
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2018-10-04 17:31:45 -04:00
Steven R. Loomis
a4ffa0cb94 tools: fix ICU shrinker and docs
- tools: path to ICU datafile moved
- docs: configure is now configure.py

Fixes: https://github.com/nodejs/node/issues/23245

PR-URL: https://github.com/nodejs/node/pull/23266
Reviewed-By: Refael Ackermann <refack@gmail.com>
2018-10-04 14:27:07 -07:00
Anna Henningsen
3d2124505e src: remove long-deprecated APIs without Isolate* arg
These have been deprecated since 75adde07f9
(February 2014) and most likely do not see much ecosystem usage
to begin with.

PR-URL: https://github.com/nodejs/node/pull/23178
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-04 09:26:14 -07:00
Anna Henningsen
8bf48bf2cf test: add stdin writable regression test
Make sure that `process.stdin.write()`, and in particular
ending the stream, works.

PR-URL: https://github.com/nodejs/node/pull/23053
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-04 09:20:25 -07:00
Anna Henningsen
cbc3ef64ce process: allow reading from stdout/stderr sockets
Allow reading from stdio streams that are conventionally
associated with process output, since this is only convention.

This involves disabling the oddness around closing stdio
streams. Its purpose is to prevent the file descriptors
0 through 2 from being closed, since doing so can lead
to information leaks when new file descriptors are being
opened; instead, not doing anything seems like a more
reasonable choice.

Fixes: https://github.com/nodejs/node/issues/21203

PR-URL: https://github.com/nodejs/node/pull/23053
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-04 09:20:24 -07:00
Anna Henningsen
d0fc382c4b tools: allow input for TTY tests
Since faking TTY input is not otherwise fake-able, we need
support in the test runner for it.

PR-URL: https://github.com/nodejs/node/pull/23053
Reviewed-By: James M Snell <jasnell@gmail.com>
2018-10-04 09:20:22 -07:00