Skip to main content

Module config

Module config 

Source

Structs§

ChangelogConfig
Changelog generation — file, template, and commit grouping.
ChangelogGroup
A named group of commit types for changelog rendering.
ChannelConfig
A named release channel.
ChannelsConfig
Release channels for trunk-based promotion. All channels release from the same branch — channels control the release strategy (stable vs prerelease vs draft), not the branch.
CommitConfig
How commits are classified by semver bump level.
CommitTypesConfig
Commit type names grouped by the semver bump level they trigger. Breaking changes always bump major regardless of configured level.
Config
Root configuration. Six top-level concerns:
GitConfig
Git-level settings — tags, signing, identity, commit filtering.
GitHubConfig
GitHub-specific release settings.
GitUserConfig
Git author/committer identity for release operations.
PackageConfig
A releasable package — version files, artifacts, build/publish targets.
VcsConfig
VCS provider-specific configuration.

Enums§

PublishConfig
Per-package publish configuration. Typed enum — the user picks a known publisher (cargo, npm, docker, pypi, go) and sr handles both the “is it already published?” check (registry API call) and the actual publish command (shelled out). The custom variant is the escape hatch for arbitrary shell commands + a user-supplied state check.

Constants§

CONFIG_CANDIDATES
Config file candidates, checked in priority order.
DEFAULT_CONFIG_FILE
Preferred config file name.

Functions§

default_changelog_groups
default_config_template
default_skip_patterns
Default skip tokens. [skip release] and [skip sr] are recognized out of the box so users can opt a commit out of the release without touching config.