changelog icon indicating copy to clipboard operation
changelog copied to clipboard

Error running semantic-release: ESM modules not supported in CommonJS

Open mkbctrl opened this issue 1 year ago • 0 comments

When attempting to run semantic-release with the --dry-run flag, the process fails with an ERR_REQUIRE_ESM error. This error indicates that an ES Module is being require()'d in a CommonJS module, which is not supported. The specific module causing the issue is @semantic-release/changelog.

Error Output:

Error [ERR_REQUIRE_ESM]: require() of ES Module /Users/username/Software/project-x/project-x/node_modules/@semantic-release/changelog/node_modules/aggregate-error/index.js from /Users/username/Software/project-x/project-x/node_modules/@semantic-release/changelog/lib/verify.js not supported.
Instead change the require of index.js in /Users/username/Software/project-x/project-x/node_modules/@semantic-release/changelog/lib/verify.js to a dynamic import() which is available in all CommonJS modules.

Steps to Reproduce

  1. Run yarn semantic-release --dry-run in the terminal.

Expected Behavior The semantic-release command should execute without errors and perform a dry run of the release process.

Environment

  • semantic-release version: 22.0.12
  • Node.js version: 20.9
  • Yarn version: 4.0.2
  • OS: Mac OS

mkbctrl avatar Dec 19 '23 20:12 mkbctrl