diff options
author | Luke T. Shumaker <lukeshu@lukeshu.com> | 2025-01-01 20:43:54 -0700 |
---|---|---|
committer | Luke T. Shumaker <lukeshu@lukeshu.com> | 2025-01-01 20:43:54 -0700 |
commit | df67c342056965d503d3470e069ddd3038616935 (patch) | |
tree | 6cb0ba80310116aa12eabaf4ed3bc6a168cc3c9b /cmd/generate | |
parent | 62a6621388d3526708057e3ffba0c45fd1091c3b (diff) |
Diffstat (limited to 'cmd/generate')
-rw-r--r-- | cmd/generate/forge_github.go | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/cmd/generate/forge_github.go b/cmd/generate/forge_github.go index 9f475a3..0e75771 100644 --- a/cmd/generate/forge_github.go +++ b/cmd/generate/forge_github.go @@ -55,6 +55,17 @@ func (GitHub) FetchStatus(urls []string) (string, error) { if tag != "" { ret = fmt.Sprintf(statusReleasedFmt, tag) } + } else if obj.State == "closed" { + var mergeCommits []string + for _, u := range urls { + if m := reGitHubCommit.FindStringSubmatch(u); m != nil && m[1] == user && m[2] == repo { + mergeCommits = append(mergeCommits, m[3]) + } + } + tag, err := getGitTagThatContainsAll("https://github.com/"+user+"/"+repo, mergeCommits...) + if err == nil && tag != "" { + ret = fmt.Sprintf(statusReleasedFmt, tag) + } } return ret, nil |