-
-
Notifications
You must be signed in to change notification settings - Fork 33.9k
deps: update V8 to 14.3 #60488
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
Closed
Closed
deps: update V8 to 14.3 #60488
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Collaborator
|
Review requested:
|
This comment was marked as resolved.
This comment was marked as resolved.
cjihrig
approved these changes
Oct 30, 2025
Contributor
cjihrig
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
RSLGTM
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
Major V8 updates are usually API/ABI incompatible with previous versions. This commit adapts NODE_MODULE_VERSION for V8 14.3. Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md
PR-URL: nodejs#54077 Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
It's causing linker errors with node.lib in node-gyp and potentially breaks other 3rd party tools PR-URL: nodejs#56238 Refs: nodejs#55784 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
GCC emits warnings because of the trailing backslashes. PR-URL: nodejs#58070 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
PR-URL: nodejs#58070 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: Paolo Insogna <paolo@cowtech.it> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
illumos pointers are VA48, can allocate from the top of the 64-bit range as well. PR-URL: nodejs#59805 Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
In illumos, madvise(3C) now takes `void *` for its first argument post-illumos#14418, but uses `caddr_t` pre-illumos#14418. This fix will detect if the illumos mman.h file in use is pre-or-post-illumos#14418 so builds can work either way. PR-URL: nodejs#58237 Reviewed-By: Richard Lau <richard.lau@ibm.com> Reviewed-By: Michael Dawson <midawson@redhat.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Original commit message:
remove ppc and s390 from the host_arch list
We only support ppc64 and s390x.
Same changes is applied to depot_tools:
http://crrev.com/c/7100932
Change-Id: I1e4b660a1e46d1c609189301e8fd977fb7434748
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7102361
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Milad Farazmand <mfarazma@ibm.com>
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Cr-Commit-Position: refs/heads/main@{#103488}
Refs: v8/v8@2e4c5cf
Fixes: nodejs/build#4184
Co-authored-by: Michaël Zasso <targos@protonmail.com>
PR-URL: nodejs#60654
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Stewart X Addison <sxa@redhat.com>
Original commit message:
[wasm] Fix DCHECK in AtomicWait after memory growth
With the changes in crrev.com/c/7003085, calling memory.grow()
via the JS API didn't immediately update the memory's array buffer
any more, which triggered a DCHECK in the runtime functions for
atomic waits. This patch restores immediate updating of the buffer
for the current isolate, which maintains the other CL's goal to
not allocate on loop back edges.
Fixed: 454991459
Change-Id: Id633cebb9ac24606bc0d8a3df703c74531d3c8a0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7100806
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#103431}
Refs: v8/v8@4780079
legendecas
approved these changes
Nov 12, 2025
Member
Author
Member
Author
|
It's not V8 CI. It's GCC compatibility. |
Original commit message:
Fix gcc build
For json-parser.h:
```
../../src/json/json-parser.h:298:13: error: explicit specialization in
non-namespace scope 'class v8::internal::JsonParser<Char>'
298 | template <>
| ^
../../src/json/json-parser.h:299:18: error: template-id
'IsNextToken<v8::internal::JsonToken::EOS>' in declaration of primary template
299 | V8_INLINE bool IsNextToken<JsonToken::EOS>() {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
```
For wasm-objects.cc:
```
../../src/wasm/wasm-objects.cc:2522:45: error: no matching function for call to
'v8::internal::WasmDispatchTable::SetForNonWrapper<v8::internal::WasmDispatchTable>(
v8::internal::WasmDispatchTable&, int&, v8::internal::Tagged<v8::internal::
Union<v8::internal::Smi, v8::internal::WasmTrustedInstanceData> >&,
v8::internal::WasmCodePointer&, v8::internal::wasm::CanonicalTypeIndex&,
v8::internal::WasmDispatchTable::NewOrExistingEntry&)'
```
```
error: no matching function for call to 'v8::internal::WasmDispatchTable::
SetForWrapper<v8::internal::WasmDispatchTable>(v8::internal::WasmDispatchTable&,
int&, v8::internal::Tagged<v8::internal::WasmImportData>&, std::shared_ptr<v8::
internal::wasm::WasmImportWrapperHandle>&, v8::internal::wasm::
CanonicalTypeIndex&, v8::internal::WasmDispatchTable::NewOrExistingEntry&)'
```
For the fix fully qualify calls to SetForWrapper and SetForNonWrapper with
::v8::internal:: to avoid accidental lookup of class member names.
This resolves template resolution errors caused by unqualified
calls inside WasmDispatchTable and WasmDispatchTableForImports
member functions.
Change-Id: I687935a05dc754db686deaa0f93079d350aae07e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7107891
Reviewed-by: Patrick Thier <pthier@chromium.org>
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Commit-Queue: Milad Farazmand <mfarazma@ibm.com>
Cr-Commit-Position: refs/heads/main@{#103547}
Refs: v8/v8@151d0a4
Co-authored-by: Michaël Zasso <targos@protonmail.com>
Member
Author
|
I found v8/v8@151d0a4 |
Collaborator
Collaborator
Collaborator
Collaborator
Collaborator
Member
Author
|
This is ready @nodejs/tsc @nodejs/v8-update |
legendecas
approved these changes
Nov 13, 2025
aduh95
approved these changes
Nov 13, 2025
richardlau
approved these changes
Nov 13, 2025
targos
added a commit
that referenced
this pull request
Nov 13, 2025
PR-URL: #60488 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com>
targos
added a commit
that referenced
this pull request
Nov 13, 2025
PR-URL: #60488 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com>
Member
Author
|
Landed in c208ffc...092a448 |
targos
added a commit
that referenced
this pull request
Nov 13, 2025
Major V8 updates are usually API/ABI incompatible with previous versions. This commit adapts NODE_MODULE_VERSION for V8 14.3. Refs: https://github.com/nodejs/CTC/blob/master/meetings/2016-09-28.md PR-URL: #60488 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com>
targos
pushed a commit
that referenced
this pull request
Nov 13, 2025
Original commit message:
[wasm] Fix DCHECK in AtomicWait after memory growth
With the changes in crrev.com/c/7003085, calling memory.grow()
via the JS API didn't immediately update the memory's array buffer
any more, which triggered a DCHECK in the runtime functions for
atomic waits. This patch restores immediate updating of the buffer
for the current isolate, which maintains the other CL's goal to
not allocate on loop back edges.
Fixed: 454991459
Change-Id: Id633cebb9ac24606bc0d8a3df703c74531d3c8a0
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7100806
Reviewed-by: Clemens Backes <clemensb@chromium.org>
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#103431}
Refs: v8/v8@4780079
PR-URL: #60488
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
targos
added a commit
that referenced
this pull request
Nov 13, 2025
Original commit message:
Fix gcc build
For json-parser.h:
```
../../src/json/json-parser.h:298:13: error: explicit specialization in
non-namespace scope 'class v8::internal::JsonParser<Char>'
298 | template <>
| ^
../../src/json/json-parser.h:299:18: error: template-id
'IsNextToken<v8::internal::JsonToken::EOS>' in declaration of primary template
299 | V8_INLINE bool IsNextToken<JsonToken::EOS>() {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
```
For wasm-objects.cc:
```
../../src/wasm/wasm-objects.cc:2522:45: error: no matching function for call to
'v8::internal::WasmDispatchTable::SetForNonWrapper<v8::internal::WasmDispatchTable>(
v8::internal::WasmDispatchTable&, int&, v8::internal::Tagged<v8::internal::
Union<v8::internal::Smi, v8::internal::WasmTrustedInstanceData> >&,
v8::internal::WasmCodePointer&, v8::internal::wasm::CanonicalTypeIndex&,
v8::internal::WasmDispatchTable::NewOrExistingEntry&)'
```
```
error: no matching function for call to 'v8::internal::WasmDispatchTable::
SetForWrapper<v8::internal::WasmDispatchTable>(v8::internal::WasmDispatchTable&,
int&, v8::internal::Tagged<v8::internal::WasmImportData>&, std::shared_ptr<v8::
internal::wasm::WasmImportWrapperHandle>&, v8::internal::wasm::
CanonicalTypeIndex&, v8::internal::WasmDispatchTable::NewOrExistingEntry&)'
```
For the fix fully qualify calls to SetForWrapper and SetForNonWrapper with
::v8::internal:: to avoid accidental lookup of class member names.
This resolves template resolution errors caused by unqualified
calls inside WasmDispatchTable and WasmDispatchTableForImports
member functions.
Change-Id: I687935a05dc754db686deaa0f93079d350aae07e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7107891
Reviewed-by: Patrick Thier <pthier@chromium.org>
Reviewed-by: Manos Koukoutos <manoskouk@chromium.org>
Commit-Queue: Milad Farazmand <mfarazma@ibm.com>
Cr-Commit-Position: refs/heads/main@{#103547}
Refs: v8/v8@151d0a4
Co-authored-by: Michaël Zasso <targos@protonmail.com>
PR-URL: #60488
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
targos
added a commit
that referenced
this pull request
Nov 13, 2025
Refs: v8/v8@599866f PR-URL: #60488 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com>
targos
added a commit
that referenced
this pull request
Nov 13, 2025
Refs: v8/v8@e2e6dd8 PR-URL: #60488 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
author ready
PRs that have at least one approval, no pending requests for changes, and a CI started.
build
Issues and PRs related to build files or the CI.
needs-ci
PRs that need a full CI run.
semver-major
PRs that contain breaking changes and should be released in the next major version.
v8 engine
Issues and PRs related to the V8 dependency.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.