Commit Graph

36078 Commits

Author SHA1 Message Date
Antoine du Hamel
528fef2285 doc: improve fragment (:target) anchors behavior on HTML version
This commit aims to improve the UX when navigating the docs using links
to subsections. Previously the browser would scroll down to the section
body, skipping the section heading. Using `scroll-margin-top` CSS
property, we can fix this behavior (at least on some browsers).

Links to other versions are now updated with the current targeted hash
to improve the UX when navigating from docs of one release line to
another.

I've also removed syntax not parsable by older browsers (arrow functions
and array destructuring) since the diff is pretty small and should
improve UX on those browsers.

PR-URL: https://github.com/nodejs/node/pull/42739
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-17 15:51:42 +01:00
Antoine du Hamel
036c4d407b benchmark: fix misc/startup failure
PR-URL: https://github.com/nodejs/node/pull/42746
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
2022-04-17 15:37:21 +01:00
Gabriel Bota
083d4c45a2 async_hooks: avoid decrementing iterator after erase
decrementing an iterator returned by `std::vector::erase` may have
undefined behaviour and should not be used. Decrementing `end()`
on an empty container is undefined and `.erase()` could leave
the container empty.

Instead, by calling `vec.erase(it--)` we decrement the valid iterator
before the erase operation but after being passed to the erase method.

In case of `AsyncHooks::RemoveContext` perform the cleanup of empty
contexts upfront using `std::remove_if` because the iteration gets
interrupted as soon as the context to be removed has been found.

PR-URL: https://github.com/nodejs/node/pull/42749
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2022-04-17 15:37:14 +01:00
Node.js GitHub Bot
c3a581c360 tools: update doc to highlight.js@11.5.1
PR-URL: https://github.com/nodejs/node/pull/42758
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2022-04-17 07:44:36 +01:00
Node.js GitHub Bot
92215c5941 tools: update lint-md-dependencies
* @rollup/plugin-commonjs@21.1.0
* @rollup/plugin-node-resolve@13.2.1
* rollup@2.70.2

PR-URL: https://github.com/nodejs/node/pull/42759
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2022-04-17 07:43:22 +01:00
Node.js GitHub Bot
9724ca275c meta: update AUTHORS
PR-URL: https://github.com/nodejs/node/pull/42760
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2022-04-17 07:43:09 +01:00
Luigi Pinca
86b3191bcd doc: fix added: info for outgoingMessage.writable*
- `outgoingMessage.writableCorked` was added to Node.js v13.2.0 via
  62e15a793a and backported to Node.js v12.16.0 via db8144be31.
- `outgoingMessage.writableEnded` was added to Node.js v12.9.0 via
  f9b61d2bc7.
- `outgoingMessage.writableFinished` was added to Node.js v12.7.0 via
  06d0abea0d.
- `outgoingMessage.writableHighWaterMark`,
  `outgoingMessage.writableLength`, and
  `outgoingMessage.writableObjectMode` were added to Node.js v12.9.0 via
  16e001112c.

PR-URL: https://github.com/nodejs/node/pull/42737
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Ricky Zhou <0x19951125@gmail.com>
2022-04-17 07:31:47 +01:00
ops+robot@npmjs.com
c0d5f4b3d7 deps: upgrade npm to 8.7.0
PR-URL: https://github.com/nodejs/node/pull/42744
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2022-04-17 07:27:48 +02:00
David CARLIER
20268c7aa5 src: large page attributing an id on Linux
Using the new PR_SET_VMA_ANON_NAME prctl attribute available since
the 5.17 release, when rolling out the process address map appears as
`
<start>-<end> r-xp 00000000 00:00 0 [anon:nodejs Large Page]
`

PR-URL: https://github.com/nodejs/node/pull/42644
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-17 01:24:36 +01:00
Tony Gorez
b008e96825 doc: delete mdb_v8 from diagnostic tooling support tiers
PR-URL: https://github.com/nodejs/node/pull/42626
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-16 20:39:34 +01:00
mary marchini
98e9499b55 meta: move mmarchini to emeritus
Taking some time off the project, probably returning later this year.

PR-URL: https://github.com/nodejs/node/pull/42750
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2022-04-16 18:16:00 +01:00
Colin Ihrig
adaf602405 test_runner: add initial CLI runner
This commit introduces an initial version of a CLI-based
test runner.

PR-URL: https://github.com/nodejs/node/pull/42658
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
2022-04-15 18:37:28 +01:00
Kohei Ueno
24adba6751 test: remove the legacy url parser function
PR-URL: https://github.com/nodejs/node/pull/42656
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-15 00:20:51 +02:00
Yoshiki Kurihara
1285ac116d test: improve test coverage of internal/blob
PR-URL: https://github.com/nodejs/node/pull/41513
Refs: https://coverage.nodejs.org/coverage-74b9baa4265a8f0d/lib/internal/blob.js.html
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
2022-04-14 23:19:57 +01:00
Luigi Pinca
76e7170a40 doc: document the 'close' and 'finish' events
These events are already documented as events of the
`http.ServerResponse` class. Document that they can also be emitted on
instances of the `http.ClientRequest` class.

PR-URL: https://github.com/nodejs/node/pull/42704
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
2022-04-14 23:09:19 +01:00
Luigi Pinca
c4a736ce12 doc: fix added: info for outgoingMessage.{,un}cork()
`outgoingMessage.cork()` and `outgoingMessage.uncork()` were added to
Node.js v13.2.0 via 62e15a793a and backported to Node.js v12.16.0 via
db8144be31.

PR-URL: https://github.com/nodejs/node/pull/42711
Reviewed-By: Paolo Insogna <paolo@cowtech.it>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-14 23:09:04 +01:00
Livia Medeiros
30934e45d8 tools: lint osx shell scripts
PR-URL: https://github.com/nodejs/node/pull/42712
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2022-04-14 23:08:55 +01:00
Darshan Sen
19064bec34 test: delete test/pummel/test-repl-empty-maybelocal-crash.js
It was disconnecting the runners from the CI server. Not worth having a
resource-intensive test for this kind of an edge cases.

Fixes: https://github.com/nodejs/node/issues/42719
Signed-off-by: Darshan Sen <raisinten@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/42720
Fixes: https://github.com/nodejs/node/issues/42719
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
Reviewed-By: Stewart X Addison <sxa@redhat.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2022-04-14 20:32:29 +01:00
Rich Trott
aa88e5e4b9 doc: revise data imports and node: imports sections
Revise for conformance with style guide and clarity.

PR-URL: https://github.com/nodejs/node/pull/42734
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
2022-04-14 19:22:15 +01:00
Michaël Zasso
e938515b41 deps: patch V8 to 10.1.124.8
Refs: https://github.com/v8/v8/compare/10.1.124.6...10.1.124.8

PR-URL: https://github.com/nodejs/node/pull/42730
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
2022-04-14 16:45:01 +01:00
Colin Ihrig
93c4dc5e5a module: ensure 'node:'-only modules can access node_modules
This commit allows require() and import to search the
node_modules directories when importing a core module that
must have the node: scheme. This prevents these core modules
from shadowing userland modules with the same name but no
prefix.

PR-URL: https://github.com/nodejs/node/pull/42430
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
2022-04-14 14:08:55 +01:00
Rich Trott
a058cefe29 doc: fix ESM JSON/data URL import example
PR-URL: https://github.com/nodejs/node/pull/42728
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
2022-04-14 12:24:20 +01:00
Luigi Pinca
e61b62b9d4 doc: improve doc for http.ServerResponse inheritance
Document that `http.ServerResponse` inherits from
`http.OutgoingMessage`.

PR-URL: https://github.com/nodejs/node/pull/42693
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Ricky Zhou <0x19951125@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-14 08:24:19 +01:00
Rich Trott
f076c36335 tools: update clang-format 1.6.0 to 1.7.0
This resolves `npm audit` warnings when running `make format-cpp-build`.

PR-URL: https://github.com/nodejs/node/pull/42724
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
2022-04-14 06:29:47 +01:00
Michael Dawson
3026ca0bf2 src: fix coverity report
Fix coverity report about possibly dereferencing
a null. If the the buffer.data != nullptr
check indicates that the buffer was null, then
relying on the value in buffer_size is no longer
safe. The later call to uv_pipe_getpeername
depends on the buffer_size being correct to
avoid deferencing buffer.data if it is not
big enough.

Signed-off-by: Michael Dawson <mdawson@devrus.com>

PR-URL: https://github.com/nodejs/node/pull/42663
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-13 15:07:31 -04:00
RafaelGSS
6669b3857f doc: add RafaelGSS to collaborators
Fixes: https://github.com/nodejs/node/issues/42527

PR-URL: https://github.com/nodejs/node/pull/42718
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2022-04-13 14:50:14 -03:00
Darshan Sen
96673bcb96 build: run clang-format on CI
We already include the tool inside tools/clang-format, so we should
start using it on CI. This attempts to run the linter only on the
commits present in an opened PR.

Signed-off-by: Darshan Sen <raisinten@gmail.com>

PR-URL: https://github.com/nodejs/node/pull/42681
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-13 18:22:00 +01:00
Tobias Nießen
f825341bab doc: add NodeEdKeyGenParams to CryptoKey.algorithm
PR-URL: https://github.com/nodejs/node/pull/42629
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-13 16:32:52 +01:00
Momtchil Momtchev
d4d78361f2 doc: fix the example for embedders
Refs: #42670

PR-URL: https://github.com/nodejs/node/pull/42671
Fixes: https://github.com/nodejs/node/issues/42670
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
2022-04-13 16:18:55 +01:00
Paolo Insogna
3caa2c1a00 http: refactor headersTimeout and requestTimeout logic
PR-URL: https://github.com/nodejs/node/pull/41263
Fixes: https://github.com/nodejs/node/issues/33440
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
2022-04-13 15:47:59 +01:00
Yoshiki Kurihara
9d6af7d1fe test: improve internal/url.js coverage
PR-URL: https://github.com/nodejs/node/pull/42650
Refs: https://coverage.nodejs.org/coverage-3c752648d4ef5510/lib/internal/url.js.html#L256
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Akhil Marsonya <akhil.marsonya27@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Zijian Liu <lxxyxzj@gmail.com>
2022-04-13 10:35:09 +02:00
Richard Lau
3671cc0432 doc: update minimum glibc requirements for Linux
Starting with Node.js 18 we have moved building the release binaries
from being built on CentOS 7/RHEL 7 to being built on RHEL 8 as the
End-of-Life date of CentOS 7/RHEL 7 is before the End-of-Life date
of Node.js 18 and we do not want to have to make a disruptive change
towards the end of Node.js 18's life cycle.

Moving to RHEL 8 has raised the glibc version being linked against
(2.28). The official Node.js Linux release binaries will only run on
Linux distributions with a matching or higher version of glibc.

PR-URL: https://github.com/nodejs/node/pull/42659
Refs: https://github.com/nodejs/build/issues/2815
Refs: https://github.com/nodejs/build/issues/2741
Reviewed-By: Michael Dawson <midawson@redhat.com>
Reviewed-By: Stewart X Addison <sxa@redhat.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
2022-04-13 07:36:08 +01:00
Rich Trott
45162bf9e7 tools: update clang-format from 1.2.3 to 1.6.0
PR-URL: https://github.com/nodejs/node/pull/42685
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Mestery <mestery@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
2022-04-13 00:10:14 +01:00
Michaël Zasso
d49df5ca8d test: adapt message tests for V8 10.2
There are some changes for function names in stack traces.

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:11:17 +02:00
Michaël Zasso
c6b4e9604f test: adapt test-worker-debug for V8 10.0
V8 is removing callFrame.url.

Refs: https://chromium-review.googlesource.com/c/v8/v8/+/3345001

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:11:13 +02:00
Michaël Zasso
0854fce8bc test: adapt test-v8-serdes for V8 9.9
V8 changed the serialization format so we cannot expect that a value
serialized by an old version can be reserialized to the same bytes.
Change the test to expect that deserialization of the old value still
works.

Add another test which is expected to fail when the format changes so
that we are aware when it happens and can call it out in the release
notes.

Closes: https://github.com/nodejs/node/issues/41519

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:11:03 +02:00
Michaël Zasso
40bc08089d tools: update V8 gypfiles for 10.1
PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:39 +02:00
Camillo Bruni
62e62757b3 tools,test: fix V8 initialization order
Refs: https://chromium-review.googlesource.com/c/v8/v8/+/3300129/

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:37 +02:00
Michaël Zasso
58f3fdcccd deps: V8: cherry-pick semver-major commits from 10.2
Includes the following commits:

commit b2978927d8a96ebc814cccbc5a9f1c35910ee621
    Remove dynamic map checks and custom deoptimization kinds

    This CL removes:

    - Dynamic map checks aka minimorphic property loads (TF support,
      builtins).
    - "Bailout" deopts (= drop to the interpreter once, but don't
      throw out optimized code).
    - "EagerWithResume" deopts (= part of dynamic map check
      functionality, we call a builtin for the deopt check and deopt
      or resume based on the result).

    Fixed: v8:12552
    Change-Id: I492cf1667e0f54586690b2f72a65ea804224b840
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3401585

commit f52f934119635058b179c2359fe070b8ee0f9233
    PPC/s390: Remove dynamic map checks and custom deoptimization kinds

    Port b2978927d8a96ebc814cccbc5a9f1c35910ee621

    Original Commit Message:

        This CL removes:

        - Dynamic map checks aka minimorphic property loads (TF support,
          builtins).
        - "Bailout" deopts (= drop to the interpreter once, but don't
          throw out optimized code).
        - "EagerWithResume" deopts (= part of dynamic map check
          functionality, we call a builtin for the deopt check and deopt
          or resume based on the result).

    R=jgruber@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com
    BUG=
    LOG=N

    Change-Id: I64476f73810774c2c592231d82c4a2cbfa2bf94e
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3537881

commit 38940b70986da6b43d18cb8cf8f0a3be36ca9010
    [loong64][mips] Remove dynamic map checks and custom deoptimization kinds

    Port commit b2978927d8a96ebc814cccbc5a9f1c35910ee621

    Fixed: v8:12552
    Change-Id: Ic2fbded9a662ed840a0350e3ce049e147fbf03a0
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3541527

commit da5b5f66a6bd27df6249602378300c6961bc62b4
    [riscv64] Remove dynamic map checks and custom deoptimization kinds

    Port b2978927d8a96ebc814cccbc5a9f1c35910ee621

    Bug: v8:12552
    Change-Id: I73e76fc5cc8905a0fbfc801b2f794735866d19e8
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3544725

commit ffae028b37991566c080c5528463f7d16017668c
    Forward deprecation for resurrecting finalizer

    Bug: v8:12672
    Change-Id: Ib4f53086436e028b4ea32fbc960f57e91709d184
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3532256

commit f6386018d472665e36d662c8b159d95325999d69
    [api] Remove TracedGlobal<>

    Remove deprecated TracedGlobal<>, greatly simplifying handling of
    traced references in general.

    Also saves a word per v8::TracedReference as there's no need to keep a
    possible callback around.

    Bug: v8:12603
    Change-Id: Ice35d7906775b912d02e97a27a722b3e1cec28d9
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3532251

commit a8beac553b0a1639bc9790c2d6f82caf6b2e150f
    Deprecate some signature checks

    Deprecate signature checks in
    * Template::SetNativeDataProperty
    * ObjectTemplate::SetAccessor
    These are not used in Chrome and require some complicated check in the IC code, which we want to remove.

    Change-Id: I413fafc8658e922fd590e7fe200600a624f019a6
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3557253

commit cff2b5000a1aa417a9c4499bcfa3ffda4542f4f1
    Deprecate signature checks in Set{Accessor,NativeDataProperty}

    Change from V8_DEPRECATE_SOON to V8_DEPRECATED. It turned out that we
    don't have to make changes in chrome code, so we can go to deprecated
    right away.

    Bug: chromium:1310790
    Change-Id: I1bd529536d3a0098f11f13b3e44fe3dbc80eed04
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3571897

commit 9238afb0c0ee52c9111a7e9f2f055137628771ad
    Allow embedder to set global OOM handler

    Embedders can currently specify a callback for OOM errors during
    Isolate initialization. However, there are cases where an OOM error can
    be thrown in a context where we don't have access to an Isolate, for
    example on a task posted to a worker thread. This CL introduces an
    initialization API to allow the embedder to specify a process-wide OOM
    callback.

    Bug: chromium:614440
    Change-Id: I326753d80767679f677e85104d9edeef92e19086
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3561916

commit ca51ae3ac8b468509603633adb6ee3b3be9306ec
    [api][profiler] Get StartProfiling, StopProfiling to accept integer ID rather than string

    This CL adds support for interacting with CpuProfile with their integer
    id.
    A String ID is problematic because it forces an allocation when stopping
    or cancelling a Profiler which can happen during a GC when this
    is not allowed.

    Change-Id: I9a8e754bd67214be0bbc5ca051bcadf52bf71a68
    Bug: chromium:1297283
    Co-Authored-By: Nicolas Dubus <nicodubus@fb.com>
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3522896

Refs: b2978927d8
Refs: f52f934119
Refs: 38940b7098
Refs: da5b5f66a6
Refs: ffae028b37
Refs: f6386018d4
Refs: a8beac553b
Refs: cff2b5000a
Refs: 9238afb0c0
Refs: ca51ae3ac8

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:34 +02:00
Michaël Zasso
eba7d2db7f deps: V8: cherry-pick ad21d212fc14
Original commit message:

    Preserve "proper method names" as-is in error.stack.

    This changes the logic for generating method names in `error.stack` to
    prepend an inferred type name only when the function name is a valid
    ECMAScript identifiers and does not equal the inferred type name, to

    (1) give developers more control over the exact name shown in
        `error.stack`, as well as
    (2) avoid confusion in the presence of renaming of local variables.

    Previously we'd leave the function name as-is if it was prefixed by the
    inferred type name, but that condition is unnecessarily strict, and led
    to a bunch of inconsistencies around special names like
    `<instance_member_initializer>` where this dynamic approached often
    prefixed it with the correct type name, but also sometimes got it wrong
    and prepended `Object.`, which is very unfortunate and misleading.
    Specifically for these special names, we'll add logic later in the
    parser to infer a useful (complete) name.

    The design doc (https://bit.ly/devtools-method-names-in-stack-traces)
    contains more background and examples of why we do this change.

    Doc: https://bit.ly/devtools-method-names-in-stack-traces
    Fixed: chromium:1294619
    Bug: chromium:1283435
    Change-Id: Ib8b528ba25255dcd07e9d11044c562c11d699bcb
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3565724
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79748}

Refs: ad21d212fc

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:29 +02:00
Michaël Zasso
004137e269 deps: V8: cherry-pick 4c29cf1b7885
Original commit message:

    [heap] fix invocation of NearHeapLimitCallback

    This patch makes sure that NearHeapLimitCallback can invoke
    operations that trigger garbage collections. In addition
    this adds code to make the tracers aware of NearHeapLimitCallback.

    Bug: v8:12777
    Change-Id: I959a23a3e0224ba536cb18b14933813e56fc5292
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3575468
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#79934}

Refs: 4c29cf1b78

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:17 +02:00
Michaël Zasso
a052c03033 deps: V8: cherry-pick ca2a787a0b49
Original commit message:

    Fix build with Windows 10 20348 SDK

    Bug: chromium:1292528
    Change-Id: If4da2ec92afb7b4fe9942778eca385344b9b6409
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3563539
    Auto-Submit: Yuly Novikov <ynovikov@chromium.org>
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79709}

Refs: ca2a787a0b

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:14 +02:00
Michaël Zasso
01cea9a8d8 deps: V8: cherry-pick a2cae2180a7a
Original commit message:

    [runtime] Fix handling of interceptors, pt.2

    Stores to undeclared global in strict mode should throw ReferenceError.

    Bug: chromium:1309225
    Change-Id: Iac7c55da2ff9c16e488b4fc66408c5300469873e
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3553099
    Commit-Queue: Igor Sheludko <ishell@chromium.org>
    Auto-Submit: Igor Sheludko <ishell@chromium.org>
    Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    Commit-Queue: Toon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79625}

Refs: a2cae2180a

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:11 +02:00
Michaël Zasso
d9d26b08ef deps: V8: cherry-pick 87ce4f5d98a5
Original commit message:

    [ic] use CSA_DCHECK in CodeStubAssembler::SharedValueBarrier

    Since the code is generated unconditionally, using a DCHECK to check
    that shared RO heap is enabled breaks builds with
    v8_enable_shared_ro_heap set to false, this patch turns that into a
    CSA_DCHECK so it only crashes when V8 actually attempts to store into
    a shared struct while the RO heap isn't shared at run time.

    Refs: https://github.com/nodejs/node/pull/42115
    Bug: v8:12547
    Change-Id: I30d9a02b98a0b647097125c0a9d141e40d6348cc
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3561598
    Reviewed-by: Shu-yu Guo <syg@chromium.org>
    Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#79756}

Refs: 87ce4f5d98

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:08 +02:00
Michaël Zasso
64a6328505 deps: make V8 compilable with older glibc
Remove call to `memfd_create`.
The function that references it is only used for V8 testing.

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:05 +02:00
Jiawen Geng
fde59217b9 deps: V8: fix v8-cppgc.h for MSVC
Refs: https://bugs.chromium.org/p/v8/issues/detail?id=12661
Refs: https://github.com/nodejs/node/issues/42375

PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
2022-04-12 22:10:02 +02:00
Michaël Zasso
cdcc82cced deps: silence V8's warning on CompileFunction
We are not ready to migrate yet.

Refs: https://github.com/nodejs/node-v8/issues/214

PR-URL: https://github.com/nodejs/node/pull/40907
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
2022-04-12 22:09:50 +02:00
Michaël Zasso
2d2cef14b1 deps: disable trap handler for Windows cross-compiler
`handler-outside-simulator.cc` uses inline assembly, which is not
supported by MSVC.

PR-URL: https://github.com/nodejs/node/pull/40488
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
2022-04-12 22:09:45 +02:00
Jiawen Geng
1132d044db deps: fix V8 build issue with inline methods
PR-URL: https://github.com/nodejs/node/pull/35415
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>

deps: patch for v8 on windows

PR-URL: https://github.com/nodejs/node/pull/40010
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>

deps: patch v8 for vs2019 in std17

PR-URL: https://github.com/nodejs/node/pull/40060
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>

deps: workaround debug link error on Windows

PR-URL: https://github.com/nodejs/node/pull/38807
Refs: https://github.com/nodejs/node/pull/38788
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Ash Cripps <acripps@redhat.com>
2022-04-12 22:09:36 +02:00
Refael Ackermann
4169f9d03c deps: V8: forward declaration of Rtl*FunctionTable
This should be semver-patch since actual invocation is version
conditional.

PR-URL: https://github.com/nodejs/node/pull/32116
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2022-04-12 22:09:16 +02:00