diff options
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 |