diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-07-28 15:41:10 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-28 15:41:10 -0400 |
commit | 50fa4d7ef5d0615d60042eda72e34adb773e2ecf (patch) | |
tree | c9a4e077abdbb2a85eb343cd58a5bb5c37c44754 | |
parent | 99e811f5eb8070cfa41272c9e630c7767cac22c2 (diff) |
fix: actually add missing `node:readline/promises` module (#24772)
Closes #24768
-rw-r--r-- | cli/module_loader.rs | 3 | ||||
-rw-r--r-- | ext/node/lib.rs | 1 | ||||
-rw-r--r-- | ext/node/polyfills/01_require.js | 2 | ||||
-rw-r--r-- | tests/specs/node/readline_promises/__test__.jsonc | 4 | ||||
-rw-r--r-- | tests/specs/node/readline_promises/main.out | 10 | ||||
-rw-r--r-- | tests/specs/node/readline_promises/main.ts | 10 |
6 files changed, 28 insertions, 2 deletions
diff --git a/cli/module_loader.rs b/cli/module_loader.rs index bda4e58d8..3ac222b01 100644 --- a/cli/module_loader.rs +++ b/cli/module_loader.rs @@ -612,7 +612,8 @@ impl<TGraphContainer: ModuleGraphContainer> maybe_referrer: Option<&ModuleSpecifier>, ) -> Result<CodeOrDeferredEmit<'graph>, AnyError> { if specifier.scheme() == "node" { - unreachable!(); // Node built-in modules should be handled internally. + // Node built-in modules should be handled internally. + unreachable!("Deno bug. {} was misconfigured internally.", specifier); } match graph.get(specifier) { diff --git a/ext/node/lib.rs b/ext/node/lib.rs index 2c8650577..8d6d76f09 100644 --- a/ext/node/lib.rs +++ b/ext/node/lib.rs @@ -598,6 +598,7 @@ deno_core::extension!(deno_node, "node:punycode" = "punycode.ts", "node:querystring" = "querystring.js", "node:readline" = "readline.ts", + "node:readline/promises" = "readline/promises.ts", "node:repl" = "repl.ts", "node:stream" = "stream.ts", "node:stream/consumers" = "stream/consumers.mjs", diff --git a/ext/node/polyfills/01_require.js b/ext/node/polyfills/01_require.js index bbcc7555d..94d6e90e0 100644 --- a/ext/node/polyfills/01_require.js +++ b/ext/node/polyfills/01_require.js @@ -132,7 +132,7 @@ import punycode from "node:punycode"; import process from "node:process"; import querystring from "node:querystring"; import readline from "node:readline"; -import readlinePromises from "ext:deno_node/readline/promises.ts"; +import readlinePromises from "node:readline/promises"; import repl from "node:repl"; import stream from "node:stream"; import streamConsumers from "node:stream/consumers"; diff --git a/tests/specs/node/readline_promises/__test__.jsonc b/tests/specs/node/readline_promises/__test__.jsonc new file mode 100644 index 000000000..70840dee2 --- /dev/null +++ b/tests/specs/node/readline_promises/__test__.jsonc @@ -0,0 +1,4 @@ +{ + "args": "run --allow-read main.ts", + "output": "main.out" +} diff --git a/tests/specs/node/readline_promises/main.out b/tests/specs/node/readline_promises/main.out new file mode 100644 index 000000000..2839ce9a1 --- /dev/null +++ b/tests/specs/node/readline_promises/main.out @@ -0,0 +1,10 @@ +import rl from "node:readline/promises"; +import fs from "node:fs"; + +const r = rl.createInterface({ + input: fs.createReadStream("main.ts"), +}); + +for await (const line of r) { + console.log(line); +} diff --git a/tests/specs/node/readline_promises/main.ts b/tests/specs/node/readline_promises/main.ts new file mode 100644 index 000000000..2839ce9a1 --- /dev/null +++ b/tests/specs/node/readline_promises/main.ts @@ -0,0 +1,10 @@ +import rl from "node:readline/promises"; +import fs from "node:fs"; + +const r = rl.createInterface({ + input: fs.createReadStream("main.ts"), +}); + +for await (const line of r) { + console.log(line); +} |