Skip to content

Conversation

@targos
Copy link
Member

@targos targos commented Dec 9, 2025

No description provided.

@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/gyp
  • @nodejs/security-wg
  • @nodejs/v8-update

@nodejs-github-bot nodejs-github-bot added build Issues and PRs related to build files or the CI. needs-ci PRs that need a full CI run. v8 engine Issues and PRs related to the V8 dependency. labels Dec 9, 2025
@targos

This comment was marked as resolved.

@targos

This comment was marked as resolved.

@richardlau

This comment was marked as resolved.

@targos

This comment was marked as resolved.

@targos

This comment was marked as resolved.

@richardlau

This comment was marked as resolved.

@targos

This comment was marked as resolved.

@aduh95 aduh95 added the semver-major PRs that contain breaking changes and should be released in the next major version. label Dec 11, 2025
@joyeecheung

This comment was marked as resolved.

@targos

This comment was marked as resolved.

joyeecheung added a commit to joyeecheung/v8 that referenced this pull request Dec 15, 2025
Previously TransitionsAccessor::InsertHelper() can grow the transition
array without making sure it's sorted after the size crosses
kMaxElementsForLinearSearch, leading to search failures or
duplicate entries in bigger transition arrays.

See nodejs/node#61002 (comment)

Change-Id: I3f45816b7d65bbbcfedeb7074d0c6907cbc08edf
hubot pushed a commit to v8/v8 that referenced this pull request Dec 17, 2025
Previously, after the TransitionArray is rehashed,
TransitionsAccessor::InsertHelper() can grow the transition
array without making sure it's sorted after the size crosses
kMaxElementsForLinearSearch, leading to search failures or
duplicate entries in bigger transition arrays.

See nodejs/node#61002 (comment)

Change-Id: I3f45816b7d65bbbcfedeb7074d0c6907cbc08edf
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7252791
Commit-Queue: Joyee Cheung <joyee@igalia.com>
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Cr-Commit-Position: refs/heads/main@{#104384}
targos pushed a commit to targos/node that referenced this pull request Dec 18, 2025
Original commit message:

    [runtime] sort transition array after it grows beyond linear search size

    Previously, after the TransitionArray is rehashed,
    TransitionsAccessor::InsertHelper() can grow the transition
    array without making sure it's sorted after the size crosses
    kMaxElementsForLinearSearch, leading to search failures or
    duplicate entries in bigger transition arrays.

    See nodejs#61002 (comment)

    Change-Id: I3f45816b7d65bbbcfedeb7074d0c6907cbc08edf
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7252791
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Reviewed-by: Igor Sheludko <ishell@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#104384}

Refs: v8/v8@0ce9f16
targos pushed a commit to targos/node that referenced this pull request Dec 22, 2025
Original commit message:

    [runtime] sort transition array after it grows beyond linear search size

    Previously, after the TransitionArray is rehashed,
    TransitionsAccessor::InsertHelper() can grow the transition
    array without making sure it's sorted after the size crosses
    kMaxElementsForLinearSearch, leading to search failures or
    duplicate entries in bigger transition arrays.

    See nodejs#61002 (comment)

    Change-Id: I3f45816b7d65bbbcfedeb7074d0c6907cbc08edf
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7252791
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Reviewed-by: Igor Sheludko <ishell@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#104384}

Refs: v8/v8@0ce9f16
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@targos

This comment was marked as resolved.

@targos

This comment was marked as resolved.

@miladfarca

This comment was marked as resolved.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

targos and others added 16 commits January 31, 2026 10:07
Major V8 updates are usually API/ABI incompatible with previous
versions. This commit adapts NODE_MODULE_VERSION for V8 14.4.

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>
Reviewed-By: Chengzhong Wu <legendecas@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>
Reviewed-By: Chengzhong Wu <legendecas@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>
Reviewed-By: Chengzhong Wu <legendecas@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>
Reviewed-By: Chengzhong Wu <legendecas@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>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.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>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Original commit message:

    GCC 15 removed avx10.2-512 target

    PiperOrigin-RevId: 823560321

Refs: google/highway@989a498
PR-URL: nodejs#60682
Fixes: nodejs#60566
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Xuguang Mei <meixuguang@gmail.com>
Original commit message:

    Fix GCC Build

    Move explicit specializations of Utf8::IsAsciiOneByteString to namespace scope

    C++ forbids explicit template specializations inside class scope.
    The specializations for IsAsciiOneByteString<uint8_t> and
    IsAsciiOneByteString<uint16_t> were defined inside class unibrow::Utf8,
    riggering "explicit specialization in non-namespace scope"
    compile errors.

    Fix type mismatch in EXPECT_EQ comparisons for std::pair values

    The tests failed because EXPECT_EQ was comparing pairs with mismatched
    template parameters — std::pair<int, unsigned int> vs.
    std::pair<unsigned int, unsigned char> — which have no valid operator==.
    I corrected the expected values to use the same unsigned types as the
    actual data, ensuring the pair comparison compiles cleanly.

    Fix build failure on GCC 12 by replacing std::format with ostringstream

    GCC 12's libstdc++ does not implement <format>, causing compile errors when
    using std::format. Replaced all std::format calls with equivalent

    Change-Id: I5c31f91065eccf6f4c14172902ffcd99863ebbb9
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7138905
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
    Reviewed-by: Clemens Backes <clemensb@chromium.org>
    Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#104280}

Refs: v8/v8@ee2873a
Original commit message:

    [runtime] sort transition array after it grows beyond linear search size

    Previously, after the TransitionArray is rehashed,
    TransitionsAccessor::InsertHelper() can grow the transition
    array without making sure it's sorted after the size crosses
    kMaxElementsForLinearSearch, leading to search failures or
    duplicate entries in bigger transition arrays.

    See nodejs#61002 (comment)

    Change-Id: I3f45816b7d65bbbcfedeb7074d0c6907cbc08edf
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7252791
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Reviewed-by: Igor Sheludko <ishell@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#104384}

Refs: v8/v8@0ce9f16
Original commit message:

    [runtime] zero-initialize descriptor array padding

    So that snapshot and code cache stay reproducible.

    See nodejs/node-v8#304

    Change-Id: Ic30970097ab46a26fa5bcf0f73e0fe62089890cc
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7271645
    Reviewed-by: Patrick Thier <pthier@chromium.org>
    Commit-Queue: Joyee Cheung <joyee@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#104436}

Refs: v8/v8@6eff00a
Original commit message:

    Move ByteReverse helpers under src/base

    This patch is needed to fix compilation errors on BE platforms after
    this change: http://crrev.com/c/7203818

    Bug: 448409803
    Change-Id: Ife2e582f641c465c070ab397ca3c64f619715976
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7209841
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@ibm.com>
    Cr-Commit-Position: refs/heads/main@{#104029}

Refs: v8/v8@8ca4ae9
Original commit message:

    Fix arg_buffer under Generate_WasmFXSuspend

    Also change the tmp register passed to LoadJumpBuffer to avoid
    overwriting arg_buffer.

    Change-Id: I72b83edf722481ca7018731d36e1939620612e97
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7212934
    Reviewed-by: John <junyan1@ibm.com>
    Commit-Queue: Milad Farazmand <mfarazma@ibm.com>
    Cr-Commit-Position: refs/heads/main@{#104032}

Refs: v8/v8@6c3fce9
Original commit message:

    [temporal] enable v8_enable_temporal_support on ppc64 and s390x

    Change-Id: Iaa5f46913b6aabf00b0440dba3d524427667b06e
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7216074
    Reviewed-by: Manish Goregaokar <manishearth@google.com>
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Commit-Queue: Manish Goregaokar <manishearth@google.com>
    Cr-Commit-Position: refs/heads/main@{#104066}

Refs: v8/v8@fab6b87
Original commit message:

    Fix builds with no `__builtin_bswap64` support

    Currently getting `'kBitsPerByte' was not declared in this scope`.

    Change-Id: Ied391ac9e859f0f3548d88fd1cc57f490d99e39a
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7310534
    Reviewed-by: Clemens Backes <clemensb@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@ibm.com>
    Cr-Commit-Position: refs/heads/main@{#104481}

Refs: v8/v8@d58ce5a
Original commit message:

    [builtins] disallow ArrayBuffer transfer with a detach key

    This allows embedder to disallow `ArrayBuffer.prototype.transfer()` on
    an arraybuffer that is not detachable. This also fix the check on
    `ArrayBufferCopyAndDetach` step 8 of `ArrayBuffer.prototype.transfer`.

    Refs: nodejs#61362
    Refs: https://tc39.es/ecma262/#sec-arraybuffercopyanddetach
    Change-Id: I3c6e156a8fad007fd100218d8b16aed5c4e1db68
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7454288
    Commit-Queue: Chengzhong Wu <cwu631@bloomberg.net>
    Reviewed-by: Olivier Flückiger <olivf@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#104697}

Refs: v8/v8@c5ff7c4
PR-URL: nodejs#61372
Fixes: nodejs#61362
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: René <contact.9a5d6388@renegade334.me.uk>
@nodejs-github-bot

This comment was marked as outdated.

@nodejs nodejs deleted a comment from nodejs-github-bot Jan 31, 2026
@nodejs nodejs deleted a comment from nodejs-github-bot Jan 31, 2026
@nodejs nodejs deleted a comment from nodejs-github-bot Jan 31, 2026
@targos
Copy link
Member Author

targos commented Jan 31, 2026

Ping @nodejs/platform-windows and @nodejs/platform-smartos. Latest runs:

Edit: I think I found the solution for smartos/shared libs build

targos and others added 3 commits January 31, 2026 13:01
Add args to `tools/make-v8.sh` for compiling Rust-based components,
such as Temporal, for the Linux on ppc64le and s390x V8 CI builds.
@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Jan 31, 2026

@nodejs nodejs deleted a comment from nodejs-github-bot Jan 31, 2026
@nodejs nodejs deleted a comment from nodejs-github-bot Jan 31, 2026
@nodejs nodejs deleted a comment from nodejs-github-bot Jan 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants