0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
Commit Graph

1946 Commits

Author SHA1 Message Date
Bartosz Sosnowski
92f86632d5
deps: cherry-pick e7f4e9e from upstream libuv
Original commit message:
    tty, win: get SetWinEventHook pointer at startup

    SetWinEventHook is not available on some Windows versions.

    Fixes: https://github.com/nodejs/node/issues/16603
    Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

PR-URL: https://github.com/nodejs/node/pull/16724
Fixes: https://github.com/https://github.com/nodejs/node/issues/16603
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
2017-11-03 23:29:39 -05:00
Shigeki Ohtsu
fb56046cf0
deps: update openssl asm and asm_obsolete files
Regenerate asm files with Makefile and CC=gcc and ASM=nasm where gcc
version was 5.4.0 and nasm version was 2.11.08.

Also asm files in asm_obsolete dir to support old compiler and
assembler are regenerated without CC and ASM envs.

PR-URL: https://github.com/nodejs/node/pull/16691
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-11-03 12:23:11 -05:00
Shigeki Ohtsu
cd4194a07f
deps: add -no_rand_screen to openssl s_client
In openssl s_client on Windows, RAND_screen() is invoked to initialize
random state but it takes several seconds in each connection.
This added -no_rand_screen to openssl s_client on Windows to skip
RAND_screen() and gets a better performance in the unit test of
test-tls-server-verify.
Do not enable this except to use in the unit test.

Fixes: https://github.com/nodejs/io.js/issues/1461
PR-URL: https://github.com/nodejs/io.js/pull/1836
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2017-11-03 12:23:08 -05:00
Shigeki Ohtsu
4184239953
openssl: fix keypress requirement in apps on win32
Reapply b910613792 .

Fixes: https://github.com/iojs/io.js/issues/589
PR-URL: https://github.com/iojs/io.js/pull/1389
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2017-11-03 12:23:06 -05:00
Shigeki Ohtsu
3ecb3a64d6
deps: fix asm build error of openssl in x86_win32
See
https://mta.openssl.org/pipermail/openssl-dev/2015-February/000651.html

iojs needs to stop using masm and move to nasm or yasm on Win32.

Fixes: https://github.com/iojs/io.js/issues/589
PR-URL: https://github.com/iojs/io.js/pull/1389
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2017-11-03 12:23:05 -05:00
Fedor Indutny
f4c5144a65
deps: fix openssl assembly error on ia32 win32
`x86masm.pl` was mistakenly using .486 instruction set, why `cpuid` (and
perhaps others) are requiring .686 .

Fixes: https://github.com/iojs/io.js/issues/589
PR-URL: https://github.com/iojs/io.js/pull/1389
Reviewed-By: Fedor Indutny <fedor@indutny.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Shigeki Ohtsu <ohtsu@iij.ad.jp>
2017-11-03 12:22:37 -05:00
Shigeki Ohtsu
8aca4f3045
deps: copy all openssl header files to include dir
All symlink files in `deps/openssl/openssl/include/openssl/`
are removed and replaced with real header files to avoid
issues on Windows. Two files of opensslconf.h in crypto and
include dir are replaced to refer config/opensslconf.h.

PR-URL: https://github.com/nodejs/node/pull/16691
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-11-03 12:22:32 -05:00
Shigeki Ohtsu
e7fff9c443
deps: upgrade openssl sources to 1.0.2m
This replaces all sources of openssl-1.0.2m.tar.gz into
deps/openssl/openssl

PR-URL: https://github.com/nodejs/node/pull/16691
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-11-03 12:22:29 -05:00
Myles Borins
b8888f5aa2
deps: manually add 9.x support to npm
refs: https://github.com/npm/npm/pull/18964

PR-URL: https://github.com/nodejs/node/pull/16509
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2017-10-29 21:32:46 -04:00
Myles Borins
9f33a248b3
deps: backport 4ca695819 from npm upstream
Original commit message:

    minizlib@1.0.4

    Fixes Node 9 compatibility.

    Credit: @isaacs

PR-URL: https://github.com/nodejs/node/pull/16509
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2017-10-29 21:32:40 -04:00
Myles Borins
ace4fe566f
deps: update npm to 5.5.1
Closes: https://github.com/nodejs/node/pull/16280

PR-URL: https://github.com/nodejs/node/pull/16509
Fixes: https://github.com/nodejs/node/issues/14161
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2017-10-29 21:32:15 -04:00
Ali Ijaz Sheikh
c087502758 deps: V8: backport b1cd96e from upstream
Original commit message:
  [inspector] added V8InspectorClient::maxAsyncCallStackDepthChanged

  R=dgozman@chromium.org

  Bug: none
  Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng
  Change-Id: I0fa10978266feb3c3907ce1f3386ae7a34a33582
  Reviewed-on: https://chromium-review.googlesource.com/726490
  Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
  Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
  Cr-Commit-Position: refs/heads/master@{#48705}

PR-URL: https://github.com/nodejs/node/pull/16308
Refs: b1cd96ec4b
Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Timothy Gu <timothygu99@gmail.com>
2017-10-29 09:38:30 -07:00
Michaël Zasso
edd78f86ac deps: cherry-pick e0d64dc from upstream V8
Original commit message:

    [heap] Print the number of chunks in unmapper queue in --trace-gc-nvp

    Bug: chromium:771966
    Change-Id: I146b279c4713b7dd716c6d55ca5e6c6e23a3ad7e
    Reviewed-on: https://chromium-review.googlesource.com/704740
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48338}

Refs: e0d64dc67c
Refs: https://github.com/nodejs/help/issues/917#issuecomment-339292642
Refs: https://bugs.chromium.org/p/chromium/issues/detail?id=771966

PR-URL: https://github.com/nodejs/node/pull/16490
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
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>
2017-10-28 13:01:45 +02:00
Michaël Zasso
cf38d2f402 deps: cherry-pick 676c413 from upstream V8
Original commit message:

    [heap] Fix threshold for delayed chunks after 2c7561.

    Bug: chromium:771966
    Change-Id: Iac5ee55c0d31de477f21f091f4be015a1ca8d00c
    Reviewed-on: https://chromium-review.googlesource.com/702382
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48316}

Refs: 676c41321a
Refs: https://github.com/nodejs/help/issues/917#issuecomment-339292642
Refs: https://bugs.chromium.org/p/chromium/issues/detail?id=771966

PR-URL: https://github.com/nodejs/node/pull/16490
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
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>
2017-10-28 13:01:37 +02:00
Michaël Zasso
55a4d66843 deps: cherry-pick 2c75616 from upstream V8
Original commit message:

    [heap] Ensure progress in unmapping memory chunks.

    If sweeping is not making progress and there are many young generation
    GCs happening, then this can lead to accumulation of memory chunks in
    the unmapper queue.

    Bug: chromium:771966
    Change-Id: Ief73ada0d17198a80b668850c6d2e7ea413113e7
    Reviewed-on: https://chromium-review.googlesource.com/702479
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48312}

Refs: 2c75616028
Refs: https://github.com/nodejs/help/issues/917#issuecomment-339292642
Refs: https://bugs.chromium.org/p/chromium/issues/detail?id=771966

PR-URL: https://github.com/nodejs/node/pull/16490
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
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>
2017-10-28 12:57:51 +02:00
Michaël Zasso
664512678d Revert "deps: update V8 to 6.2.414.33"
This reverts commit d4033c1547.

The commit broke cross-compilation and it was missed.

PR-URL: https://github.com/nodejs/node/pull/16513
Refs: https://github.com/nodejs/node/pull/16412
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2017-10-26 14:41:40 +02:00
Michaël Zasso
d4033c1547 deps: update V8 to 6.2.414.33
Refs: https://github.com/v8/v8/compare/6.2.414.32...6.2.414.33
PR-URL: https://github.com/nodejs/node/pull/16412
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
2017-10-26 10:12:41 +02:00
Franziska Hinkelmann
801e61ad5a deps: cherry-pick 37a3a15c3 from V8 upstream
Original commit message:
  [api] Intercept DefineProperty after Descriptor query

  Analog to other interceptors, intercept the DefineProperty
  call only after obtaining the property descriptor.

  This behavior allows us to mirror calls on a sandboxed object
  as it is needed in Node. See for example
  https://github.com/nodejs/node/pull/13265

  Bug:
  Change-Id: I73b8f8908d13473939b37fb6727858d0bee6bda3
  Reviewed-on: https://chromium-review.googlesource.com/725295
  Reviewed-by: Andreas Haas <ahaas@chromium.org>
  Commit-Queue: Franziska Hinkelmann <franzih@chromium.org>
  Cr-Commit-Position: refs/heads/master@{#48683}

PR-URL: https://github.com/nodejs/node/pull/16294
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2017-10-23 11:50:06 +02:00
Tobias Tebbi
c39caa997c deps: backport 0f1dfae from V8 upstream
Original commit message:

    avoid constructor inheritance due to compilation issues

    Constructor inheritance of a templated constructor is causing compilation issues for node.js:

    https: //github.com/nodejs/node/pull/15362#issue-257007421
    Change-Id: I7d099ff5a1a2fd5b19c11112ddef8fe824e509f7
    Reviewed-on: https://chromium-review.googlesource.com/707008
    Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48445}

Refs: 0f1dfae050
PR-URL: https://github.com/nodejs/node/pull/15362
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2017-10-18 17:05:28 -07:00
Ali Ijaz Sheikh
33f5014b37 deps: v8: fix potential segfault in profiler
This change fixes a potential segfault in the sampling heap profiler.
This landed as part of a larger change upstream [1]. This is the minimal
backport that avoids the segfault.

[1]: https://git.io/vdTYL

PR-URL: https://github.com/nodejs/node/pull/15498
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-10-18 17:05:11 -07:00
Anna Henningsen
d7456ab2eb deps: cherry-pick 9b21865822243 from V8 upstream
Original commit message:

    [api] Add optional data pointer to GC callbacks

    This can be useful when there may be multiple callbacks attached by
    code that's not directly tied to a single isolate, e.g. working
    on a per-context basis.

    This also allows rephrasing the global non-isolate APIs in terms
    of this new API, rather than working around it inside `src/heap`.

    TBR=hpayer@chromium.org

    Bug:
    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: I2e490ec40d1a34ea812f25f41ef9741d2116d965
    Reviewed-on: https://chromium-review.googlesource.com/647548
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Reviewed-by: Adam Klein <adamk@chromium.org>
    Commit-Queue: Yang Guo <yangguo@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47923}

PR-URL: https://github.com/nodejs/node/pull/15391
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2017-10-18 17:04:41 -07:00
Michaël Zasso
2780f01392 deps: backport b096c44 from upstream V8
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: https://github.com/nodejs/node/pull/9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: b096c44ffc
PR-URL: https://github.com/nodejs/node/pull/15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
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>
2017-10-18 17:04:24 -07:00
Michaël Zasso
3d1b3df948 deps: update V8 to 6.2.414.32
PR-URL: https://github.com/nodejs/node/pull/15362
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
2017-10-18 17:01:41 -07:00
Michaël Zasso
acb9b8f73c deps: backport b096c44 from upstream V8
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: https://github.com/nodejs/node/pull/9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: b096c44ffc
PR-URL: https://github.com/nodejs/node/pull/15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
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>
2017-10-18 09:17:07 -07:00
Erin Spiceland
be2a5b323e
deps: cherry-pick f4a2b7f3 from V8 upstream.
Original commit message:
    should ignore asyncTask* with null

    In V8Debugger code we don't expect task_id == null, e.g.
    asyncTaskStartedForStepping will trigger debug break on null as task_id.
    Let's filter task_id == null out.

    This issue is originally filed in Node.js:
    https://github.com/nodejs/node/issues/15464

    R=dgozman@chromium.org

    Bug: none
    Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel
    Change-Id: Icc9f96105b3c91ee1b102d545a7817f7ee93394c
    Reviewed-on: https://chromium-review.googlesource.com/695808
    Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
    Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48265}

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

PR-URL: https://github.com/nodejs/node/pull/16053
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2017-10-07 14:02:31 -07:00
cjihrig
fca6c5839a deps: upgrade libuv to 1.15.0
PR-URL: https://github.com/nodejs/node/pull/15745
Refs: https://github.com/nodejs/node/pull/15380
Refs: https://github.com/nodejs/node/issues/15683
Fixes: https://github.com/nodejs/node/issues/15394
Fixes: https://github.com/nodejs/node/issues/15770
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-10-05 12:08:33 -07:00
Anna Henningsen
50e580df21
deps: cherry-pick 0ef4a0c64b6 from c-ares upstream
Original commit message:

  gethostbyaddr: fail with `ECANCELLED` for `ares_cancel()`

  When `ares_cancel()` was invoked, `ares_gethostbyaddr()`
  queries would fail with `ENOTFOUND` instead of `ECANCELLED`.

  It seems appropriate to treat `ares_cancel()` like `ares_destroy()`,
  but I would appreciate review of the correctness of this change.

  Ref: https://github.com/nodejs/node/issues/14814

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

PR-URL: https://github.com/nodejs/node/pull/15023
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2017-10-02 01:16:22 -03:00
Anna Henningsen
9a0631dffe
deps: cherry-pick 18ea996 from c-ares upstream
Original commit message:

    ares_parse_naptr_reply: make buffer length check more accurate

    9478908a490a6bf009ba58d81de8c1d06d50a117 introduced a length check
    for records parsed by `ares_parse_naptr_reply()`. However, that
    function is designed to parse replies which also contain non-NAPTR
    records; for A records, the `rr_len > 7` check will fail as there
    are only 4 bytes of payload.
    In particular, parsing ANY replies for NAPTR records was broken
    by that patch.

    Fix that by moving the check into the case in which it is already
    known that the record is a NAPTR record.

Ref: 18ea99693d
PR-URL: https://github.com/nodejs/node/pull/13883
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-10-02 01:16:12 -03:00
Rod Vagg
34d125f16c
deps: c-ares float, win ipv6 bad fec0 prefix
Was 72c5458aee:

  PR-URL: https://github.com/nodejs/node/pull/5090
  Reviewed-By: Fedor Indutny <fedor@indutny.com>

Reimplemented for c-ares 1.13.0

PR-URL: https://github.com/nodejs/node/pull/15378
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2017-10-02 01:16:12 -03:00
Rod Vagg
af171b7ba2
deps: c-ares float, manual ares_ssize_t definition
c-ares switched to using ares_ssize_t for platform-independent ssize_t,
our GYP usage to include config/<platform>/ares_config.h causes problems
when including gyp as a library in core, i.e. in env.h and cares_wrap.h,
where the defines don't get pulled in properly. This, so far, is the
easiest approach to just making it work nicely--explicitly defining
ares_ssize_t for the different Windows variants and ssize_t for
non-Windows where we don't have a configured type from an ares_config.h.
In all of our non-Windows platforms it is ssize_t anyway so this is
safe.

PR-URL: https://github.com/nodejs/node/pull/15378
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2017-10-02 01:16:11 -03:00
Rod Vagg
13c74706ef
deps: upgrade to c-ares v1.13.0
PR-URL: https://github.com/nodejs/node/pull/15378
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2017-10-02 01:16:11 -03:00
Rod Vagg
a9f125449e
deps: upgrade to c-ares v1.12.0
Updated with manual config for Android
Updated with automatic for sunos, *bsd, darwin, linux, aix

PR-URL: https://github.com/nodejs/node/pull/15378
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2017-10-02 01:16:06 -03:00
Ali Ijaz Sheikh
9910860a93
deps: V8: cherry-pick 163d360 from upstream
Original commit message
  [heap] Fix memory leak in the remembered set.

  Empty slot set buckets can leak in the following scenarios.

  Scenario 1 (large object space):
  1) A large array is allocated in the large object space.
  2) The array is filled with old->new references, which
    allocates new slot set buckets.
  3) The references are overwritten with smis or old space
    pointers, which make the slots set buckets empty.
  4) Garbage collection (scavenge or mark-compact) iterates the
    slots set of the array and pre-frees the empty buckets.
  5) Steps 2-4 repeated many times and leak arbitary many empty buckets.
  The fix to free empty buckets for large object space in mark-compact.

  Scenario 2 (no mark-compact):
  1) A small array is allocated in the old space.
  2) The array is filled with old->new references, which allocates new
    slot set buckets.
  3) The references are overwritten with smis or old space pointers,
    which make the slots set buckets empty.
  4) Scavenge iterates the slots set of the array and pre-frees the
    empty buckets.
  5) Steps 2-4 repeated many times and leak arbitary many empty buckets.
  The fix to free empty buckets for swept pages in scavenger.

  Bug: v8:6800
  TBR: mlippautz@chromium.org
  Change-Id: I48d94870f5acf4f6208858271886911c895a9126
  Reviewed-on: https://chromium-review.googlesource.com/668442
  Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
  Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
  Cr-Commit-Position: refs/heads/master@{#48041}

PR-URL: https://github.com/nodejs/node/pull/15664
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Benedikt Meurer <benedikt.meurer@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-10-01 20:34:59 -03:00
Michaël Zasso
2f2f1cfa87 deps: cherry-pick 0353a1e from upstream V8
Original commit message:

    Avoid disassembling Interpreted Regexp code

    I found that v8 will crash when --print-code is turned on while Regexp
    is interpreted. It crashes when trying to print Relocation info during
    Disassembly. It should probably avoid printing out disassembly when the
    Code object is a bytecode regexp.

    Bug:
    Change-Id: I35b531cb03996a303248652871452266c78fee38
    Reviewed-on: https://chromium-review.googlesource.com/642127
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com>
    Cr-Commit-Position: refs/heads/master@{#47718}

PR-URL: https://github.com/nodejs/node/pull/15599
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-09-28 15:56:11 +02:00
Michaël Zasso
2b196fb14c deps: update V8 to 6.1.534.42
Refs: https://github.com/v8/v8/compare/6.1.534.38...6.1.534.42

PR-URL: https://github.com/nodejs/node/pull/15521
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2017-09-28 13:45:11 +02:00
Ben Noordhuis
3c777bb37f
deps: define BUILDING_NGHTTP2 during nghttp2 build
Define BUILDING_NGHTTP2 in order that NGHTTP2_EXTERN is properly defined
when building the nghttp2 static library.

Move NGHTTP2_STATICLIB out of node.gyp because it is a property of the
nghttp2 static library, not the node executable.

PR-URL: https://github.com/nodejs/node/pull/15487
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-09-24 12:17:03 -03:00
Ali Ijaz Sheikh
322fdc72c3
deps: v8: fix potential segfault in profiler
This change fixes a potential segfault in the sampling heap profiler.
This landed as part of a larger change upstream [1]. This is the minimal
backport that avoids the segfault.

[1]: https://git.io/vdTYL

PR-URL: https://github.com/nodejs/node/pull/15498
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-09-24 11:30:19 -03:00
Myles Borins
9b996f0113 deps: patch V8 to 6.1.534.38
Created using the update-v8 npm module and the command
`update-v8 minor`.

Refs: https://github.com/v8/v8/compare/6.1.534.36...6.1.534.38

PR-URL: https://github.com/nodejs/node/pull/15431
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
2017-09-18 11:41:47 +02:00
Anna Henningsen
8403d6b999 deps: cherry-pick 9b21865822243 from V8 upstream
Original commit message:

    [api] Add optional data pointer to GC callbacks

    This can be useful when there may be multiple callbacks attached by
    code that's not directly tied to a single isolate, e.g. working
    on a per-context basis.

    This also allows rephrasing the global non-isolate APIs in terms
    of this new API, rather than working around it inside `src/heap`.

    TBR=hpayer@chromium.org

    Bug:
    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: I2e490ec40d1a34ea812f25f41ef9741d2116d965
    Reviewed-on: https://chromium-review.googlesource.com/647548
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Reviewed-by: Adam Klein <adamk@chromium.org>
    Commit-Queue: Yang Guo <yangguo@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47923}

PR-URL: https://github.com/nodejs/node/pull/15391
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2017-09-15 12:42:15 -07:00
Anna Henningsen
01a1812e70 deps: cherry-pick b6158eb6befae from V8 upstream
Original commit message:

    [heap] Move gc callbacks from List to std::vector

    Bug: v8:6333
    Change-Id: I4434c6cc59f886f1e37dfd315a3ad5fee28d3f63
    Reviewed-on: https://chromium-review.googlesource.com/634907
    Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
    Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47601}

PR-URL: https://github.com/nodejs/node/pull/15391
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2017-09-15 12:42:07 -07:00
Michaël Zasso
31ce2c1b92
deps: add postmortem metadata for V8 TurboFan
Refs: https://github.com/nodejs/llnode/pull/130
Refs: https://chromium-review.googlesource.com/c/v8/v8/+/650746
PR-URL: https://github.com/nodejs/node/pull/14730
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2017-09-13 16:16:37 +02:00
Ben Noordhuis
9c3182ef83
deps: cherry-pick 1aead19 from upstream V8
Original commit message:

    Add postmortem metadata for thin strings.

    See: https://github.com/nodejs/llnode/issues/117
    Change-Id: Icc2830c8e9096610df33ffdc2f89e74cb1b35662
    Reviewed-on: https://chromium-review.googlesource.com/618986
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Commit-Queue: Ben Noordhuis <info@bnoordhuis.nl>
    Cr-Commit-Position: refs/heads/master@{#47778}

PR-URL: https://github.com/nodejs/node/pull/15184
Ref: https://github.com/nodejs/llnode/issues/117
Ref: https://github.com/nodejs/llnode/pull/121
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-09-13 16:16:35 +02:00
Ben Noordhuis
bd6907bad4
deps: cherry-pick e020aae394 from V8 upstream
Original commit message:

    Work around glibc thread-local storage bug

    glibc before 2.17 has a bug that makes it impossible to execute
    binaries that have single-byte thread-local variables:

        % node --version
        node: error while loading shared libraries: cannot allocate
        memory in static TLS block

    Work around that by making the one instance in the V8 code base
    an int.

    See: https://sourceware.org/bugzilla/show_bug.cgi?id=14898
    See: https://github.com/nodesource/distributions/issues/513
    See: https://github.com/nodejs/build/pull/809
    Change-Id: Iefd8009100cd93e26cf8dc5dc03f2d622b423385
    Reviewed-on: https://chromium-review.googlesource.com/612351
    Commit-Queue: Ben Noordhuis <info@bnoordhuis.nl>
    Reviewed-by: Eric Holk <eholk@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47400}

PR-URL: https://github.com/nodejs/node/pull/14913
Ref: https://github.com/nodejs/build/pull/809
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Nikolai Vavilov <vvnicholas@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2017-09-13 16:16:32 +02:00
Matt Loring
e55b7f3e26
deps: backport f9c4b7a from upstream V8
Original commit message:

  [heap] Move UnmapFreeMemoryTask to CancelableTask
  This mitigates the problem of blocking on the main thread when the
  platform is unable to execute background tasks in a timely manner.

  Bug: v8:6671
  Change-Id: I741d4b7594e8d62721dad32cbfb19551ffacd0c3
  Reviewed-on: https://chromium-review.googlesource.com/599528
  Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
  Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
  Cr-Commit-Position: refs/heads/master@{#47126}

PR-URL: https://github.com/nodejs/node/pull/14001
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2017-09-13 16:16:30 +02:00
Matt Loring
5976e0fac9
deps: backport bca8409 from upstream V8
Original commit message:

  Make CancelableTask ids unique
  They were only limited to 32 bit when using the internal Hashmap. Since
  this has changed alreay some time ago, we can switch to 64 bit ids and
  check that we never overflow.

  Bug:
  Change-Id: Ia6c6d02d6b5e555c6941185a79427dc4aa2a1d62
  Reviewed-on: https://chromium-review.googlesource.com/598229
  Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
  Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
  Cr-Commit-Position: refs/heads/master@{#47085}

PR-URL: https://github.com/nodejs/node/pull/14001
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2017-09-13 16:16:28 +02:00
Matt Loring
e1c37b3692
deps: backport 6e9e2e5 from upstream V8
Original commit message:

  [heap] Move SweeperTask to CancelableTask
  This mitigates the problem of blocking on the main thread when the
  platform is unable to execute background tasks in a timely manner.

  Bug: v8:6655
  Change-Id: Icdaae744ee73146b86b9a28c8035138746721971
  Reviewed-on: https://chromium-review.googlesource.com/595467
  Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
  Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
  Cr-Commit-Position: refs/heads/master@{#47036}

PR-URL: https://github.com/nodejs/node/pull/14001
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2017-09-13 16:16:26 +02:00
Michaël Zasso
e202d85d34
deps: cherry-pick f19b889 from upstream V8
Original commit message:

    [inspector] support for cases when embedder doesn't call contextDestroyed

    Node.js doesn't have good place to call contextDestroyed.
    We need to cleanup everything on our side to allow clients to not call
    contextDestroyed method.

    R=dgozman@chromium.org,eostroukhov@chromium.com

    Bug: none
    Change-Id: Ibe3f01fd18afbfa579e5db66ab6f174d5fad7c82
    Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_chromium_rel_ng
    Reviewed-on: https://chromium-review.googlesource.com/575519
    Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
    Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
    Cr-Original-Commit-Position: refs/heads/master@{#46849}
    Reviewed-on: https://chromium-review.googlesource.com/596549
    Cr-Commit-Position: refs/heads/master@{#47060}

PR-URL: https://github.com/nodejs/node/pull/14730
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2017-09-13 16:16:22 +02:00
Bartosz Sosnowski
694ef89bcf
deps: fix addons compilation with VS2013
VS2013 does not support defaulting move constructor and assignment
operator. This adds explicit definitions of those methods for two
classes.
This fix is required because we still support building addons with
VS2013 and the incompatibility is in v8.h.

Fixes: https://github.com/nodejs/node-v8/issues/4

PR-URL: https://github.com/nodejs/node/pull/13263
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
2017-09-13 16:16:20 +02:00
Michael Dawson
c6e165b35e
deps: limit regress/regress-crbug-514081 v8 test
regress/regress-crbug-514081 allocates a 2G block of memory
and if there  are multiple variants running at the
same time this can lead to crashes, OOM kills or
the OS failing to allocate memory.  This patch
limits us to running a single variant of the test

Fixes: https://github.com/nodejs/node/issues/6340
PR-URL: https://github.com/nodejs/node/pull/6678
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Fedor Indutny <fedor@indutny.com>
2017-09-13 16:16:18 +02:00
Michaël Zasso
d82e1075db
deps: update V8 to 6.1.534.36
PR-URL: https://github.com/nodejs/node/pull/14730
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2017-09-13 16:15:18 +02:00