Plugin: analyzer-default
Determines the next SemVer bump by matching commit messages against regular expressions. Choose it when you want custom versioning rules without adopting Conventional Commits.
Installation
Section titled “Installation”Binary
Section titled “Binary”semrel plugin install @semrel/analyzer-defaultsemrel plugin install downloads the binary to .semrel/plugins/ and updates .semrel.lock. Commit .semrel.lock to pin the version for your team.
Docker
Section titled “Docker”Pre-built, signed multi-platform images (linux/amd64, linux/arm64) are published on every release:
docker pull ghcr.io/semrels/analyzer-default:latestVerify the image signature with cosign:
cosign verify ghcr.io/semrels/analyzer-default:latest \ --certificate-identity-regexp 'https://github.com/SemRels/analyzer-default/.github/workflows/release.yml.*' \ --certificate-oidc-issuer https://token.actions.githubusercontent.comConfiguration
Section titled “Configuration”version: 1plugins: - uses: @semrel/analyzer-default args: major_pattern: 'BREAKING|major:' minor_pattern: '^feat' patch_pattern: '^fix|^perf'Environment Variables
Section titled “Environment Variables”| Name | Required | Default | Description |
|---|---|---|---|
SEMREL_PLUGIN_MINOR_PATTERN | no | plugin-defined regex | Regular expression that triggers a minor bump. |
SEMREL_PLUGIN_PATCH_PATTERN | no | plugin-defined regex | Regular expression that triggers a patch bump. |
SEMREL_PLUGIN_MAJOR_PATTERN | no | plugin-defined regex | Regular expression that triggers a major bump. |
Release Context Variables
Section titled “Release Context Variables”This plugin does not require any of the shared SEMREL_* release context variables to do its job.
Behavior
Section titled “Behavior”If a commit message matches major_pattern, the analyzer returns major. Otherwise it falls back to minor_pattern, then patch_pattern, and returns the highest matching bump.