default analyzer
The default analyzer implements the AngularJS Commit Message Convention style.
<type>(<scope>): <subject>
<BLANK LINE>
<body>
Examples:
feat(ruler): add inches as well as centimeters
fix(protractor): fix 90 degrees counting as 91 degrees
fix(pen): use blue ink instead of red ink
BREAKING CHANGE: Pen now uses blue ink instead of red.
To migrate, change your code from the following:
`pen.draw('blue')`
To:
`pen.draw('red')`
Synopsis
custom analyzers
If you want to use commit message conventions other than Angular's you can provide your own analyzer in the package.json.
Add a release field and provide a path where semantic-release can require your analyzer:
"release": {
"analyzer": "./lib/custom-analyzer"
}
The module should export a function that takes an array of commit objects ({hash: '123456', message: 'changed stuff') and returns the the release type ('major', 'premajor', 'minor', 'preminor', 'patch', 'prepatch', or 'prerelease'), or null to not release a new version.
Have a look at the default analyzer for a sample implementation.