Documentation ¶
Index ¶
- Variables
- func FilterTags(g gitclient.Interface, dir, filter string) ([]string, error)
- func GenerateMarkdown(releaseSpec *v1.ReleaseSpec, gitInfo *giturl.GitRepository, ...) (string, error)
- func GetCommitForTagSha(g gitclient.Interface, dir, tagSHA, tagName string) (string, string, error)
- func GetCommitPointedToByLatestTag(g gitclient.Interface, dir, prefix string) (string, string, error)
- func GetFirstCommitSha(g gitclient.Interface, dir string) (string, error)
- func GetRevisionBeforeDateText(g gitclient.Interface, dir, dateText string) (string, error)
- func NTags(g gitclient.Interface, dir string, n int, prefix string) ([][]string, error)
- func ParseCommit(message string) (*CommitInfo, *CommitInfo)
- type CommitGroup
- type CommitInfo
- type GroupAndCommitInfos
Constants ¶
This section is empty.
Variables ¶
var ( // ConventionalCommitTitles textual descriptions for // Conventional Commit types: https://conventionalcommits.org/ ConventionalCommitTitles = map[string]*CommitGroup{ "break": createCommitGroup("BREAKING CHANGES"), "feat": createCommitGroup("New Features"), "fix": createCommitGroup("Bug Fixes"), "perf": createCommitGroup("Performance Improvements"), "refactor": createCommitGroup("Code Refactoring"), "docs": createCommitGroup("Documentation"), "test": createCommitGroup("Tests"), "revert": createCommitGroup("Reverts"), "style": createCommitGroup("Styles"), "chore": createCommitGroup("Chores"), "": createCommitGroup("Other Changes"), } ConventionalCommitRegexp = regexp.MustCompile(`^([0-9A-Za-z-]+)(?:\(([0-9A-Za-z-]+)\))?(!)?: (.+)((?s:.*))`) BreakingChangeRegexp = regexp.MustCompile(`(?m)^BREAKING CHANGE: (.*)`) )
Functions ¶
func FilterTags ¶
FilterTags returns all tags from the repository at the given directory that match the filter
func GenerateMarkdown ¶
func GenerateMarkdown(releaseSpec *v1.ReleaseSpec, gitInfo *giturl.GitRepository, changelogSeparator, changelogOutputSeparator string, prchangelog, includeprs bool) (string, error)
GenerateMarkdown generates the markdown document for the commits
func GetCommitForTagSha ¶ added in v0.7.1
func GetCommitPointedToByLatestTag ¶
func GetCommitPointedToByLatestTag(g gitclient.Interface, dir, prefix string) (string, string, error)
GetCommitPointedToByLatestTag return the SHA of the commit pointed to by the latest git tag as well as the tag name for the git repo in dir
func GetFirstCommitSha ¶
GetFirstCommitSha returns the sha of the first commit
func GetRevisionBeforeDateText ¶
GetRevisionBeforeDateText returns the revision before the given date in format "MonthName dayNumber year"
func NTags ¶ added in v0.7.1
NTags return the SHA and tag name of n first tags in reverse chronological order from the repository at the given directory. If N tags doesn't exist the available tags are returned without an error.
func ParseCommit ¶
func ParseCommit(message string) (*CommitInfo, *CommitInfo)
ParseCommit parses a conventional commit see: https://conventionalcommits.org/
Types ¶
type CommitGroup ¶
type CommitInfo ¶
type CommitInfo struct { Type string Scope string Description string // contains filtered or unexported fields }
func (*CommitInfo) Group ¶
func (c *CommitInfo) Group() *CommitGroup
func (*CommitInfo) Order ¶
func (c *CommitInfo) Order() int
func (*CommitInfo) Title ¶
func (c *CommitInfo) Title() string
type GroupAndCommitInfos ¶
type GroupAndCommitInfos struct {
// contains filtered or unexported fields
}