Skip to content

Commit 540fe7d

Browse files
authored
fix(node): resolve module as maybe CJS when it's missing a file extension (denoland#27904)
1 parent 9cbcb84 commit 540fe7d

File tree

7 files changed

+14
-1
lines changed

7 files changed

+14
-1
lines changed

resolvers/deno/cjs.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ impl<TInNpmPackageChecker: InNpmPackageChecker, TSys: FsRead>
274274
self.pkg_json_resolver.get_closest_package_json(&path)?
275275
{
276276
let is_file_location_cjs = pkg_json.typ != "module";
277-
Ok(if is_file_location_cjs {
277+
Ok(if is_file_location_cjs || path.extension().is_none() {
278278
ResolutionMode::Require
279279
} else {
280280
ResolutionMode::Import
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"args": "run main.mts",
3+
"output": "3\n"
4+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import { add } from "package/add";
2+
3+
console.log(add(1, 2));

tests/specs/node/import_cjs_file_no_ext_mjs_pkg/node_modules/package/add

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tests/specs/node/import_cjs_file_no_ext_mjs_pkg/node_modules/package/internal.cjs

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tests/specs/node/import_cjs_file_no_ext_mjs_pkg/node_modules/package/package.json

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{}

0 commit comments

Comments
 (0)