summaryrefslogtreecommitdiff
path: root/ext/node/02_require.js
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2022-08-29 19:48:27 +0200
committerGitHub <noreply@github.com>2022-08-29 19:48:27 +0200
commita938aaf36fde1ecf25fdbff323690c98c99a1ecc (patch)
tree7c9c1f69e066b5a6534e97a8b23a31cbd6fa6a42 /ext/node/02_require.js
parent2851a980723f27c245e6e3790a53dd26136f225f (diff)
fix(ext/node): better error for importing ES module via require() call (#15671)
Diffstat (limited to 'ext/node/02_require.js')
-rw-r--r--ext/node/02_require.js12
1 files changed, 9 insertions, 3 deletions
diff --git a/ext/node/02_require.js b/ext/node/02_require.js
index 6f06d3269..99587472a 100644
--- a/ext/node/02_require.js
+++ b/ext/node/02_require.js
@@ -730,9 +730,15 @@
if (StringPrototypeEndsWith(filename, ".js")) {
const pkg = core.ops.op_require_read_package_scope(filename);
if (pkg && pkg.exists && pkg.typ == "module") {
- throw new Error(
- `Import ESM module: ${filename} from ${module.parent.filename}`,
- );
+ let message = `Trying to import ESM module: ${filename}`;
+
+ if (module.parent) {
+ message += ` from ${module.parent.filename}`;
+ }
+
+ message += ` using require()`;
+
+ throw new Error(message);
}
}