conventional-changelog/commitlint

Docker image and @commitlint/config-nx-scopes

Fechada

#4.427 aberto em 29 de mai. de 2025

 (1 comentário) (0 reação) (0 responsável)TypeScript (896 forks)batch import
bughelp wanted

Métricas do repositório

Stars
 (15.497 estrelas)
Métricas de merge de PR
 (Mesclagem média 12h 56m) (52 fundiu PRs em 30d)

Description

Steps to Reproduce

  1. Create a Gitlab CI job similar to this:
lint:commit:
  image:
    name: registry.hub.docker.com/commitlint/commitlint:19.8.1
    entrypoint: ['']
  stage: affected
  script:
    - npm i -g nx@$(node -pe "require('./package.json').devDependencies.nx")
    - commitlint --from ${CI_MERGE_REQUEST_DIFF_BASE_SHA} --to ${CI_COMMIT_SHA}
  1. And a config file like:
import nxScopes from '@commitlint/config-nx-scopes';
import { type UserConfig, RuleConfigSeverity } from '@commitlint/types';

const { utils } = nxScopes;

const Configuration: UserConfig = {
  extends: ['@commitlint/config-conventional', '@commitlint/config-nx-scopes'],
  rules: {
    // @ts-expect-error nx-scopes is not typed
    'scope-enum': async (ctx) => [
      RuleConfigSeverity.Error,
      'always',
      ['deps', 'release', ...(await utils.getProjects(ctx))],
    ],
  },
};

export default Configuration;

Current Behavior

Basically the commitlint command fails with:

$ commitlint --from ${CI_MERGE_REQUEST_DIFF_BASE_SHA} --to ${CI_COMMIT_SHA}
file:///usr/local/lib/node_modules/@commitlint/cli/lib/cli.js:132
        throw err;
        ^
Error: Cannot find module '@commitlint/config-nx-scopes'
Require stack:
- /builds/flex/web/.commitlintrc.ts
    at Module._resolveFilename (node:internal/modules/cjs/loader:1140:15)
    at Function.resolve (node:internal/modules/helpers:188:19)
    at jitiResolve (/usr/local/lib/node_modules/@commitlint/load/node_modules/jiti/dist/jiti.cjs:1:187220)
    at jitiRequire (/usr/local/lib/node_modules/@commitlint/load/node_modules/jiti/dist/jiti.cjs:1:189288)
    at import (/usr/local/lib/node_modules/@commitlint/load/node_modules/jiti/dist/jiti.cjs:1:199778)
    at /builds/flex/web/.commitlintrc.ts:1:248
    at eval_evalModule (/usr/local/lib/node_modules/@commitlint/load/node_modules/jiti/dist/jiti.cjs:1:196325)
    at jitiRequire (/usr/local/lib/node_modules/@commitlint/load/node_modules/jiti/dist/jiti.cjs:1:190233)
    at Function.import (/usr/local/lib/node_modules/@commitlint/load/node_modules/jiti/dist/jiti.cjs:1:199778)
    at file:///usr/local/lib/node_modules/@commitlint/load/node_modules/cosmiconfig-typescript-loader/dist/esm/loader.mjs:8:41
    at tsLoader (file:///usr/local/lib/node_modules/@commitlint/load/lib/utils/load-config.js:13:16)
    at #loadConfiguration (/usr/local/lib/node_modules/@commitlint/load/node_modules/cosmiconfig/dist/Explorer.js:116:42)
    at #loadConfigFileWithImports (/usr/local/lib/node_modules/@commitlint/load/node_modules/cosmiconfig/dist/Explorer.js:87:[60](https://gitlab.falabella.tech/flex/web/-/jobs/44031672#L60))
    at #readConfiguration (/usr/local/lib/node_modules/@commitlint/load/node_modules/cosmiconfig/dist/Explorer.js:84:88)
    at async search (/usr/local/lib/node_modules/@commitlint/load/node_modules/cosmiconfig/dist/Explorer.js:50:40)
    at async Explorer.search (/usr/local/lib/node_modules/@commitlint/load/node_modules/cosmiconfig/dist/Explorer.js:78:20)
    at async loadConfig (file:///usr/local/lib/node_modules/@commitlint/load/lib/utils/load-config.js:53:19)
    at async load (file:///usr/local/lib/node_modules/@commitlint/load/lib/load.js:24:20)
    at async main (file:///usr/local/lib/node_modules/@commitlint/cli/lib/cli.js:200:20) {
  name: '_TypeScriptCompileError',
  filepath: '/builds/flex/web/.commitlintrc.ts'
}
Node.js v18.20.8

Expected Behavior

Should works without errors

Affected packages

  • cli
  • core
  • prompt
  • config-angular

Possible Solution

No response

Context

No response

commitlint --version

18.9.1

git --version

2.47.2 - In docker

node --version

18 - In docker

Guia do colaborador