Skip to content

Using config example gives error running 19.0.3 #3947

Open
@nkukard

Description

@nkukard

Steps to Reproduce

  1. Install commitlint and set up config (ref https://commitlint.js.org/reference/configuration.html)

npm install -g @commitlint/cli @commitlint/config-conventional
echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js

  1. Run commitlint

Current Behavior

Results in ...


@commitlint/cli@19.0.3
file:///usr/local/lib/node_modules/@commitlint/cli/lib/cli.js:129
        throw err;
        ^
Error [ERR_UNSUPPORTED_DIR_IMPORT]: Directory import '/usr/local/lib/node_modules/@commitlint/config-conventional' is not supported resolving ES modules imported from /usr/local/lib/node_modules/@commitlint/cli/node_modules/@commitlint/resolve-extends/lib/index.js
Did you mean to import "/usr/local/lib/node_modules/@commitlint/config-conventional/lib/index.js"?
    at finalizeResolution (node:internal/modules/esm/resolve:257:11)
    at moduleResolve (node:internal/modules/esm/resolve:908:10)
    at defaultResolve (node:internal/modules/esm/resolve:1131:11)
    at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:390:12)
    at ModuleLoader.resolve (node:internal/modules/esm/loader:359:25)
    at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:234:38)
    at ModuleLoader.import (node:internal/modules/esm/loader:322:34)
    at importModuleDynamically (node:internal/modules/esm/translators:159:35)
    at importModuleDynamicallyCallback (node:internal/modules/esm/utils:207:14)
    at dynamicImport (file:///usr/local/lib/node_modules/@commitlint/cli/node_modules/@commitlint/resolve-extends/lib/index.js:21:88) {
  code: 'ERR_UNSUPPORTED_DIR_IMPORT',
  url: 'file:///usr/local/lib/node_modules/@commitlint/config-conventional'
}
Node.js v21.6.2

Expected Behavior

Before 19.0.0 it resulted in ...

@commitlint/cli@18.6.1
96⧗   input: test: testing something
97✔   found 0 problems, 0 warnings
98= = = = = = = = = = = = = = = = = = = = = = = = = = = = =
99### TEST PASSED   (commitlint): Valid commit message passed
100### TEST START    (commitlint): Testing invalid commit message
101[main 393de5d] invalid commit
102 Date: Thu Feb 22 05:44:52 2024 +0000
103 1 file changed, 1 insertion(+), 1 deletion(-)

Affected packages

  • cli
  • core
  • prompt
  • config-angular

Possible Solution

No response

Context

I'm running CI/CD pipelines with many of my software projects and this was picked up in our commitlint job test.

commitlint --version

@commitlint/cli@19.0.3

git --version

v2.44.0

node --version

21.6.2 (fails on 18 & 20 that I test too)

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