GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — test: don't remove empty.txt on win32 by rvagg · Pull Request #2 · nodejs/node

Conversation

@rvagg

@rvagg rvagg commented Nov 27, 2014

Copy link
Copy Markdown
Member

Take 3: on win32 we use empty.txt in the fixtures directory, otherwise we use a file constructed specifically for this test due to POSIX socket path length limitations, in which case we need to do appropriate cleanup. Cleaning up empty.txt in fixtures causes downstream problems for other tests using it (currently the next test is test-zlib).

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

measymmetric reacted with heart emoji
All reactions
  • ❤️ 1 reaction
@rvagg
test: don't remove empty.txt on win32
9006e94
on win32 we use empty.txt in the fixtures directory, otherwise we
use a file constructed specifically for this test due to POSIX
socket path length limitations, in which case we need to do
appropriate cleanup
@indutny

indutny commented Nov 28, 2014

Copy link
Copy Markdown
Member

LGTM

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bnoordhuis

bnoordhuis commented Nov 28, 2014

Copy link
Copy Markdown
Member

Another LGTM.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bnoordhuis

bnoordhuis commented Nov 28, 2014

Copy link
Copy Markdown
Member

@rvagg By the way, do you have commit rights? I'd like you to land your patches yourself.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@rvagg

rvagg commented Nov 28, 2014

Copy link
Copy Markdown
Member Author

@bnoordhuis sure, is there anything special I need to know about the normal merge procedure?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bnoordhuis

bnoordhuis commented Nov 29, 2014

Copy link
Copy Markdown
Member

@rvagg Just the normal commit log as described in CONTRIBUTING.md plus PR-URL and Reviewed-By tags. Basically, what you see when you run git log now.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@rvagg
rvagg merged this pull request into v0.12 Nov 29, 2014
@rvagg
rvagg deleted the test-net-pipe-connect-errors-socket-path-win-fix-2 branch November 29, 2014 01:00
rvagg added a commit that referenced this pull request Nov 29, 2014
@rvagg
test: don't remove empty.txt on win32
013527a
on win32 we use empty.txt in the fixtures directory, otherwise we
use a file constructed specifically for this test due to POSIX
socket path length limitations, in which case we need to do
appropriate cleanup

Reviewed-By: Fedor Indutny <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
PR-URL: #2
@jmar777 jmar777 mentioned this pull request Feb 21, 2015
Feature Request: Every async function returns Promise #11
Closed
@JediMindtrick JediMindtrick mentioned this pull request Apr 4, 2015
io.js community thoughts on reconciliation #1336
Closed
@yjhjstz yjhjstz mentioned this pull request May 14, 2015
DebuggerAgent: unhandled socket error event #781
Closed
@dashed dashed mentioned this pull request May 31, 2015
a more deliberate release process #1854
Closed
@Fishrock123 Fishrock123 mentioned this pull request Jun 21, 2015
test: regression for fs module monkey-patching #2026
Closed
@snorp snorp mentioned this pull request Aug 7, 2015
Timeouts sometimes not fired on Linux/ARM #2326
Closed
@silverwind silverwind mentioned this pull request Sep 23, 2015
doc: jenkins-iojs.nodesource.com -> ci.nodejs.org, iojs.org/download -> nodejs.org/download #2886
Closed
@jasnell jasnell mentioned this pull request Oct 12, 2015
Release procedure notes #3254
Closed
@silverwind silverwind mentioned this pull request Oct 14, 2015
Consistent error messages in all modules #3374
Closed
@kvic-z kvic-z mentioned this pull request Oct 27, 2015
compile error ,target=arm7 #3224
Closed
jasnell added a commit that referenced this pull request Nov 2, 2015
@jasnell
2015-10-29, Version 4.2.2 RC2 (LTS)
dd1f411
Release Candidate #2
@jasnell jasnell mentioned this pull request Nov 16, 2015
doc: add link to [customizing util.inspect colors]. #3749
Closed
@chvostek chvostek mentioned this pull request Nov 20, 2015
Is it possible to provide binary for FreeBSD #3716
Closed
@gireeshpunathil gireeshpunathil mentioned this pull request Nov 24, 2015
Segfault in node::StreamBase::GetFD #2847
Closed
@alanpurple alanpurple mentioned this pull request Dec 8, 2015
v8 4.6.85.31 typed array bug #4191
Closed
@jianpingw jianpingw mentioned this pull request Dec 13, 2015
node js 5.2.0 segmentation fault after console.log #4261
Closed
@khagankhan khagankhan mentioned this pull request Oct 13, 2023
Use of Uninitialized Memory Detected in bytecode_builtins_list_generator by MemorySanitizer #50171
Closed
@orsett0 orsett0 mentioned this pull request Dec 28, 2023
Segmentation fault when allocating memory in WASM #51303
Closed
@bocchi810 bocchi810 mentioned this pull request Jan 4, 2024
Can't build on gcc-g++ 14.0.0 #51369
Closed
@MylesBorins MylesBorins mentioned this pull request Jan 10, 2024
enable corepack by default #50963
Closed
@kshaa kshaa mentioned this pull request Mar 1, 2024
Stream memory leak in 20.11.1 #51936
Closed
@eugeneo eugeneo mentioned this pull request Apr 15, 2024
src: fix Worker termination in inspector.waitForDebugger #52527
Merged
@benjamingr benjamingr mentioned this pull request Jun 28, 2024
Nominating @MattiasBuelens as collaborator #52831
Closed
@avivkeller avivkeller mentioned this pull request Jul 6, 2024
doc: fix that 22.x docs scroll to wrong locations #53662
Merged
@Qard Qard mentioned this pull request Feb 3, 2025
src: fix platform shutdown deadlock #56827
Closed
@siwenwang0803

siwenwang0803 commented Jun 29, 2025

Copy link
Copy Markdown

🤖 Secure-PR-Guard AI Code Review

Analysis completed at: 2025-06-28 20:39:59 UTC
PR: #2

🟡 Risk Assessment: MEDIUM

  • Total Issues Found: 4
  • Security Issues: 0

🟢 Low Priority Issues

  • Line 45 (length): Line 45 exceeds 120 characters.
  • Line 49 (length): Line 49 exceeds 120 characters.
  • Line 51 (length): Line 51 exceeds 120 characters.
  • Line 53 (length): Line 53 exceeds 120 characters.

🔗 Powered by Secure-PR-Guard | 🛡️ OWASP LLM Top 10 Compliant

This is an automated review. Please verify critical security findings manually.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@siwenwang0803

siwenwang0803 commented Jun 29, 2025

Copy link
Copy Markdown

🤖 Secure-PR-Guard AI Code Review

Analysis completed at: 2025-06-28 21:19:12 UTC
PR: #2

🟡 Risk Assessment: MEDIUM

  • Total Issues Found: 2
  • Security Issues: 0

🟢 Low Priority Issues

  • Line 20 (length): Line exceeds 120 characters, consider breaking it into multiple lines for better readability.
  • Line 17 (style): Use of inconsistent indentation; consider using 2 spaces for proper code alignment instead of mixing styles.

🔗 Powered by Secure-PR-Guard | 🛡️ OWASP LLM Top 10 Compliant

This is an automated review. Please verify critical security findings manually.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@ronking-zhu ronking-zhu mentioned this pull request Oct 13, 2025
Nodejs official released build has conflict with msodbcsql driver due to incompatible openssl version #60240
Closed
@Mohit-Raj-Saxena Mohit-Raj-Saxena mentioned this pull request Oct 16, 2025
Multiple Documentation Issues in fs and fs/promises Modules (Formatting, Consistency, and Clarity) #60280
Closed
@sadan4 sadan4 mentioned this pull request Nov 5, 2025
NodeJS segfaults when trying to debug this code #60580
Closed
@jackzhp jackzhp mentioned this pull request Nov 5, 2025
Large file download (above 50MB, without "range processing") results in HTTP2_PROTOCOL_ERROR in Chrome #59465
Closed
nabsul added a commit to nabsul/node that referenced this pull request Nov 18, 2025
@nabsul
Try nodejs#2
42d0f18
Copilot AI referenced this pull request in Multi-V-VM/node-wasix32 Mar 20, 2026
@tonidy
Merge pull request #2 from tonidy/claude/fix-v8-timedeltanamespace-01…
9f9e4e2
…YErq3jenbmvHPj2ccYEnYH
ndossche added a commit to ndossche/node that referenced this pull request May 21, 2026
@ndossche
src: fix edge case when deflateInit2() fails with Z_VERSION_ERROR
c6ea900
This function call can fail with `Z_VERSION_ERROR` if the compiled
library vs loaded library mismatched in version number or in
stream structure size.
In those cases, zlib doesn't initialize the `strm_.msg` field to
null. Therefore, when a `CompressionError` object is created via
`ErrorForMessage()`, it can read a stale or uninitialized `strm_.msg`
pointer that will cause a crash.

Example ASAN report:
```
AddressSanitizer: SEGV on unknown address
    #0 __strlen_avx2
        string/../sysdeps/x86_64/multiarch/strlen-avx2.S:76
    nodejs#1 strlen (/work/node/out/Debug/node+0x1a42ab7)
    nodejs#2 v8::(anonymous namespace)::StringLength(char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7581:16
    nodejs#3 v8::(anonymous namespace)::StringLength(unsigned char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7587:10
    nodejs#4 v8::String::NewFromOneByte(v8::Isolate*,
        unsigned char const*, v8::NewStringType, int)
        /work/node/out/../deps/v8/src/api/api.cc:7677:3
    nodejs#5 node::OneByteString(v8::Isolate*,
        char const*, int, v8::NewStringType)
        /work/node/out/../src/util-inl.h:166:10
    nodejs#6 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::EmitError(node::(anonymous namespace)
        ::CompressionError const&)
        /work/node/out/../src/node_zlib.cc:565:7
    nodejs#7 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::CheckError()
        /work/node/out/../src/node_zlib.cc:519:5
    nodejs#8 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::AfterThreadPoolWork(int)
        /work/node/out/../src/node_zlib.cc:543:10
    nodejs#9 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::operator()(uv_work_s*, int) const
        /work/node/out/../src/threadpoolwork-inl.h:57:15
    nodejs#10 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::__invoke(uv_work_s*, int)
        /work/node/out/../src/threadpoolwork-inl.h:48:7
    nodejs#11 uv__work_done /work/libuv-1.51.0/src/threadpool.c:330:5
    nodejs#12 uv__async_io.part.0
        /work/libuv-1.51.0/src/unix/async.c:208:5
```

Signed-off-by: ndossche <[email protected]>
nodejs-github-bot pushed a commit that referenced this pull request Jun 2, 2026
@ndossche
src: fix edge case when deflateInit2() fails with Z_VERSION_ERROR
458c37b
This function call can fail with `Z_VERSION_ERROR` if the compiled
library vs loaded library mismatched in version number or in
stream structure size.
In those cases, zlib doesn't initialize the `strm_.msg` field to
null. Therefore, when a `CompressionError` object is created via
`ErrorForMessage()`, it can read a stale or uninitialized `strm_.msg`
pointer that will cause a crash.

Example ASAN report:
```
AddressSanitizer: SEGV on unknown address
    #0 __strlen_avx2
        string/../sysdeps/x86_64/multiarch/strlen-avx2.S:76
    #1 strlen (/work/node/out/Debug/node+0x1a42ab7)
    #2 v8::(anonymous namespace)::StringLength(char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7581:16
    #3 v8::(anonymous namespace)::StringLength(unsigned char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7587:10
    #4 v8::String::NewFromOneByte(v8::Isolate*,
        unsigned char const*, v8::NewStringType, int)
        /work/node/out/../deps/v8/src/api/api.cc:7677:3
    #5 node::OneByteString(v8::Isolate*,
        char const*, int, v8::NewStringType)
        /work/node/out/../src/util-inl.h:166:10
    #6 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::EmitError(node::(anonymous namespace)
        ::CompressionError const&)
        /work/node/out/../src/node_zlib.cc:565:7
    #7 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::CheckError()
        /work/node/out/../src/node_zlib.cc:519:5
    #8 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::AfterThreadPoolWork(int)
        /work/node/out/../src/node_zlib.cc:543:10
    #9 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::operator()(uv_work_s*, int) const
        /work/node/out/../src/threadpoolwork-inl.h:57:15
    #10 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::__invoke(uv_work_s*, int)
        /work/node/out/../src/threadpoolwork-inl.h:48:7
    #11 uv__work_done /work/libuv-1.51.0/src/threadpool.c:330:5
    #12 uv__async_io.part.0
        /work/libuv-1.51.0/src/unix/async.c:208:5
```

Signed-off-by: ndossche <[email protected]>
PR-URL: #63476
Reviewed-By: Anna Henningsen <[email protected]>
cs01 added a commit to cs01/node that referenced this pull request Jun 10, 2026
@cs01
fs+test: flush option on writeFile/appendFile (sync/cb/promises) call…
4acda72
…ing fs.fsyncSync/fsync through module.exports so spies see it, ERR_INVALID_ARG_TYPE validation; node:test gets t.test subtests (inline, sequential, done-callback style), per-context t.mock with auto-restore, mock calls record error field; painpoints doc: nodejs#1/nodejs#2 marked resolved in milo compiler. fixes write-file-flush + append-file-flush, write/append cluster 13/13
aduh95 pushed a commit that referenced this pull request Jun 18, 2026
@ndossche @aduh95
src: fix edge case when deflateInit2() fails with Z_VERSION_ERROR
d82d369
This function call can fail with `Z_VERSION_ERROR` if the compiled
library vs loaded library mismatched in version number or in
stream structure size.
In those cases, zlib doesn't initialize the `strm_.msg` field to
null. Therefore, when a `CompressionError` object is created via
`ErrorForMessage()`, it can read a stale or uninitialized `strm_.msg`
pointer that will cause a crash.

Example ASAN report:
```
AddressSanitizer: SEGV on unknown address
    #0 __strlen_avx2
        string/../sysdeps/x86_64/multiarch/strlen-avx2.S:76
    #1 strlen (/work/node/out/Debug/node+0x1a42ab7)
    #2 v8::(anonymous namespace)::StringLength(char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7581:16
    #3 v8::(anonymous namespace)::StringLength(unsigned char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7587:10
    #4 v8::String::NewFromOneByte(v8::Isolate*,
        unsigned char const*, v8::NewStringType, int)
        /work/node/out/../deps/v8/src/api/api.cc:7677:3
    #5 node::OneByteString(v8::Isolate*,
        char const*, int, v8::NewStringType)
        /work/node/out/../src/util-inl.h:166:10
    #6 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::EmitError(node::(anonymous namespace)
        ::CompressionError const&)
        /work/node/out/../src/node_zlib.cc:565:7
    #7 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::CheckError()
        /work/node/out/../src/node_zlib.cc:519:5
    #8 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::AfterThreadPoolWork(int)
        /work/node/out/../src/node_zlib.cc:543:10
    #9 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::operator()(uv_work_s*, int) const
        /work/node/out/../src/threadpoolwork-inl.h:57:15
    #10 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::__invoke(uv_work_s*, int)
        /work/node/out/../src/threadpoolwork-inl.h:48:7
    #11 uv__work_done /work/libuv-1.51.0/src/threadpool.c:330:5
    #12 uv__async_io.part.0
        /work/libuv-1.51.0/src/unix/async.c:208:5
```

Signed-off-by: ndossche <[email protected]>
PR-URL: #63476
Reviewed-By: Anna Henningsen <[email protected]>
aduh95 pushed a commit that referenced this pull request Jun 25, 2026
@ndossche @aduh95
src: fix edge case when deflateInit2() fails with Z_VERSION_ERROR
2f4e596
This function call can fail with `Z_VERSION_ERROR` if the compiled
library vs loaded library mismatched in version number or in
stream structure size.
In those cases, zlib doesn't initialize the `strm_.msg` field to
null. Therefore, when a `CompressionError` object is created via
`ErrorForMessage()`, it can read a stale or uninitialized `strm_.msg`
pointer that will cause a crash.

Example ASAN report:
```
AddressSanitizer: SEGV on unknown address
    #0 __strlen_avx2
        string/../sysdeps/x86_64/multiarch/strlen-avx2.S:76
    #1 strlen (/work/node/out/Debug/node+0x1a42ab7)
    #2 v8::(anonymous namespace)::StringLength(char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7581:16
    #3 v8::(anonymous namespace)::StringLength(unsigned char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7587:10
    #4 v8::String::NewFromOneByte(v8::Isolate*,
        unsigned char const*, v8::NewStringType, int)
        /work/node/out/../deps/v8/src/api/api.cc:7677:3
    #5 node::OneByteString(v8::Isolate*,
        char const*, int, v8::NewStringType)
        /work/node/out/../src/util-inl.h:166:10
    #6 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::EmitError(node::(anonymous namespace)
        ::CompressionError const&)
        /work/node/out/../src/node_zlib.cc:565:7
    #7 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::CheckError()
        /work/node/out/../src/node_zlib.cc:519:5
    #8 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::AfterThreadPoolWork(int)
        /work/node/out/../src/node_zlib.cc:543:10
    #9 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::operator()(uv_work_s*, int) const
        /work/node/out/../src/threadpoolwork-inl.h:57:15
    #10 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::__invoke(uv_work_s*, int)
        /work/node/out/../src/threadpoolwork-inl.h:48:7
    #11 uv__work_done /work/libuv-1.51.0/src/threadpool.c:330:5
    #12 uv__async_io.part.0
        /work/libuv-1.51.0/src/unix/async.c:208:5
```

Signed-off-by: ndossche <[email protected]>
PR-URL: #63476
Reviewed-By: Anna Henningsen <[email protected]>
aduh95 pushed a commit that referenced this pull request Jul 30, 2026
@ndossche @aduh95
src: fix edge case when deflateInit2() fails with Z_VERSION_ERROR
44976c6
This function call can fail with `Z_VERSION_ERROR` if the compiled
library vs loaded library mismatched in version number or in
stream structure size.
In those cases, zlib doesn't initialize the `strm_.msg` field to
null. Therefore, when a `CompressionError` object is created via
`ErrorForMessage()`, it can read a stale or uninitialized `strm_.msg`
pointer that will cause a crash.

Example ASAN report:
```
AddressSanitizer: SEGV on unknown address
    #0 __strlen_avx2
        string/../sysdeps/x86_64/multiarch/strlen-avx2.S:76
    #1 strlen (/work/node/out/Debug/node+0x1a42ab7)
    #2 v8::(anonymous namespace)::StringLength(char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7581:16
    #3 v8::(anonymous namespace)::StringLength(unsigned char const*)
        /work/node/out/../deps/v8/src/api/api.cc:7587:10
    #4 v8::String::NewFromOneByte(v8::Isolate*,
        unsigned char const*, v8::NewStringType, int)
        /work/node/out/../deps/v8/src/api/api.cc:7677:3
    #5 node::OneByteString(v8::Isolate*,
        char const*, int, v8::NewStringType)
        /work/node/out/../src/util-inl.h:166:10
    #6 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::EmitError(node::(anonymous namespace)
        ::CompressionError const&)
        /work/node/out/../src/node_zlib.cc:565:7
    #7 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::CheckError()
        /work/node/out/../src/node_zlib.cc:519:5
    #8 node::(anonymous namespace)::CompressionStream<
        node::(anonymous namespace)::ZlibContext>
        ::AfterThreadPoolWork(int)
        /work/node/out/../src/node_zlib.cc:543:10
    #9 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::operator()(uv_work_s*, int) const
        /work/node/out/../src/threadpoolwork-inl.h:57:15
    #10 node::ThreadPoolWork::ScheduleWork()
        ::'lambda'(uv_work_s*, int)
        ::__invoke(uv_work_s*, int)
        /work/node/out/../src/threadpoolwork-inl.h:48:7
    #11 uv__work_done /work/libuv-1.51.0/src/threadpool.c:330:5
    #12 uv__async_io.part.0
        /work/libuv-1.51.0/src/unix/async.c:208:5
```

Signed-off-by: ndossche <[email protected]>
PR-URL: #63476
Reviewed-By: Anna Henningsen <[email protected]>
Alhamdulillah-R added a commit to Alhamdulillah-R/nodejs-by-rex-realm-time-frozen that referenced this pull request Sep 5, 2026
@Alhamdulillah-R @claude
feat: RexMirror.stack.setFrameBoundary keeps host frames out of a vm.…
d2e7663
…Context

Code under vm.runInContext could read the whole host stack out of its own
errors: `at Script.runInContext (node:vm:150:12)` and framework file paths sat
right under the target's own frames, where a real browser realm shows nothing
but its own. JS cannot close this. Error.prepareStackTrace has to stay
undefined in web content or it is itself the tell, captureStackTrace only trims
at construction, an Error constructor wrapper never sees the TypeErrors V8
throws itself, and lowering stackTraceLimit cuts the target's own frames too.

V8 already does the right thing and Node turns it off. VisitStack drops frames
whose native context holds a different security token than the context
capturing the stack, and StackTrace::kDetailed does not carry
kExposeFramesAcrossSecurityOrigins, so the filter is live for error.stack --
that is how one browser realm stays out of another's. node_contextify then
hands every vm.Context the main context's token, and the filter never fires.

So a boundary context is simply one holding its own token. The catch is that
V8 access-checks every JSGlobalProxy and Isolate::MayAccess denies outright
when the tokens differ and no callback is installed, which is why the token is
shared in the first place. Contextify now installs an always-allow callback:
contexts that share a token clear the check on the token comparison and never
reach it, so nothing changes until a boundary is set, and vm was never a
security boundary between host and sandbox. Cost of the extra check on the
global proxy is under 1% (4e6 intercepted global accesses: 1714ms -> 1722ms),
because the property interceptors already own that path.

Because the filter runs while the stack is captured rather than while it is
formatted, it covers errors V8 throws itself and target code that installs its
own Error.prepareStackTrace to read CallSite objects directly. Measured on a
context with the boundary on, the frames V8 hands out go from

    blob:x:inner | blob:x:outer | blob:x | node:vm | host.js | node:internal/...

to

    blob:x:inner | blob:x:outer | blob:x

The Error surface stays browser-shaped: stackTraceLimit 10, prepareStackTrace
undefined, captureStackTrace a function.

Ships as release nodejs#2, "She was more like a beauty queen from a movie scene"
(Billie Jean). The clock-surface test now pins the shape of the release record
instead of the words, so a new lyric no longer edits a test.

Requested by the rex-mirror-realm worker semantics work, where the two probes
still red are "no node: internal frames in the stack" and "no host disk paths
in the stack".

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_013ng1GuMcCzJEFDAAEmujWC
@shoemoney shoemoney mentioned this pull request Sep 10, 2026
fix(fs): use libuv for recursive cpSync to avoid VirtioFS EACCES #65547
Open
@thawkhant thawkhant mentioned this pull request Sep 17, 2026
V8 Turboshaft LLE alias bug (554421904) not backported to V8 14.6 (Node.js v26) #66083
Open
@ShogunPanda ShogunPanda mentioned this pull request Oct 5, 2026
src: do not use --allow-overwriting-for-next-flag #66524
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

5 participants

@rvagg @indutny @bnoordhuis @siwenwang0803 @MikeBravoE
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.