deno/ext/node
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
..
benchmarks chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
ops fix(ext/node): verbose zlib error messages (#28831) 2025-04-11 17:17:32 +05:30
polyfills fix(ext/node): upgrade node:stream (#28855) 2025-04-14 21:35:34 +05:30
build.rs chore: Happy New Year 2025 (#27509) 2024-12-31 19:12:39 +00:00
Cargo.toml chore: forward v2.2.9 release commit to main (#28859) 2025-04-11 22:45:54 +00:00
clippy.toml refactor(ext/fs): deno_fs::FileSystem - conditional Send + Sync (#18993) 2023-05-08 11:02:02 -04:00
global.rs refactor(ext/node): export GlobalsStorage (#28683) 2025-03-31 14:00:05 -04:00
lib.rs fix(ext/node): upgrade node:stream (#28855) 2025-04-14 21:35:34 +05:30
README.md chore(ext/node): correct publishing for ext/node (#15461) 2022-08-11 17:25:41 -04:00
update_node_stream.ts fix(ext/node): upgrade node:stream (#28855) 2025-04-14 21:35:34 +05:30

deno_node

require and other node related functionality for Deno.