-
-
Notifications
You must be signed in to change notification settings - Fork 34.4k
[v25.x backport] util: fix nested proxy inspection #61152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
LiviaMedeiros
wants to merge
159
commits into
nodejs:v25.x-staging
Choose a base branch
from
LiviaMedeiros:backport-61077-to-25
base: v25.x-staging
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
[v25.x backport] util: fix nested proxy inspection #61152
LiviaMedeiros
wants to merge
159
commits into
nodejs:v25.x-staging
from
LiviaMedeiros:backport-61077-to-25
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This reverts commit 8a6de38. PR-URL: nodejs#60774 Reviewed-By: Richard Lau <[email protected]> Reviewed-By: René <[email protected]> Reviewed-By: Jake Yuesong Li <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Xuguang Mei <[email protected]>
Instead of polyfilling it with vm.SourceTextModule, use a built-in source text module loader so that we can also build the code cache for it at build tiem to embed the code cache for them in the binary. Drive-by: instead of inferring how to compile a particular built-in at run time, do the inferring at build time, so the function-based built-ins can be compiled using parameters quickly looked up from a static map, and the builtins that should be compiled as source text modules are known internally based on extension in the source code (at run time, the extensions are all removed). PR-URL: nodejs#60518 Reviewed-By: Aditi Singh <[email protected]> Reviewed-By: Marco Ippolito <[email protected]>
PR-URL: nodejs#60641 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Chengzhong Wu <[email protected]>
This test contains too many independent test cases and as a result, marking it as flaky on all major platforms means actual regressions could be covered up, and it's constantly making the CI orange and requires extra resuming on the flaked platforms which is still not great. Split it into individual files so that the actual flake can be identified out of the monolith. PR-URL: nodejs#60653 Refs: nodejs#54534 Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Chemi Atlow <[email protected]> Reviewed-By: Benjamin Gruenbaum <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
Recent architectures like RISC-V does not support open syscall,
which will cause strace to fail and thus test failure.
AssertionError [ERR_ASSERTION]: strace: invalid system call 'open'
This patch disables tracing open syscall for RISC-V in the test to fix
the test failure.
PR-URL: nodejs#60588
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
For riscv64, the most commonly supported paging mode is sv39, which allocates 256GiB of virtual address space for the user space. However, due to trap handler security mechanism in V8, creating a wasm memory will cost 8GiB of continuous virtual address space. In a fresh node repl, I could only create 27 WebAssembly.Memory instances. When the virtual address space is more fragmented, it is worse. The wpt tests are randomly failing on riscv64 due to insufficient virtual address space to create wasm memories. This PR fixes it by limiting the concurrency of the WPTRunner to prevent the tests from creating too many wasm memories. PR-URL: nodejs#60591 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
PR-URL: nodejs#60645 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: Jake Yuesong Li <[email protected]>
PR-URL: nodejs#60644 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: Rafael Gonzaga <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Ulises Gascón <[email protected]>
The original benchmark uses a not very realistic fixture (it has a huge try-catch block that would throw on the first line and then export at the end, hardly representative of real-world code). Also, it measures the entire import including evaluation, not just parsing. This updates the name to import-cjs to be more accurate, and use the typescript.js as the fixture which has been reported to be slow to import, leading users to use require() to work around the peformance impact. It splits the measurement into two different types: parsing CJS for the first time (where the overhead of loading the lexer makes a difference) and parsing CJS after the lexer has been loaded. PR-URL: nodejs#60663 Refs: nodejs#59913 Reviewed-By: Geoffrey Booth <[email protected]> Reviewed-By: Yagiz Nizipli <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
The synchronous version has been available since 1.4.0. PR-URL: nodejs#60663 Refs: nodejs#59913 Reviewed-By: Geoffrey Booth <[email protected]> Reviewed-By: Yagiz Nizipli <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
PR-URL: nodejs#60675 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Xuguang Mei <[email protected]>
PR-URL: nodejs#60676 Refs: actions/runner-images#13046 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Xuguang Mei <[email protected]>
Correct wrong object identifiers listed for slh-dsa algorithms in doc/api/crypto.md. the valid range is from id-slh-dsa-sha2-128s (2.16.840.1.101.3.4.3.20) through id-slh-dsa-shake-256f (2.16.840.1.101.3.4.3.31), as defined in the ietf draft-ietf-lamps-x509-slhdsa. Fixes: nodejs#60680 Refs: https://datatracker.ietf.org/doc/draft-ietf-lamps-x509-slhdsa/ PR-URL: nodejs#60681 Reviewed-By: Filip Skokan <[email protected]> Reviewed-By: Xuguang Mei <[email protected]>
PR-URL: nodejs#60623 Reviewed-By: Rafael Gonzaga <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
PR-URL: nodejs#60473 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Chengzhong Wu <[email protected]> Reviewed-By: Anna Henningsen <[email protected]>
PR-URL: nodejs#60586 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Anna Henningsen <[email protected]>
PR-URL: nodejs#60503 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: nodejs#60690 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Xuguang Mei <[email protected]>
Fixes: nodejs#60536 PR-URL: nodejs#60714 Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]>
PR-URL: nodejs#60646 Reviewed-By: Rafael Gonzaga <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]>
Fixes: nodejs#60697 PR-URL: nodejs#60699 Reviewed-By: Tim Perry <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Ethan Arrowood <[email protected]>
PR-URL: nodejs#60702 Reviewed-By: Filip Skokan <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Richard Lau <[email protected]>
PR-URL: nodejs#60634 Reviewed-By: Colin Ihrig <[email protected]>
PR-URL: nodejs#60705 Reviewed-By: Chengzhong Wu <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
PR-URL: nodejs#60707 Refs: nodejs/admin#1005 Reviewed-By: Michaël Zasso <[email protected]> Reviewed-By: Filip Skokan <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: Rafael Gonzaga <[email protected]> Reviewed-By: Chengzhong Wu <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Ulises Gascón <[email protected]>
PR-URL: nodejs#60558 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Juan José Arboleda <[email protected]>
PR-URL: nodejs#60143 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: LiviaMedeiros <[email protected]>
PR-URL: nodejs#60200 Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
Add support for the creation of ReadableByteStream to Readable.toWeb()
and Duplex.toWeb()
This enables the use of .getReader({ mode: "byob" }) on
e.g. socket().toWeb()
Refs: nodejs#56004 (comment)
Refs: https://developer.mozilla.org/en-US/docs/Web/API/Streams_API/Using_readable_byte_streams
PR-URL: nodejs#58664
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Ethan Arrowood <[email protected]>
Reviewed-By: Mattias Buelens <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Signed-off-by: RafaelGSS <[email protected]> PR-URL: nodejs#60668 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Ulises Gascón <[email protected]>
Refs: nodejs#60746 (review) PR-URL: nodejs#60929 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
PR-URL: nodejs#60376 Fixes: nodejs#60322 Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Geoffrey Booth <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]>
Adds links to the File modes section from fsPromises.open(), fsPromises.mkdir(), and fs.mkdir() to improve discoverability of file permission documentation. PR-URL: nodejs#60286 Reviewed-By: Ulises Gascón <[email protected]>
PR-URL: nodejs#60911 Reviewed-By: Chengzhong Wu <[email protected]>
PR-URL: nodejs#60912 Reviewed-By: Benjamin Gruenbaum <[email protected]>
Original commit message:
[regexp] Fix modifiers for ChoiceNodes
Each alternative might modify flags when their sub-graph is emitted.
We need to restore flags to the value at the beginning of a ChoiceNode
for each alternative.
Drive-by: Move regexp-modifiers test out of harmony/
Fixed: 447583670
Change-Id: I9f41e51f34df7659461da0a4fcd28b7e157f52e1
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6995181
Reviewed-by: Jakob Linke <[email protected]>
Commit-Queue: Patrick Thier <[email protected]>
Cr-Commit-Position: refs/heads/main@{#102838}
Refs: v8/v8@72b0e27
Refs: nodejs#60030
PR-URL: nodejs#60706
Backport-PR-URL: nodejs#60706
PR-URL: nodejs#60776 Refs: nodejs#60303 Reviewed-By: Matthew Aitken <[email protected]>
388407f to
01643c9
Compare
BridgeAR
approved these changes
Dec 23, 2025
Member
BridgeAR
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just left a nit
Fixes: nodejs#61061 PR-URL: nodejs#61077 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: LiviaMedeiros <[email protected]> Reviewed-By: Juan José Arboleda <[email protected]> Reviewed-By: Gürgün Dayıoğlu <[email protected]>
01643c9 to
cc31e7d
Compare
Contributor
Failed to start CI⚠ Commits were pushed since the last approving review: ⚠ - util: fix nested proxy inspection ✘ Refusing to run CI on potentially unsafe PRhttps://github.com/nodejs/node/actions/runs/20639704552 |
avivkeller
approved these changes
Jan 9, 2026
Collaborator
9f2e230 to
65696e4
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
author ready
PRs that have at least one approval, no pending requests for changes, and a CI started.
needs-ci
PRs that need a full CI run.
util
Issues and PRs related to the built-in util module.
v25.x
Issues that can be reproduced on v25.x or PRs targeting the v25.x-staging branch.
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.
Manual backport was required due to semver-majorPRs that contain breaking changes and should be released in the next major version.
change on
mainthat adjusted formatting for proxies.