See @semantic-release/commit-analyzer for more documentation.
$ npm install filtered-commit-analyzer -D
The plugin can be configured in the semantic-release configuration file:
{
"plugins": [
["filtered-commit-analyzer", {
"preset": "angular",
"releaseRules": [
{"type": "docs", "scope":"README", "release": "patch"},
{"type": "refactor", "release": "patch"},
{"type": "style", "release": "patch"}
],
"parserOpts": {
"noteKeywords": ["BREAKING CHANGE", "BREAKING CHANGES"]
},
"filterRules": {
"scope": "onlyAllowScopesThisRegExPattern",
"youCanUseAnyValidPropertyParsedFromYourCommitMessage": ".*"
}
}],
"@semantic-release/release-notes-generator"
]
}
filterRules
can also reference a module, either by it's npm
name or path:
{
"plugins": [
["@semantic-release/commit-analyzer", {
"preset": "angular",
"filterRules": "./config/filter-rules.js"
}],
"@semantic-release/release-notes-generator"
]
}
// File: config/filter-rules.js
module.exports = {
scope: "packageA|packageB"
};