JSPM

  • Created
  • Published
  • Downloads 185659
  • Score
    100M100P100Q166954F
  • License MIT

Shareable commitlint config enforcing the angular commit convention

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@commitlint/config-angular) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    @commitlint/config-angular

    Lint your commits, angular-style

    Shareable commitlint config enforcing the Angular commit convention. Use with @commitlint/cli and @commitlint/prompt-cli.

    Getting started

    npm install --save-dev @commitlint/config-angular @commitlint/cli
    echo "export default {extends: ['@commitlint/config-angular']};" > commitlint.config.js

    Rules

    Problems

    The following rules are considered problems for @commitlint/config-angular and will yield a non-zero exit code when not met. Consult Rules reference for a list of available rules.

    type-enum

    • condition: type is found in value

    • rule: always

    • value

      [
        'build',
        'ci',
        'docs',
        'feat',
        'fix',
        'perf',
        'refactor',
        'revert',
        'style',
        'test'
      ]
    echo "foo: some message" # fails
    echo "fix: some message" # passes

    type-case

    • description: type is in case value
    • rule: always
    • value
      'lowerCase'
    echo "FIX: some message" # fails
    echo "fix: some message" # passes

    type-empty

    • condition: type is empty
    • rule: never
    echo ": some message" # fails
    echo "fix: some message" # passes

    scope-case

    • condition: scope is in case value
    • rule: always
    'lowerCase'
    echo "fix(SCOPE): some message" # fails
    echo "fix(scope): some message" # passes

    subject-case

    • condition: subject is in one of the cases ['sentence-case', 'start-case', 'pascal-case', 'upper-case']
    • rule: never
    echo "fix(SCOPE): Some message" # fails
    echo "fix(SCOPE): Some Message" # fails
    echo "fix(SCOPE): SomeMessage" # fails
    echo "fix(SCOPE): SOMEMESSAGE" # fails
    echo "fix(scope): some message" # passes
    echo "fix(scope): some Message" # passes

    subject-empty

    • condition: subject is empty
    • rule: never
    echo "fix:" # fails
    echo "fix: some message" # passes

    subject-full-stop

    • condition: subject ends with value
    • rule: never
    • value
    '.'
    echo "fix: some message." # fails
    echo "fix: some message" # passes

    subject-exclamation-mark

    • condition: subject must not have a ! before the : marker
    • rule: never

    The angular commit convention does not use a ! to define a breaking change in the commit subject. If you want to use this feature please consider using the conventional commit config.

    header-max-length

    • condition: header has value or less characters
    • rule: always
    • value
    72
    echo "fix: some message that is way too long and breaks the line max-length by several characters" # fails
    echo "fix: some message" # passes

    Warnings

    The following rules are considered warnings for @commitlint/config-angular and will print warning messages when not met.

    body-leading-blank

    • condition: Body begins with blank line
    • rule: always