Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions lib/internal/process/promises.js
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ class PromiseRejectionHandledWarning extends Error {

/**
* @typedef PromiseInfo
* @property {*} reason the reason for the rejection
* @property {unknown} reason the reason for the rejection
* @property {number} uid the unique id of the promise
* @property {boolean} warned whether the rejection has been warned
* @property {object} [domain] the domain the promise was created in
Expand Down Expand Up @@ -153,17 +153,18 @@ function isErrorLike(obj) {
/**
* @param {0|1|2|3} type
* @param {Promise} promise
* @param {Error} reason
* @param {unknown} reason
* @param {Error} rejectionSite
*/
function promiseRejectHandler(type, promise, reason) {
function promiseRejectHandler(type, promise, reason, rejectionSite) {
if (unhandledRejectionsMode === undefined) {
unhandledRejectionsMode = getUnhandledRejectionsMode();
}
// kPromiseRejectAfterResolved and kPromiseResolveAfterResolved are
// filtered out in C++ (src/node_task_queue.cc) and never reach JS.
switch (type) {
case kPromiseRejectWithNoHandler: // 0
unhandledRejection(promise, reason);
unhandledRejection(promise, reason, rejectionSite);
break;
case kPromiseHandlerAddedAfterReject: // 1
handledRejection(promise);
Expand All @@ -184,15 +185,17 @@ const emitUnhandledRejection = (promise, promiseInfo) => {

/**
* @param {Promise} promise
* @param {Error} reason
* @param {unknown} reason
* @param {Error} rejectionSite
*/
function unhandledRejection(promise, reason) {
function unhandledRejection(promise, reason, rejectionSite) {
pendingUnhandledRejections.set(promise, {
reason,
uid: ++lastPromiseId,
warned: false,
domain: process.domain,
contextFrame: AsyncContextFrame.current(),
rejectionSite,
});
setHasRejectionToWarn(true);
}
Expand Down Expand Up @@ -272,7 +275,7 @@ function strictUnhandledRejectionsMode(promise, promiseInfo, promiseAsyncId) {
const err = isErrorLike(reason) ?
reason : new UnhandledPromiseRejection(reason);
// This destroys the async stack, don't clear it after
triggerUncaughtException(err, true /* fromPromise */);
triggerUncaughtException(err, true /* fromPromise */, promiseInfo.rejectionSite);
if (promiseAsyncId !== undefined) {
pushAsyncContext(
promise[kAsyncIdSymbol],
Expand Down Expand Up @@ -321,7 +324,7 @@ function throwUnhandledRejectionsMode(promise, promiseInfo) {
reason :
new UnhandledPromiseRejection(reason);
// This destroys the async stack, don't clear it after
triggerUncaughtException(err, true /* fromPromise */);
triggerUncaughtException(err, true /* fromPromise */, promiseInfo.rejectionSite);
return false;
}
return true;
Expand Down
30 changes: 22 additions & 8 deletions src/node_errors.cc
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,8 @@ enum class EnhanceFatalException { kEnhance, kDontEnhance };
static void ReportFatalException(Environment* env,
Local<Value> error,
Local<Message> message,
EnhanceFatalException enhance_stack) {
EnhanceFatalException enhance_stack,
bool from_promise) {
if (!env->can_call_into_js())
enhance_stack = EnhanceFatalException::kDontEnhance;

Expand Down Expand Up @@ -553,7 +554,11 @@ static void ReportFatalException(Environment* env,
if (env->options()->trace_uncaught) {
Local<StackTrace> trace = message->GetStackTrace();
if (!trace.IsEmpty()) {
FPrintF(stderr, "Thrown at:\n");
if (from_promise) {
FPrintF(stderr, "Rejected at:\n");
} else {
FPrintF(stderr, "Thrown at:\n");
}
PrintStackTrace(env->isolate(), trace);
}
}
Expand Down Expand Up @@ -715,7 +720,7 @@ TryCatchScope::~TryCatchScope() {
EnhanceFatalException::kEnhance : EnhanceFatalException::kDontEnhance;
if (message.IsEmpty())
message = Exception::CreateMessage(env_->isolate(), exception);
ReportFatalException(env_, exception, message, enhance);
ReportFatalException(env_, exception, message, enhance, false);
env_->Exit(ExitCode::kExceptionInFatalExceptionHandler);
}
}
Expand Down Expand Up @@ -1165,13 +1170,21 @@ static void TriggerUncaughtException(const FunctionCallbackInfo<Value>& args) {
Isolate* isolate = args.GetIsolate();
Environment* env = Environment::GetCurrent(isolate);
Local<Value> exception = args[0];
Local<Message> message = Exception::CreateMessage(isolate, exception);
bool from_promise = args[1]->IsTrue();
Local<Value> throw_site = args[2];

Local<Message> message;
if (!throw_site->IsUndefined()) {
message = Exception::CreateMessage(isolate, throw_site);
} else {
message = Exception::CreateMessage(isolate, exception);
}

if (env != nullptr && env->abort_on_uncaught_exception()) {
ReportFatalException(
env, exception, message, EnhanceFatalException::kEnhance);
env, exception, message, EnhanceFatalException::kEnhance, from_promise);
ABORT();
}
bool from_promise = args[1]->IsTrue();
errors::TriggerUncaughtException(isolate, exception, message, from_promise);
}

Expand Down Expand Up @@ -1306,7 +1319,7 @@ void TriggerUncaughtException(Isolate* isolate,
// the current Node.js instance.
if (!fatal_exception_function->IsFunction()) {
ReportFatalException(
env, error, message, EnhanceFatalException::kDontEnhance);
env, error, message, EnhanceFatalException::kDontEnhance, from_promise);
env->Exit(ExitCode::kInvalidFatalExceptionMonkeyPatching);
return;
}
Expand Down Expand Up @@ -1367,7 +1380,8 @@ void TriggerUncaughtException(Isolate* isolate,
}

// Now we are certain that the exception is fatal.
ReportFatalException(env, error, message, EnhanceFatalException::kEnhance);
ReportFatalException(
env, error, message, EnhanceFatalException::kEnhance, from_promise);
RunAtExit(env);

// If the global uncaught exception handler sets process.exitCode,
Expand Down
5 changes: 5 additions & 0 deletions src/node_errors.h
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ void OOMErrorHandler(const char* location, const v8::OOMDetails& details);
V(ERR_TLS_PSK_SET_IDENTITY_HINT_FAILED, Error) \
V(ERR_VM_MODULE_CACHED_DATA_REJECTED, Error) \
V(ERR_VM_MODULE_LINK_FAILURE, Error) \
V(ERR_UNHANDLED_REJECTION, Error) \
V(ERR_WASI_NOT_STARTED, Error) \
V(ERR_ZLIB_INITIALIZATION_FAILED, Error) \
V(ERR_WORKER_INIT_FAILED, Error) \
Expand Down Expand Up @@ -244,6 +245,10 @@ ERRORS_WITH_CODE(V)
V(ERR_SCRIPT_EXECUTION_INTERRUPTED, \
"Script execution was interrupted by `SIGINT`") \
V(ERR_TLS_PSK_SET_IDENTITY_HINT_FAILED, "Failed to set PSK identity hint") \
V(ERR_UNHANDLED_REJECTION, \
"This error originated either by throwing inside of an async function " \
"without a catch block, or by rejecting a promise which was not handled " \
"with .catch().") \
V(ERR_WASI_NOT_STARTED, "wasi.start() has not been called") \
V(ERR_WORKER_INIT_FAILED, "Worker initialization failure") \
V(ERR_PROTO_ACCESS, \
Expand Down
13 changes: 12 additions & 1 deletion src/node_task_queue.cc
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,18 @@ void PromiseRejectCallback(PromiseRejectMessage message) {
value = Undefined(isolate);
}

Local<Value> args[] = { type, promise, value };
Local<Value> rejection_site;
if (event == kPromiseRejectWithNoHandler) {
// Native error carries the throw site. Create a dummy error to capture the
// stack trace where the rejection actually happened, when no native error
// is available.
rejection_site =
value->IsNativeError() ? value : ERR_UNHANDLED_REJECTION(isolate);
} else {
rejection_site = Undefined(isolate);
}

Local<Value> args[] = {type, promise, value, rejection_site};

double async_id = AsyncWrap::kInvalidAsyncId;
double trigger_async_id = AsyncWrap::kInvalidAsyncId;
Expand Down
3 changes: 3 additions & 0 deletions test/fixtures/uncaught/exception_async_tick.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
process.nextTick(() => {
throw null;
});
11 changes: 11 additions & 0 deletions test/fixtures/uncaught/exception_async_tick.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<project-root>/test/fixtures/uncaught/exception_async_tick.js:2
throw null;
^
null
Thrown at:
at <project-root>/test/fixtures/uncaught/exception_async_tick.js:2:3
at <node-internal-frames>


Node.js <node-version>
1 change: 1 addition & 0 deletions test/fixtures/uncaught/exception_null.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
throw null;
11 changes: 11 additions & 0 deletions test/fixtures/uncaught/exception_null.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<project-root>/test/fixtures/uncaught/exception_null.js:1
throw null;
^
null
Thrown at:
at <project-root>/test/fixtures/uncaught/exception_null.js:1:1
at <node-internal-frames>


Node.js <node-version>
8 changes: 8 additions & 0 deletions test/fixtures/uncaught/exception_stack_malformed.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
throw {
get stack() {
throw new Error('weird throw but ok');
},
get name() {
throw new Error('weird throw but ok');
},
};
11 changes: 11 additions & 0 deletions test/fixtures/uncaught/exception_stack_malformed.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<project-root>/test/fixtures/uncaught/exception_stack_malformed.js:1
throw {
^
[object Object]
Thrown at:
at <project-root>/test/fixtures/uncaught/exception_stack_malformed.js:1:1
at <node-internal-frames>


Node.js <node-version>
1 change: 1 addition & 0 deletions test/fixtures/uncaught/exception_symbol.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
throw Symbol('foo');
11 changes: 11 additions & 0 deletions test/fixtures/uncaught/exception_symbol.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<project-root>/test/fixtures/uncaught/exception_symbol.js:1
throw Symbol('foo');
^

Thrown at:
at <project-root>/test/fixtures/uncaught/exception_symbol.js:1:1
at <node-internal-frames>


Node.js <node-version>
1 change: 1 addition & 0 deletions test/fixtures/uncaught/exception_undefined.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
throw undefined;
11 changes: 11 additions & 0 deletions test/fixtures/uncaught/exception_undefined.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

<project-root>/test/fixtures/uncaught/exception_undefined.js:1
throw undefined;
^
undefined
Thrown at:
at <project-root>/test/fixtures/uncaught/exception_undefined.js:1:1
at <node-internal-frames>


Node.js <node-version>
6 changes: 6 additions & 0 deletions test/fixtures/uncaught/rejection_async_fn_throw.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
setImmediate(() => {
(async () => {
await 1;
throw null;
})();
});
14 changes: 14 additions & 0 deletions test/fixtures/uncaught/rejection_async_fn_throw.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<project-root>/test/fixtures/uncaught/rejection_async_fn_throw.js:4
throw null;
^

UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "null".
at <node-internal-frames>
at <node-internal-frames> {
code: 'ERR_UNHANDLED_REJECTION'
}
Rejected at:
at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw.js:4:5


Node.js <node-version>
8 changes: 8 additions & 0 deletions test/fixtures/uncaught/rejection_async_fn_throw_err.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
const err = new Error('err with wrong stack');

setImmediate(() => {
(async () => {
await 1;
throw err;
})();
});
12 changes: 12 additions & 0 deletions test/fixtures/uncaught/rejection_async_fn_throw_err.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6
throw err;
^

Error: err with wrong stack
at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)
at <node-internal-frames>
Rejected at:
at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5


Node.js <node-version>
3 changes: 3 additions & 0 deletions test/fixtures/uncaught/rejection_promise_reject.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
setImmediate(() => {
Promise.reject(null);
});
15 changes: 15 additions & 0 deletions test/fixtures/uncaught/rejection_promise_reject.snapshot
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<project-root>/test/fixtures/uncaught/rejection_promise_reject.js:2
Promise.reject(null);
^

UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "null".
at <node-internal-frames>
at <node-internal-frames> {
code: 'ERR_UNHANDLED_REJECTION'
}
Rejected at:
at <project-root>/test/fixtures/uncaught/rejection_promise_reject.js:2:11
at <node-internal-frames>


Node.js <node-version>
24 changes: 24 additions & 0 deletions test/parallel/test-node-output-trace-uncaught.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import '../common/index.mjs';
import * as fixtures from '../common/fixtures.mjs';
import * as snapshot from '../common/assertSnapshot.js';
import { describe, it } from 'node:test';

describe('--trace-uncaught', { concurrency: !process.env.TEST_PARALLEL }, () => {
const tests = [
{ name: 'uncaught/exception_async_tick.js' },
{ name: 'uncaught/exception_null.js' },
{ name: 'uncaught/exception_stack_malformed.js' },
{ name: 'uncaught/exception_symbol.js' },
{ name: 'uncaught/exception_undefined.js' },
{ name: 'uncaught/rejection_async_fn_throw_err.js' },
{ name: 'uncaught/rejection_async_fn_throw.js' },
{ name: 'uncaught/rejection_promise_reject.js' },
];
for (const { name } of tests) {
it(name, async () => {
await snapshot.spawnAndAssert(fixtures.path(name), snapshot.defaultTransform, {

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / test-linux (ubuntu-24.04-arm)

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/node/node/node/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/node/node/node/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/node/node/node/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/node/node/node/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / test-linux (ubuntu-24.04)

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/node/node/node/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/node/node/node/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/node/node/node/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/node/node/node/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / test-macOS

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/Users/runner/work/node/node/node/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/Users/runner/work/node/node/node/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///Users/runner/work/node/node/node/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /Users/runner/work/node/node/node/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / x86_64-linux: with shared libraries / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / x86_64-darwin: with shared libraries / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / aarch64-darwin: with shared libraries / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /Users/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / aarch64-linux: with shared openssl-1.1.1w / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / aarch64-linux: with shared openssl-3.5.7 / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / aarch64-linux: with shared openssl-3.0.21 / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / aarch64-linux: with shared boringssl-0.20260526.0 / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / aarch64-linux: with shared openssl-3.6.2 / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs

Check failure on line 19 in test/parallel/test-node-output-trace-uncaught.mjs

View workflow job for this annotation

GitHub Actions / aarch64-linux: with shared openssl-4.0.1 / build

--- stdout --- Test failure: 'uncaught/rejection_async_fn_throw_err.js' Location: test/parallel/test-node-output-trace-uncaught.mjs:18:5 AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + actual - expected + '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + + "const err = new Error('err with wrong stack');\n" + + ' ^\n' + - '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + - ' throw err;\n' + - ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + + ' at <node-internal-frames>\n' + - ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '\n' + 'Node.js <node-version>\n' at assertSnapshot (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:173:12) at async Module.spawnAndAssert (/home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/common/assertSnapshot.js:208:3) at async TestContext.<anonymous> (file:///home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs:19:7) at async Test.run (node:internal/test_runner/test:1389:7) at async Suite.processPendingSubtests (node:internal/test_runner/test:960:7) { generatedMessage: true, code: 'ERR_ASSERTION', actual: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1\n' + "const err = new Error('err with wrong stack');\n" + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13\n' + ' at <node-internal-frames>\n' + '...', expected: '<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6\n' + ' throw err;\n' + ' ^\n' + '\n' + 'Error: err with wrong stack\n' + ' at Object.<anonymous> (<project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:1:13)\n' + ' at <node-internal-frames>\n' + 'Rejected at:\n' + ' at <project-root>/test/fixtures/uncaught/rejection_async_fn_throw_err.js:6:5\n' + '\n' + '...', operator: 'strictEqual', diff: 'simple' } Command: out/Release/node --test-reporter=./test/common/test-error-reporter.js --test-reporter-destination=stdout /home/runner/work/_temp/node-v27.0.0-nightly2026-06-29c21cee7487-slim/test/parallel/test-node-output-trace-uncaught.mjs
flags: ['--trace-uncaught'],
});
});
}
});
27 changes: 0 additions & 27 deletions test/parallel/test-throw-error-with-getter-throw-traced.mjs

This file was deleted.

Loading
Loading