Skip to content

Commit f8af88a

Browse files
committed
deps: V8: cherry-pick 1a391f98cc7a
Original commit message: [api] Deprecate kPromiseRejectAfterResolved and kPromiseResolveAfterResolved These events will be removed soon. Bug: 42213031 Change-Id: Ie70474ff33c40c7d9cb0c2d0fbe6b75da3c53a22 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/7774767 Commit-Queue: Kevin Gibbons <bakkot@gmail.com> Reviewed-by: Olivier Flückiger <olivf@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#107395} Refs: v8/v8@1a391f9
1 parent ff58f43 commit f8af88a

6 files changed

Lines changed: 22 additions & 7 deletions

File tree

common.gypi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040

4141
# Reset this number to 0 on major V8 upgrades.
4242
# Increment by one for each non-official patch applied to deps/v8.
43-
'v8_embedder_string': '-node.21',
43+
'v8_embedder_string': '-node.22',
4444

4545
##### V8 defaults for Node.js #####
4646

deps/v8/include/v8-promise.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -158,8 +158,10 @@ using PromiseHook = void (*)(PromiseHookType type, Local<Promise> promise,
158158
enum PromiseRejectEvent {
159159
kPromiseRejectWithNoHandler = 0,
160160
kPromiseHandlerAddedAfterReject = 1,
161-
kPromiseRejectAfterResolved = 2,
162-
kPromiseResolveAfterResolved = 3,
161+
kPromiseRejectAfterResolved V8_DEPRECATED("These events are being removed") =
162+
2,
163+
kPromiseResolveAfterResolved V8_DEPRECATED("These events are being removed") =
164+
3,
163165
};
164166

165167
class PromiseRejectMessage {

deps/v8/src/d8/d8.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4575,11 +4575,13 @@ static void PrintMessageCallback(Local<Message> message, Local<Value> error) {
45754575

45764576
void Shell::PromiseRejectCallback(v8::PromiseRejectMessage data) {
45774577
if (options.ignore_unhandled_promises) return;
4578+
START_ALLOW_USE_DEPRECATED();
45784579
if (data.GetEvent() == v8::kPromiseRejectAfterResolved ||
45794580
data.GetEvent() == v8::kPromiseResolveAfterResolved) {
45804581
// Ignore reject/resolve after resolved.
45814582
return;
45824583
}
4584+
END_ALLOW_USE_DEPRECATED();
45834585
v8::Local<v8::Promise> promise = data.GetPromise();
45844586
v8::Isolate* isolate = v8::Isolate::GetCurrent();
45854587
PerIsolateData* isolate_data = PerIsolateData::Get(isolate);

deps/v8/src/runtime/runtime-promise.cc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,10 @@ RUNTIME_FUNCTION(Runtime_PromiseRejectAfterResolved) {
3434
HandleScope scope(isolate);
3535
DirectHandle<JSPromise> promise = args.at<JSPromise>(0);
3636
DirectHandle<Object> reason = args.at(1);
37+
START_ALLOW_USE_DEPRECATED();
3738
isolate->ReportPromiseReject(promise, reason,
3839
v8::kPromiseRejectAfterResolved);
40+
END_ALLOW_USE_DEPRECATED();
3941
return ReadOnlyRoots(isolate).undefined_value();
4042
}
4143

@@ -44,8 +46,10 @@ RUNTIME_FUNCTION(Runtime_PromiseResolveAfterResolved) {
4446
HandleScope scope(isolate);
4547
DirectHandle<JSPromise> promise = args.at<JSPromise>(0);
4648
DirectHandle<Object> resolution = args.at(1);
49+
START_ALLOW_USE_DEPRECATED();
4750
isolate->ReportPromiseReject(promise, resolution,
4851
v8::kPromiseResolveAfterResolved);
52+
END_ALLOW_USE_DEPRECATED();
4953
return ReadOnlyRoots(isolate).undefined_value();
5054
}
5155

deps/v8/test/cctest/test-api.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16438,6 +16438,7 @@ void PromiseRejectCallback(v8::PromiseRejectMessage reject_message) {
1643816438
CHECK(reject_message.GetValue().IsEmpty());
1643916439
break;
1644016440
}
16441+
START_ALLOW_USE_DEPRECATED();
1644116442
case v8::kPromiseRejectAfterResolved: {
1644216443
promise_reject_after_resolved_counter++;
1644316444
break;
@@ -16446,6 +16447,7 @@ void PromiseRejectCallback(v8::PromiseRejectMessage reject_message) {
1644616447
promise_resolve_after_resolved_counter++;
1644716448
break;
1644816449
}
16450+
END_ALLOW_USE_DEPRECATED();
1644916451
}
1645016452
}
1645116453

deps/v8/test/inspector/isolate-data.cc

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -401,10 +401,15 @@ void InspectorIsolateData::PromiseRejectHandler(v8::PromiseRejectMessage data) {
401401
v8_inspector::StringView(reinterpret_cast<const uint8_t*>(reason_str),
402402
strlen(reason_str)));
403403
return;
404-
} else if (data.GetEvent() == v8::kPromiseRejectAfterResolved ||
405-
data.GetEvent() == v8::kPromiseResolveAfterResolved) {
406-
// Ignore reject/resolve after resolved, like the blink handler.
407-
return;
404+
405+
} else {
406+
START_ALLOW_USE_DEPRECATED();
407+
if (data.GetEvent() == v8::kPromiseRejectAfterResolved ||
408+
data.GetEvent() == v8::kPromiseResolveAfterResolved) {
409+
// Ignore reject/resolve after resolved, like the blink handler.
410+
return;
411+
}
412+
END_ALLOW_USE_DEPRECATED();
408413
}
409414

410415
v8::Local<v8::Value> exception = data.GetValue();

0 commit comments

Comments
 (0)