diff options
Diffstat (limited to 'internal/route/repo/release.go')
-rw-r--r-- | internal/route/repo/release.go | 46 |
1 files changed, 24 insertions, 22 deletions
diff --git a/internal/route/repo/release.go b/internal/route/repo/release.go index 282aa053..f945e4fc 100644 --- a/internal/route/repo/release.go +++ b/internal/route/repo/release.go @@ -8,13 +8,15 @@ import ( "fmt" "strings" + "github.com/gogs/git-module" log "unknwon.dev/clog/v2" + "gogs.io/gogs/internal/conf" "gogs.io/gogs/internal/context" "gogs.io/gogs/internal/db" "gogs.io/gogs/internal/form" + "gogs.io/gogs/internal/gitutil" "gogs.io/gogs/internal/markup" - "gogs.io/gogs/internal/conf" ) const ( @@ -26,14 +28,14 @@ const ( func calReleaseNumCommitsBehind(repoCtx *context.Repository, release *db.Release, countCache map[string]int64) error { // Get count if not exists if _, ok := countCache[release.Target]; !ok { - if repoCtx.GitRepo.IsBranchExist(release.Target) { - commit, err := repoCtx.GitRepo.GetBranchCommit(release.Target) + if repoCtx.GitRepo.HasBranch(release.Target) { + commit, err := repoCtx.GitRepo.BranchCommit(release.Target) if err != nil { - return fmt.Errorf("GetBranchCommit: %v", err) + return fmt.Errorf("get branch commit: %v", err) } countCache[release.Target], err = commit.CommitsCount() if err != nil { - return fmt.Errorf("CommitsCount: %v", err) + return fmt.Errorf("count commits: %v", err) } } else { // Use NumCommits of the newest release on that target @@ -49,13 +51,13 @@ func Releases(c *context.Context) { c.Data["PageIsViewFiles"] = true c.Data["PageIsReleaseList"] = true - tagsResult, err := c.Repo.GitRepo.GetTagsAfter(c.Query("after"), 10) + tagsPage, err := gitutil.Module.ListTagsAfter(c.Repo.GitRepo.Path(), c.Query("after"), 10) if err != nil { - c.Handle(500, fmt.Sprintf("GetTags '%s'", c.Repo.Repository.RepoPath()), err) + c.ServerError("get tags", err) return } - releases, err := db.GetPublishedReleasesByRepoID(c.Repo.Repository.ID, tagsResult.Tags...) + releases, err := db.GetPublishedReleasesByRepoID(c.Repo.Repository.ID, tagsPage.Tags...) if err != nil { c.Handle(500, "GetPublishedReleasesByRepoID", err) return @@ -64,8 +66,8 @@ func Releases(c *context.Context) { // Temproray cache commits count of used branches to speed up. countCache := make(map[string]int64) - results := make([]*db.Release, len(tagsResult.Tags)) - for i, rawTag := range tagsResult.Tags { + results := make([]*db.Release, len(tagsPage.Tags)) + for i, rawTag := range tagsPage.Tags { for j, r := range releases { if r == nil || r.TagName != rawTag { continue @@ -89,9 +91,9 @@ func Releases(c *context.Context) { // No published release matches this tag if results[i] == nil { - commit, err := c.Repo.GitRepo.GetTagCommit(rawTag) + commit, err := c.Repo.GitRepo.TagCommit(rawTag) if err != nil { - c.Handle(500, "GetTagCommit", err) + c.Handle(500, "get tag commit", err) return } @@ -103,7 +105,7 @@ func Releases(c *context.Context) { results[i].NumCommits, err = commit.CommitsCount() if err != nil { - c.Handle(500, "CommitsCount", err) + c.ServerError("count commits", err) return } results[i].NumCommitsBehind = c.Repo.CommitsCount - results[i].NumCommits @@ -113,7 +115,7 @@ func Releases(c *context.Context) { // Only show drafts if user is viewing the latest page var drafts []*db.Release - if tagsResult.HasLatest { + if tagsPage.HasLatest { drafts, err = db.GetDraftReleasesByRepoID(c.Repo.Repository.ID) if err != nil { c.Handle(500, "GetDraftReleasesByRepoID", err) @@ -140,9 +142,9 @@ func Releases(c *context.Context) { } c.Data["Releases"] = results - c.Data["HasPrevious"] = !tagsResult.HasLatest - c.Data["ReachEnd"] = tagsResult.ReachEnd - c.Data["PreviousAfter"] = tagsResult.PreviousAfter + c.Data["HasPrevious"] = !tagsPage.HasLatest + c.Data["ReachEnd"] = !tagsPage.HasNext + c.Data["PreviousAfter"] = tagsPage.PreviousAfter if len(results) > 0 { c.Data["NextAfter"] = results[len(results)-1].TagName } @@ -175,14 +177,14 @@ func NewReleasePost(c *context.Context, f form.NewRelease) { return } - if !c.Repo.GitRepo.IsBranchExist(f.Target) { + if !c.Repo.GitRepo.HasBranch(f.Target) { c.RenderWithErr(c.Tr("form.target_branch_not_exist"), RELEASE_NEW, &f) return } // Use current time if tag not yet exist, otherwise get time from Git var tagCreatedUnix int64 - tag, err := c.Repo.GitRepo.GetTag(f.TagName) + tag, err := c.Repo.GitRepo.Tag(git.RefsTags + f.TagName) if err == nil { commit, err := tag.Commit() if err == nil { @@ -190,15 +192,15 @@ func NewReleasePost(c *context.Context, f form.NewRelease) { } } - commit, err := c.Repo.GitRepo.GetBranchCommit(f.Target) + commit, err := c.Repo.GitRepo.BranchCommit(f.Target) if err != nil { - c.Handle(500, "GetBranchCommit", err) + c.ServerError("get branch commit", err) return } commitsCount, err := commit.CommitsCount() if err != nil { - c.Handle(500, "CommitsCount", err) + c.ServerError("count commits", err) return } |