Commit graph

1199 commits

Author SHA1 Message Date
Jim Buzbee
1feb2b6421
fix(ext/node): honor flags with respect to reuseAddress when binding to a UDP socket (#28156)
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2025-04-22 17:49:14 +09:00
denobot
9591c11633
chore: forward v2.2.11 release commit to main (#28958)
This is the release commit being forwarded back to main for 2.2.11

---------

Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2025-04-18 17:21:06 +02:00
Yoshiya Hinosawa
016b02d374
fix(ext/node): add assert property to test context object (#28904) 2025-04-17 14:32:48 +09:00
Marvin Hagemeister
a5b407c390
chore: make node test-process-cpuUsage pass (#28912)
We used a different error message by referring to the first parameter as
`previousValue` instead of `prevValue`. Node uses `prevValue` in the
error message.
2025-04-16 08:28:18 +02:00
Bartek Iwańczuk
27651d3c77
refactor(ext/node): use Promise.withResolvers (#28917) 2025-04-15 17:33:53 -04:00
Divy Srivastava
5867988bae
fix(ext/node): Fix Writable.toWeb() (#28914)
Fixes https://github.com/denoland/deno/issues/28905
2025-04-15 20:10:48 +02:00
denobot
2e826dfc9d
chore: forward v2.2.10 release commit to main (#28897)
This is the release commit being forwarded back to main for 2.2.10

Co-authored-by: nathanwhit <nathanwhit@users.noreply.github.com>
Co-authored-by: Nathan Whitaker <nathan@deno.com>
2025-04-14 16:10:16 -07:00
Divy Srivastava
01b6da9d9b
fix(ext/node): upgrade node:stream (#28855)
Ref https://github.com/denoland/deno/issues/28836

This PR replaces the _stream.mjs bundle with a file-by-file port instead. A codemod transpiles Node.js internals to ESM. The codemod performs three tasks: translating CJS to ESM, remapping internal dependencies, and hoisting lazy requires as imports.

The process is fully automated through the `update_node_stream.ts` script, simplifying future internal updates. The script checks out Node.js from a specific tag defined in the `tests/node_compat/runner`.

Additionally, the update enables new tests in our Node test runner and adds features (like compose()) that were missing from the outdated bundle.

## Performance

There is a 140KB+ binary size increase on aarch64-apple-darwin and nop startup time stays the same.
2025-04-14 21:35:34 +05:30
Divy Srivastava
cc8b5217f3
fix(ext/node): querystring fallback to default decoder (#28838)
Enables the full `tests/node_compat/test/parallel/test-querystring.js`
test
2025-04-14 15:17:28 +05:30
Yoshiya Hinosawa
1dfd444901
fix(ext/node): add basic support of suite/describe in node:test (#28847) 2025-04-14 15:44:03 +09:00
Yoshiya Hinosawa
372705a4d7
fix(ext/node): export test as property of default export (#28881) 2025-04-14 14:19:22 +09:00
Nayeem Rahman
98b7554aaf
chore: forward v2.2.9 release commit to main (#28859) 2025-04-11 22:45:54 +00:00
Divy Srivastava
d74a6943a5
fix(ext/node): verbose zlib error messages (#28831) 2025-04-11 17:17:32 +05:30
Divy Srivastava
cedf5c4f6a
fix(ext/node): implement Buffer.copyBytesFrom (#28829)
Enables the full `parallel/test-buffer-from.js` test
2025-04-10 12:05:49 +00:00
Divy Srivastava
0d72316fbf
fix(ext/node): implement finished() for web streams (#28600)
Fixes https://github.com/denoland/deno/issues/28590
2025-04-10 17:23:50 +05:30
Divy Srivastava
1e50c7981b
refactor(ext/node): rewrite HandleWrap in Rust (#28765)
Ports `HandleWrap` and `AsyncWrap` to Rust.
2025-04-10 17:20:25 +05:30
Divy Srivastava
b26c30d938
fix(ext/node): return Buffer from crypto cipher APIs (#28826)
Fixes https://github.com/denoland/deno/issues/28633
2025-04-10 08:01:30 +00:00
Arsh
447b5038c0
fix(ext/node): alias shake-128 and shake-256 hash algorithms (#28451)
Fixes #28442

---------

Signed-off-by: Arsh <69170106+lilnasy@users.noreply.github.com>
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2025-04-10 07:58:44 +00:00
Divy Srivastava
561097dd63
fix(ext/node): implement process.loadEnvFile (#28824)
Fixes https://github.com/denoland/deno/issues/28017
2025-04-10 07:43:29 +00:00
Yoshiya Hinosawa
cb00561e97
fix(ext/node): support input option in spawnSync (#28792) 2025-04-09 13:42:12 +09:00
0hmX
9bc9faff49
fix(ext/node): add support for --no- prefix (allowNegative option) in parseArgs() (#28811) 2025-04-09 12:24:02 +09:00
Nathan Whitaker
6d33141d8d
fix(node): add reset method to event loop delay histogram (#28788)
Fixes https://github.com/denoland/deno/issues/28767

Don't love the `RefCell`, but don't really see a (safe) way around it.
2025-04-07 22:05:53 -07:00
Asher Gomez
52d9fc1499
fix(ext/node): use primordials in ext/node/polyfills/path/separator.ts (#28669) 2025-04-08 10:42:58 +09:00
Sebastien Guillemot
e2341c7949
fix(ext/node): add createReadStream & createWriteStream methods to the FileHandle class (#28700)
Co-authored-by: Nikolay Karadzhov <nkaradzhov89@gmail.com>
Co-authored-by: Yoshiya Hinosawa <stibium121@gmail.com>
2025-04-07 17:13:32 +09:00
Asher Gomez
ec8e4af85b
fix(ext/node): use primordials in ext/node/polyfills/path/_win32.ts (#28668) 2025-04-07 16:54:54 +09:00
Asher Gomez
0934841fcc
fix(ext/node): use primordials in ext/node/polyfills/path/_posix.ts (#28665) 2025-04-07 16:49:52 +09:00
denobot
1086a75cc9
chore: forward v2.2.8 release commit to main (#28762)
Co-authored-by: dsherret <dsherret@users.noreply.github.com>
2025-04-05 03:09:25 +00:00
denobot
08274e0621
chore: forward v2.2.7 release commit to main (#28746)
This is the release commit being forwarded back to main for 2.2.7

Signed-off-by: Divy Srivastava <dj.srivastava23@gmail.com>
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2025-04-04 16:14:30 +05:30
Yoshiya Hinosawa
f2d73abdd7
fix(ext/node): better dns.lookup compatibility (#27936) 2025-04-02 11:38:07 +09:00
Divy Srivastava
5bc4266101
fix(ext/node): sqlite handle empty blob being NULL (#28674)
Fixes https://github.com/denoland/deno/issues/28672
2025-04-01 13:50:26 +00:00
Jake Champion
0f40ee7ff4
fix(ext/node): support the optional previousValue parameter for process.cpuUsage() (#28550) 2025-04-01 20:48:09 +09:00
Benjamin Swerdlow
cf4afb9c9c
refactor(ext/node): export GlobalsStorage (#28683) 2025-03-31 14:00:05 -04:00
Asher Gomez
3aaa86b5c8
fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_lstat.ts (#28644)
Towards #24236
2025-03-28 10:52:33 -07:00
Asher Gomez
9a13bafa0e
fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_realpath.ts (#28652)
Towards #24236
2025-03-28 09:48:19 +01:00
Asher Gomez
512cf558d4
fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_readv.ts (#28645)
Towards #24236
2025-03-28 09:47:36 +01:00
denobot
a1724f5d5a
chore: forward v2.2.6 release commit to main (#28657)
This is the release commit being forwarded back to main for 2.2.6

Co-authored-by: littledivy <littledivy@users.noreply.github.com>
2025-03-28 13:32:27 +05:30
Yoshiya Hinosawa
6c2f7835c0
fix(ext/node): emit 'close' event on ServerResponse object when client aborted the request (#28601) 2025-03-27 10:45:04 +09:00
Ryan Dahl
7aaec6a5af
chore: upgrade some dependencies (#28627) 2025-03-26 09:49:51 -07:00
Divy Srivastava
52d528d21d
fix(ext/node): mkdir() parse file mode (#28609)
Fixes https://github.com/denoland/deno/issues/28604
2025-03-25 09:33:41 +05:30
Yoshiya Hinosawa
d07b7ea6f6
fix(ext/node): propagate 'close' event of IncomingMessage to Socket (#28582) 2025-03-24 10:56:34 +09:00
c00kie17
208992ad53
fix(ext/node): sqlite error details (#28431)
Improves SQLite error reporting by including `err_code`, `err_str`,
matching Node.js behavior.

Fixes #28289
2025-03-22 07:52:22 +05:30
denobot
43f6137d92
chore: forward v2.2.5 release commit to main (#28579)
NOTE: Commit 27363d389 was incorrectly landed in main before the release
completed and is not included in v2.2.5. The official v2.2.5 release was made
from the v2.2 branch.
2025-03-21 06:25:03 -07:00
snek
d4ee94962f
feat: upgrade deno_core and V8 (#28562)
includes V8 upgrade to 135
2025-03-21 00:19:44 +01:00
Yoshiya Hinosawa
6420e50cd0
fix(ext/node): add util.getCallSites (#28546)
This PR adds
[getCallSites](https://nodejs.org/api/util.html#utilgetcallsitesframecount-options)
API to "node:util".

This unblocks https://github.com/denoland/deno/issues/28318. Currently
the task is blocked by the unavailability of `util.getCallSites` because
it's used in
[`test/common/index.js`](8846b5392f/test/common/index.js (L31))
2025-03-20 21:39:04 +00:00
Divy Srivastava
fb3df15fc8
fix(ext/node): restrict ATTACH DATABASE statement (#28513)
Disable `ATTACH DATABASE` statement in `node:sqlite` since it is not
supervised by Deno's permission system
2025-03-18 22:03:35 +05:30
Jake Champion
5aeb04f443
fix: add stackTraceLimit to ErrorConstructor interface and removed ErrorWithStackTraceLimit interface (#28539)
Signed-off-by: Jake Champion <me@jakechampion.name>
2025-03-18 09:56:39 -04:00
Paolo Barbolini
1516e3ef58
refactor: reduce dependency on futures crate (#28515)
Over time many `futures` APIs have been stabilized in `std`. This
migrates most uses to the std variants.
2025-03-17 14:14:19 +00:00
Divy Srivastava
c638f9ade1
fix(ext/node): reset statement immidiately in run() (#28506)
Fixes https://github.com/denoland/deno/issues/28492
2025-03-15 20:14:24 +05:30
denobot
5f00b9700f
chore: forward v2.2.4 release commit to main (#28500) 2025-03-14 15:40:38 -07:00
Luke Edwards
424a2f3b57
fix(ext/node): correct STATUS_CODES strings (#28489)
Matches Node.js `http.STATUS_CODES` values now. Deno is currently
exporting an enum directly, which 1) adds keys like `BadRequest` and 2)
ships the status-text strings as non-space-delimited values (eg,
`'BadRequest`` instead of `'Bad Request'`)

Signed-off-by: Luke Edwards <luke.edwards05@gmail.com>
2025-03-13 14:21:08 -04:00