Package Exports
- @inett/semantic-release-unsquash
- @inett/semantic-release-unsquash/src/index.js
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 (@inett/semantic-release-unsquash) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@inett/semantic-release-unsquash
This is a fork of semantic-release-unsquash by romap0 with built-in commit-analyzer
and release-notes-generator
support and opinionated defaults.
A tiny wrapper for commit-analyzer and release-notes-generator which works with squashed merge requests (e.g. GitLab or GitHub squash commits).
It "unsquashes" the original commits from the squash message and feeds them to the underlying plugins.
π Features
- Parses
* commit
style squash messages - Built-in
commitAnalyzerConfig
andnotesGeneratorConfig
- Supports GitHub and GitLab squash commit templates
- Optional override via plugin config in
package.json
π¦ Install
npm install -D @inett/semantic-release-unsquash
π§ Usage
{
"plugins": ["@inett/semantic-release-unsquash"]
}
β¨ You don't need to provide extra configuration βΒ the plugin uses sensible defaults for:
- Conventional Commits parsing
- Release rules
- Changelog section titles
- Breaking change keywords
βοΈ Optional Overrides
If you want to override or extend the defaults:
{
"plugins": [
[
"@inett/semantic-release-unsquash",
{
"commitAnalyzerConfig": {
"releaseRules": [{ "type": "deps", "release": "patch" }]
},
"notesGeneratorConfig": {
"presetConfig": {
"types": [
{ "type": "deps", "section": "π¦ Dependencies", "hidden": false }
]
}
}
}
]
]
}
π‘ Usage with GitHub
GitHub automatically adds a list of original commits to the squash message. This plugin will parse those and pass them on to semantic-release.
π‘ Usage with GitLab
To enable unsquashing, set your squash commit template in Project Settings β Merge Requests to:
%{title}
%{all_commits}