From 9abc722cc3a998b4f73103c4394b53cccdb5c83b Mon Sep 17 00:00:00 2001 From: David Sherret Date: Thu, 21 Mar 2024 11:35:51 -0700 Subject: feat(node): load ES modules defined as CJS (#22945) Changes the behaviour in Deno to just always load ES modules in npm packages even if they're defined as CJS. Closes #22818 --- .../specs/node/detect_es_module_defined_as_cjs/__test__.jsonc | 10 ++++++++++ tests/specs/node/detect_es_module_defined_as_cjs/deno.json | 5 +++++ tests/specs/node/detect_es_module_defined_as_cjs/main.out | 1 + tests/specs/node/detect_es_module_defined_as_cjs/main.ts | 3 +++ .../node_modules/package/index.js | 3 +++ .../node_modules/package/package.json | 3 +++ tests/specs/node/detect_es_module_defined_as_cjs/package.json | 0 7 files changed, 25 insertions(+) create mode 100644 tests/specs/node/detect_es_module_defined_as_cjs/__test__.jsonc create mode 100644 tests/specs/node/detect_es_module_defined_as_cjs/deno.json create mode 100644 tests/specs/node/detect_es_module_defined_as_cjs/main.out create mode 100644 tests/specs/node/detect_es_module_defined_as_cjs/main.ts create mode 100644 tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/index.js create mode 100644 tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/package.json create mode 100644 tests/specs/node/detect_es_module_defined_as_cjs/package.json (limited to 'tests') diff --git a/tests/specs/node/detect_es_module_defined_as_cjs/__test__.jsonc b/tests/specs/node/detect_es_module_defined_as_cjs/__test__.jsonc new file mode 100644 index 000000000..fcb9dc143 --- /dev/null +++ b/tests/specs/node/detect_es_module_defined_as_cjs/__test__.jsonc @@ -0,0 +1,10 @@ +{ + "steps": [{ + "args": "run main.ts", + "output": "main.out" + }, { + // ensure it works with cache + "args": "run main.ts", + "output": "main.out" + }] +} diff --git a/tests/specs/node/detect_es_module_defined_as_cjs/deno.json b/tests/specs/node/detect_es_module_defined_as_cjs/deno.json new file mode 100644 index 000000000..f6eb03cc9 --- /dev/null +++ b/tests/specs/node/detect_es_module_defined_as_cjs/deno.json @@ -0,0 +1,5 @@ +{ + "unstable": [ + "byonm" + ] +} diff --git a/tests/specs/node/detect_es_module_defined_as_cjs/main.out b/tests/specs/node/detect_es_module_defined_as_cjs/main.out new file mode 100644 index 000000000..00750edc0 --- /dev/null +++ b/tests/specs/node/detect_es_module_defined_as_cjs/main.out @@ -0,0 +1 @@ +3 diff --git a/tests/specs/node/detect_es_module_defined_as_cjs/main.ts b/tests/specs/node/detect_es_module_defined_as_cjs/main.ts new file mode 100644 index 000000000..a4be7b4c4 --- /dev/null +++ b/tests/specs/node/detect_es_module_defined_as_cjs/main.ts @@ -0,0 +1,3 @@ +import { add } from "package"; + +console.log(add(1, 2)); diff --git a/tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/index.js b/tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/index.js new file mode 100644 index 000000000..7d658310b --- /dev/null +++ b/tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/index.js @@ -0,0 +1,3 @@ +export function add(a, b) { + return a + b; +} diff --git a/tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/package.json b/tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/package.json new file mode 100644 index 000000000..920dda080 --- /dev/null +++ b/tests/specs/node/detect_es_module_defined_as_cjs/node_modules/package/package.json @@ -0,0 +1,3 @@ +{ + "name": "package" +} diff --git a/tests/specs/node/detect_es_module_defined_as_cjs/package.json b/tests/specs/node/detect_es_module_defined_as_cjs/package.json new file mode 100644 index 000000000..e69de29bb -- cgit v1.2.3