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

[v8.x backport] deps: backport 804a693 from upstream V8 #22177

Closed
wants to merge 26 commits into from

Conversation

mmarchini
Copy link
Contributor

Original commit message:

[postmortem] add JS_ERROR_TYPE and context embedder index

  * JS_ERROR_TYPE is required for postmortem tools to inspect
    JSError objects (see https://github.com/nodejs/llnode/pull/215
    for a usage example)
  * The context embedder index is required for postmortem tools to
    access embedder data stored in the context (see
    https://github.com/nodejs/llnode/pull/204 for a usage example)

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

Change-Id: Ib7c7eb44f6ad327fc71a1d45f510c49377db7a25
Reviewed-on: https://chromium-review.googlesource.com/1138493
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#54475}

Refs: v8/v8@804a693

PR-URL: #21855
Reviewed-By: Michaël Zasso targos@protonmail.com
Reviewed-By: Gus Caplan me@gus.host
Reviewed-By: James M Snell jasnell@gmail.com
Reviewed-By: Richard Lau riclau@uk.ibm.com
Reviewed-By: Colin Ihrig cjihrig@gmail.com
Reviewed-By: Yang Guo yangguo@chromium.org

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines

TimothyGu and others added 26 commits August 7, 2018 11:46
Original commit message:
  Fix default Intl language tag handling

  With certain ICU data bundles (such as the Node.js "small-icu"),
  %GetDefaultICULocale() may return a more specific language tag (e.g.
  "en-US") than what's available (e.g. "en"). In those cases, consider the
  more specific language tag supported.

  This CL also resolves the following Node.js issue:
     nodejs#15223

  Bug: v8:7024
  Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng
  Change-Id: Ifda0776b3418734d5caa8af4e50c17cda95add73
  Reviewed-on: https://chromium-review.googlesource.com/668350
  Commit-Queue: Daniel Ehrenberg <littledan@chromium.org>
  Reviewed-by: Daniel Ehrenberg <littledan@chromium.org>
  Cr-Commit-Position: refs/heads/master@{nodejs#52716}

PR-URL: nodejs#20826
Fixes: nodejs#15223
Refs: v8/v8@6989b3f
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Removes the prompt to report a bug when trying to launch the
debugger using a port that is already in use.

Changeset generated via:

```
rm -rf deps/node-inspect node-inspect-* && \
  curl -sSL "https://github.com/nodejs/node-inspect/archive/v1.11.5.tar.gz" | \
  tar -xzvf - && mv node-inspect-* deps/node-inspect
```

PR-URL: nodejs#21055
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Previously, the err passed to the callback of fs.open() was not checked.

PR-URL: nodejs#18681
Reviewed-By: Anatoli Papirovski <apapirovski@mac.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: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Add useful info about process.domain to error meesages in the
uncaughtException event listener and the beforeExit event listener.

Refactor code such as using template literals, and also make sure
uncaughtException listner is detached after firing once to avoid
endless loop in case of exception throw in the beforeExit event
listner.

PR-URL: nodejs#18541
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Currently when building --without-ssl a 'ERR_NO_CRYPTO' error is
reported.

This is not currently being picked up by the crypto-check lint rule as
it does not actually require any crypto modules directly, but instead
this is done by common/benchmark.

PR-URL: nodejs#18724
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit adds a regression test for
de848ac, which broke
multiline input in the REPL.

PR-URL: nodejs#18718
Refs: nodejs#17828
Refs: nodejs#18715
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Update the dead link to <keygen> documentation.
Add a link to mozilla developper documentation because
W3C deleted the reference to this element.

Add a note to inform <keygen> element is deprecated since HTML 5.2.

PR-URL: nodejs#18721
Fixes: nodejs#18662
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
When building the node with `--shared` option, the major output is the
shared library. However, we still build a node executable which links
to the shared lib. It's for testing purpose. When testing with the
executable, some test cases move/copy the executable, change the
relative path to the shared library and fail. Using lib path env would
solve the issue. However, in macOS, need to change the install name for
the shared library and use rpath in the executable. In AIX, `-brtl`
linker option rebinds the symbols in the executable and addon modules
could use them.

Signed-off-by: Yihong Wang <yh.wang@ibm.com>

PR-URL: nodejs#18626
Refs: nodejs#18535
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
This adds a implicit common.mustCall to the callback provided to
the countdown.

PR-URL: nodejs#18506
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
PR-URL: nodejs#18822
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
PR-URL: nodejs#18257
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
The `millions` argument was missing.

PR-URL: nodejs#18787
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
* exit naturally, don't use process.exit()
* ensure callbacks are actually called

PR-URL: nodejs#18792
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Matheus Marchini <matheus@sthima.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
PR-URL: nodejs#18784
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
PR-URL: nodejs#18798
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matheus Marchini <matheus@sthima.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
This enables the eslint dot-notation rule for all code instead of
only in /lib.

PR-URL: nodejs#18749
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matheus Marchini <matheus@sthima.com>
Refs: nodejs#18769

PR-URL: nodejs#18776
Refs: nodejs#18769
Reviewed-By: Matheus Marchini <matheus@sthima.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
This enables the `no-multiple-empty-lines` eslint rule for the docs.

PR-URL: nodejs#18747
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matheus Marchini <matheus@sthima.com>
PR-URL: nodejs#17600
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@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: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Backport-PR-URL: nodejs#19347
PR-URL: nodejs#18644
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Rename the `parentId` property on the PromiseWrap object to a
`isChainedPromise` property. The former wasn't quite useful as it was
always defined to be the same value as the trigger id available in the
init hook. Instead rename the property to be closer to the information
it communicates: whether the promise is a chained promise or not.

PR-URL: nodejs#18633
Fixes: nodejs#18470
Reviewed-By: Andreas Madsen <amwebdk@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
PR-URL: nodejs#18801
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Matheus Marchini <matheus@sthima.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
PR-URL: nodejs#19585
Refs: nodejs#18801
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Exposes SSL_get_finished and SSL_get_peer_finished routines in OpenSSL
as tlsSocket.getFinished and tlsSocket.getPeerFinished, respectively.

PR-URL: nodejs#19102
Fixes: nodejs#19055
Refs: XRPLF/rippled#2413
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
... in addition to the event names they currently use.

Currently, various internal streams have different events that
indicate that the underlying resource has successfully been
established. This commit adds ready event for fs and net
sockets to standardize on emitting ready for all of these streams.

PR-URL: nodejs#19408
Fixes: nodejs#19304
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Original commit message:

    [postmortem] add JS_ERROR_TYPE and context embedder index

      * JS_ERROR_TYPE is required for postmortem tools to inspect
        JSError objects (see nodejs/llnode#215
        for a usage example)
      * The context embedder index is required for postmortem tools to
        access embedder data stored in the context (see
        nodejs/llnode#204 for a usage example)

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

    Change-Id: Ib7c7eb44f6ad327fc71a1d45f510c49377db7a25
    Reviewed-on: https://chromium-review.googlesource.com/1138493
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{nodejs#54475}

Refs: v8/v8@804a693

PR-URL: nodejs#21855
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
@nodejs-github-bot nodejs-github-bot added post-mortem Issues and PRs related to the post-mortem diagnostics of Node.js. v8 engine Issues and PRs related to the V8 dependency. v8.x labels Aug 7, 2018
@mmarchini
Copy link
Contributor Author

@MylesBorins
Copy link
Contributor

new failure on V8 Ci

--> https://ci.nodejs.org/job/node-test-commit-v8-linux/1581/

if there are windows failures you can ignore them (this is why I recently rebased the branch)

MylesBorins pushed a commit that referenced this pull request Aug 7, 2018
Original commit message:

    [postmortem] add JS_ERROR_TYPE and context embedder index

      * JS_ERROR_TYPE is required for postmortem tools to inspect
        JSError objects (see nodejs/llnode#215
        for a usage example)
      * The context embedder index is required for postmortem tools to
        access embedder data stored in the context (see
        nodejs/llnode#204 for a usage example)

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

    Change-Id: Ib7c7eb44f6ad327fc71a1d45f510c49377db7a25
    Reviewed-on: https://chromium-review.googlesource.com/1138493
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#54475}

Refs: v8/v8@804a693

Backport-PR-URL: #22177
PR-URL: #21855
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
@MylesBorins
Copy link
Contributor

failure unrelated

landed in 43bb6bd

Bumped V8 version while landing

@MylesBorins MylesBorins closed this Aug 7, 2018
MylesBorins pushed a commit that referenced this pull request Aug 7, 2018
Original commit message:

    [postmortem] add JS_ERROR_TYPE and context embedder index

      * JS_ERROR_TYPE is required for postmortem tools to inspect
        JSError objects (see nodejs/llnode#215
        for a usage example)
      * The context embedder index is required for postmortem tools to
        access embedder data stored in the context (see
        nodejs/llnode#204 for a usage example)

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

    Change-Id: Ib7c7eb44f6ad327fc71a1d45f510c49377db7a25
    Reviewed-on: https://chromium-review.googlesource.com/1138493
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#54475}

Refs: v8/v8@804a693

Backport-PR-URL: #22177
PR-URL: #21855
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
MylesBorins pushed a commit that referenced this pull request Aug 9, 2018
Original commit message:

    [postmortem] add JS_ERROR_TYPE and context embedder index

      * JS_ERROR_TYPE is required for postmortem tools to inspect
        JSError objects (see nodejs/llnode#215
        for a usage example)
      * The context embedder index is required for postmortem tools to
        access embedder data stored in the context (see
        nodejs/llnode#204 for a usage example)

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

    Change-Id: Ib7c7eb44f6ad327fc71a1d45f510c49377db7a25
    Reviewed-on: https://chromium-review.googlesource.com/1138493
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#54475}

Refs: v8/v8@804a693

Backport-PR-URL: #22177
PR-URL: #21855
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
MylesBorins pushed a commit that referenced this pull request Aug 16, 2018
Original commit message:

    [postmortem] add JS_ERROR_TYPE and context embedder index

      * JS_ERROR_TYPE is required for postmortem tools to inspect
        JSError objects (see nodejs/llnode#215
        for a usage example)
      * The context embedder index is required for postmortem tools to
        access embedder data stored in the context (see
        nodejs/llnode#204 for a usage example)

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

    Change-Id: Ib7c7eb44f6ad327fc71a1d45f510c49377db7a25
    Reviewed-on: https://chromium-review.googlesource.com/1138493
    Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#54475}

Refs: v8/v8@804a693

Backport-PR-URL: #22177
PR-URL: #21855
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
post-mortem Issues and PRs related to the post-mortem diagnostics of Node.js. v8 engine Issues and PRs related to the V8 dependency.
Projects
None yet
Development

Successfully merging this pull request may close these issues.