version_bump/plugins/commit_analyzer

The commit-analyzer plugin: determines the release type implied by a set of conventional commits, mirroring @semantic-release/commit-analyzer.

Rules (the highest matching type wins):

The pure analyze function holds all the logic so it can be unit-tested without a context; plugin/0 wraps it as the analyze_commits hook.

Values

pub fn analyze(
  commits: List(commit_parser.ConventionalCommit),
) -> option.Option(semver.ReleaseType)

Determine the release type for a list of conventional commits.

Returns the highest release type any commit warrants, or None when no commit triggers a release. This is the pure core of the plugin.

pub fn plugin() -> plugin.Plugin

The commit-analyzer plugin, implementing only analyze_commits.

Search Document