Skip to content

deps: update V8 to 12.8#54077

Closed
targos wants to merge 25 commits intonodejs:mainfrom
targos:v8-128
Closed

deps: update V8 to 12.8#54077
targos wants to merge 25 commits intonodejs:mainfrom
targos:v8-128

Conversation

@targos
Copy link
Member

@targos targos commented Jul 28, 2024

@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 Jul 28, 2024
@targos targos mentioned this pull request Jul 28, 2024
@targos targos added the semver-major PRs that contain breaking changes and should be released in the next major version. label Jul 28, 2024
@targos targos added the request-ci Add this label to start a Jenkins CI on a PR. label Jul 28, 2024
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Jul 28, 2024
@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
Copy link
Member Author

targos commented Jul 28, 2024

Trying Windows again with the new commit: https://ci.nodejs.org/job/node-test-commit-windows-fanned/64381/

@nodejs-github-bot

This comment was marked as outdated.

@targos
Copy link
Member Author

targos commented Jul 28, 2024

@nodejs/platform-s390 There's a failing V8 test: https://ci.nodejs.org/job/node-test-commit-v8-linux/6098/nodes=rhel8-s390x,v8test=v8test/console

@targos
Copy link
Member Author

targos commented Jul 28, 2024

We also have a compiler error with ubi81_sharedlibs_openssl111fips_x64:

12:06:12 In file included from ../deps/v8/include/v8-isolate.h:21,
12:06:12                  from ../deps/v8/include/v8-snapshot.h:9,
12:06:12                  from ../deps/v8/include/v8-context.h:15,
12:06:12                  from ../deps/v8/include/v8.h:26,
12:06:12                  from ../src/node_external_reference.h:9,
12:06:12                  from ../src/node_builtins.h:13,
12:06:12                  from ../src/node_builtins.cc:1:
12:06:12 ../deps/v8/include/v8-function-callback.h: In instantiation of 'v8::Isolate* v8::PropertyCallbackInfo<F>::GetIsolate() const [with T = v8::Value]':
12:06:12 ../src/node_builtins.cc:655:62:   required from here
12:06:12 ../deps/v8/include/v8-function-callback.h:695:11: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
12:06:12   695 |   return *reinterpret_cast<Isolate**>(&args_[kIsolateIndex]);
12:06:12       |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12:06:12 cc1plus: all warnings being treated as errors
12:06:12 make[2]: *** [libnode.target.mk:439: /home/iojs/build/workspace/node-test-commit-linux-containered/out/Release/obj.target/libnode/src/node_builtins.o] Error 1

@miladfarca
Copy link
Contributor

@targos that test is knows to be flaky (on other platforms as well): https://issues.chromium.org/issues/42200980
rerunning the tests should pass it.

@ronag
Copy link
Member

ronag commented Jul 29, 2024

I think this also adds support for DisposableStack and AsyncDisposableStack. Maybe notable?

@targos
Copy link
Member Author

targos commented Jul 29, 2024

@ronag it doesn't seem to (DisposableStack is not defined)

@ronag
Copy link
Member

ronag commented Jul 29, 2024

@ronag it doesn't seem to (DisposableStack is not defined)

Ah, weird. There are references to it in the changes so I thought it was included.

@targos targos added the request-ci Add this label to start a Jenkins CI on a PR. label Aug 7, 2024
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Aug 7, 2024
@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 added a commit that referenced this pull request Aug 16, 2024
Refs: v8/v8@5495678
PR-URL: #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>
targos pushed a commit that referenced this pull request Aug 16, 2024
Refs: https://chromium-review.googlesource.com/c/v8/v8/+/5300826
PR-URL: #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>
targos added a commit that referenced this pull request Aug 16, 2024
Refs: https://chromium-review.googlesource.com/c/v8/v8/+/5447267
Co-authored-by: Michaël Zasso <targos@protonmail.com>
PR-URL: #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>
targos added a commit that referenced this pull request Aug 16, 2024
Refs: v8/v8@e30e228
PR-URL: #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>
targos added a commit that referenced this pull request Aug 16, 2024
Refs: v8/v8@f8fa220
PR-URL: #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>
targos pushed a commit that referenced this pull request Aug 16, 2024
As V8 has moved away from wrapper-descriptor-based CppHeap, this
patch:

1. Create the CppHeap without using wrapper descirptors.
2. Deprecates node::SetCppgcReference() in favor of
   v8::Object::Wrap() since the wrapper descriptor is no longer
   relevant. It is still kept as a compatibility layer for addons
   that need to also work on Node.js versions without
   v8::Object::Wrap().

PR-URL: #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>
targos pushed a commit that referenced this pull request Aug 16, 2024
Add/remove abseil files introduced by V8 12.7 update found by:

```
git diff-tree --no-commit-id --name-status 0ec8f7e -r
  | grep '^[AD].*abseil.*'
```

PR-URL: #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>
targos added a commit that referenced this pull request Aug 16, 2024
Refs: v8/v8@06847fb
PR-URL: #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>
targos pushed a commit that referenced this pull request Aug 16, 2024
Two fields on the `v8::FastApiCallbackOptions` struct were deprecated
recently: `fallback` and `wasm_memory`. This PR removes uses of these
two fields in node.js.

PR-URL: #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>
@targos
Copy link
Member Author

targos commented Aug 16, 2024

Landed in 7fab6e8...f0134fa

@targos targos closed this Aug 16, 2024
targos added a commit that referenced this pull request Aug 16, 2024
PR-URL: #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>
targos added a commit that referenced this pull request Aug 16, 2024
It's causing compiler errors with some classes on Xcode 11
and the attribute should have no runtime effect.

PR-URL: #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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 16, 2024
PR-URL: nodejs/node#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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 16, 2024
It's causing compiler errors with some classes on Xcode 11
and the attribute should have no runtime effect.

PR-URL: nodejs/node#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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 17, 2024
PR-URL: nodejs/node#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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 17, 2024
It's causing compiler errors with some classes on Xcode 11
and the attribute should have no runtime effect.

PR-URL: nodejs/node#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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 18, 2024
PR-URL: nodejs/node#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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 18, 2024
It's causing compiler errors with some classes on Xcode 11
and the attribute should have no runtime effect.

PR-URL: nodejs/node#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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 19, 2024
PR-URL: nodejs/node#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>
nodejs-github-bot pushed a commit to nodejs/node-v8 that referenced this pull request Aug 19, 2024
It's causing compiler errors with some classes on Xcode 11
and the attribute should have no runtime effect.

PR-URL: nodejs/node#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>
targos added a commit that referenced this pull request Aug 24, 2024
PR-URL: #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>
@zcbenz
Copy link
Contributor

zcbenz commented Sep 10, 2024

It seems that wrapping a cppgc Object with v8::Object has been simplified a lot, would it be possible to wrap a cppgc Object with Node-API now?

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. commit-queue-failed An error occurred while landing this pull request using GitHub Actions. commit-queue-rebase Add this label to allow the Commit Queue to land a PR in several commits. 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.