Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
@commitlint/config-angular
Advanced tools
Shareable commitlint config enforcing the angular commit convention
@commitlint/config-angular is a shareable configuration for commitlint that follows the Angular commit message guidelines. It helps enforce a consistent commit message format in your project, which is particularly useful for projects that follow the Angular style guide.
Enforcing Commit Message Format
This configuration enforces the Angular commit message format. By extending `@commitlint/config-angular`, your project will adhere to the Angular commit message conventions, ensuring consistency and readability.
{
"extends": ["@commitlint/config-angular"]
}
Customizing Rules
You can customize the commit message rules by extending the default configuration. In this example, the `type-enum` rule is customized to include specific types of commit messages such as `feat`, `fix`, `docs`, etc.
{
"extends": ["@commitlint/config-angular"],
"rules": {
"type-enum": [
2,
"always",
[
"feat",
"fix",
"docs",
"style",
"refactor",
"test",
"chore"
]
]
}
}
@commitlint/config-conventional is another shareable configuration for commitlint that follows the conventional commit message guidelines. It is similar to @commitlint/config-angular but adheres to the broader conventional commits specification rather than the Angular-specific guidelines.
Commitizen is a tool that helps you write consistent commit messages by providing an interactive prompt. While @commitlint/config-angular enforces commit message rules, Commitizen assists in the creation of those messages, ensuring they follow a specified format.
cz-conventional-changelog is an adapter for Commitizen that helps you write commit messages following the conventional changelog format. It is similar to @commitlint/config-angular in that it enforces a specific commit message format, but it does so through an interactive prompt rather than linting.
Lint your commits, angular-style
Shareable commitlint
config enforcing the Angular commit convention.
Use with @commitlint/cli and @commitlint/prompt-cli.
npm install --save-dev @commitlint/config-angular @commitlint/cli
echo "module.exports = {extends: ['@commitlint/config-angular']};" > commitlint.config.js
The following rules are considered problems for @commitlint/config-angular
and will yield a non-zero exit code when not met.
Consult docs/rules for a list of available rules.
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
is in case value
always
'lowerCase'
echo "FIX: some message" # fails
echo "fix: some message" # passes
type
is emptynever
echo ": some message" # fails
echo "fix: some message" # passes
scope
is in case value
always
'lowerCase'
echo "fix(SCOPE): some message" # fails
echo "fix(scope): some message" # passes
subject
is in one of the cases ['sentence-case', 'start-case', 'pascal-case', 'upper-case']
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
is emptynever
echo "fix:" # fails
echo "fix: some message" # passes
subject
ends with value
never
'.'
echo "fix: some message." # fails
echo "fix: some message" # passes
subject
must not have a !
before the :
markernever
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
has value
or less charactersalways
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
The following rules are considered warnings for @commitlint/config-angular
and will print warning messages when not met.
always
FAQs
Shareable commitlint config enforcing the angular commit convention
The npm package @commitlint/config-angular receives a total of 117,824 weekly downloads. As such, @commitlint/config-angular popularity was classified as popular.
We found that @commitlint/config-angular demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.