Skip to main content

classify_range_bump

Function classify_range_bump 

Source
pub fn classify_range_bump(
    project_root: &Path,
    range_start: &str,
) -> Result<Bump, VersionError>
Expand description

Classify the highest-precedence conventional-commit bump over --no-merges commits in range_start..HEAD. range_start may be the empty string, meaning “no baseline tag exists” — the whole history reachable from HEAD is classified instead (git log --no-merges HEAD, no exclusion).

Commits are read via %H%x1f%B%x1e: %B is the raw message (subject, blank line, body and footers) in exactly the shape git_conventional::Commit::parse expects, and %x1f/%x1e are git’s own unit/record separators — safe against arbitrary characters a commit message may contain, unlike splitting on newlines.