summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cli/module_loader.rs3
-rw-r--r--ext/node/lib.rs1
-rw-r--r--ext/node/polyfills/01_require.js2
-rw-r--r--tests/specs/node/readline_promises/__test__.jsonc4
-rw-r--r--tests/specs/node/readline_promises/main.out10
-rw-r--r--tests/specs/node/readline_promises/main.ts10
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);
+}