Skip to content

fix: use ESM for cli #3642

Closed
Closed
@JounQin

Description

@JounQin

Expected Behavior

wrap-ansi required by cliui by yargs is ESM only now

Current Behavior

$ /Users/JounQin/Workspaces/Alauda/ui/node_modules/.bin/commitlint -e
/Users/JounQin/Workspaces/Alauda/ui/node_modules/cliui/build/index.cjs:293
const wrap = require('wrap-ansi');
             ^

Error [ERR_REQUIRE_ESM]: require() of ES Module /Users/JounQin/Workspaces/Alauda/ui/node_modules/wrap-ansi/index.js from /Users/JounQin/Workspaces/Alauda/ui/node_modules/cliui/build/index.cjs not supported.
Instead change the require of index.js in /Users/JounQin/Workspaces/Alauda/ui/node_modules/cliui/build/index.cjs to a dynamic import() which is available in all CommonJS modules.
    at Object.<anonymous> (/Users/JounQin/Workspaces/Alauda/ui/node_modules/cliui/build/index.cjs:293:14)
    at Object.<anonymous> (/Users/JounQin/Workspaces/Alauda/ui/node_modules/yargs/build/index.cjs:1:60678)
    at Object.<anonymous> (/Users/JounQin/Workspaces/Alauda/ui/node_modules/yargs/index.cjs:5:30)
    at Object.<anonymous> (/Users/JounQin/Workspaces/Alauda/ui/node_modules/@commitlint/cli/lib/cli.js:20:33)
    at Object.<anonymous> (/Users/JounQin/Workspaces/Alauda/ui/node_modules/@commitlint/cli/cli.js:2:1) {
  code: 'ERR_REQUIRE_ESM'
}

Node.js v18.17.1

Affected packages

  • cli
  • core
  • prompt
  • config-angular

Possible Solution

Use ESM for cli

related yargs/cliui#139

Steps to Reproduce

N/A

Context

No response

commitlint --version

@commitlint/[email protected]

git --version

2.41.0

node --version

v18.17.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions