From c9748bbc03f102010d13d5de2cb9feeb6b34d16e Mon Sep 17 00:00:00 2001 From: Seongmin Lee Date: Sat, 2 May 2026 15:17:06 +0900 Subject: [PATCH] knotserver,types: remove unused fields from `repo.compare` response Signed-off-by: Seongmin Lee --- knotserver/git/diff.go | 13 +++++-------- knotserver/xrpc/repo_compare.go | 9 ++------- types/repo.go | 3 --- 3 files changed, 7 insertions(+), 18 deletions(-) diff --git a/knotserver/git/diff.go b/knotserver/git/diff.go index 38c761ab..b83ae972 100644 --- a/knotserver/git/diff.go +++ b/knotserver/git/diff.go @@ -200,18 +200,17 @@ func (g *GitRepo) commitsBetween(newCommit, oldCommit *object.Commit) ([]*object return commits, nil } -func (g *GitRepo) FormatPatch(base, commit2 *object.Commit) (string, []types.FormatPatch, error) { +func (g *GitRepo) FormatPatch(base, commit2 *object.Commit) (string, int, error) { // get list of commits between commit2 and base commits, err := g.commitsBetween(commit2, base) if err != nil { - return "", nil, fmt.Errorf("failed to get commits: %w", err) + return "", 0, fmt.Errorf("failed to get commits: %w", err) } // reverse the list so we start from the oldest one and go up to the most recent one slices.Reverse(commits) var allPatchesContent strings.Builder - var allPatches []types.FormatPatch for _, commit := range commits { changeId := "" @@ -224,16 +223,14 @@ func (g *GitRepo) FormatPatch(base, commit2 *object.Commit) (string, []types.For additionalArgs = append(additionalArgs, "--add-header", fmt.Sprintf("Change-Id: %s", changeId)) } - stdout, patch, err := g.formatSinglePatch(commit.Hash, additionalArgs...) + stdout, _, err := g.formatSinglePatch(commit.Hash, additionalArgs...) if err != nil { - return "", nil, fmt.Errorf("failed to format patch for commit %s: %w", commit.Hash.String(), err) + return "", 0, fmt.Errorf("failed to format patch for commit %s: %w", commit.Hash.String(), err) } allPatchesContent.WriteString(stdout) allPatchesContent.WriteString("\n") - - allPatches = append(allPatches, *patch) } - return allPatchesContent.String(), allPatches, nil + return allPatchesContent.String(), len(commits), nil } diff --git a/knotserver/xrpc/repo_compare.go b/knotserver/xrpc/repo_compare.go index 3b03417f..63ba1783 100644 --- a/knotserver/xrpc/repo_compare.go +++ b/knotserver/xrpc/repo_compare.go @@ -4,7 +4,6 @@ import ( "fmt" "net/http" - "github.com/bluekeyes/go-gitdiff/gitdiff" "tangled.org/core/knotserver/git" "tangled.org/core/types" xrpcerr "tangled.org/core/xrpc/errors" @@ -62,7 +61,7 @@ func (x *Xrpc) RepoCompare(w http.ResponseWriter, r *http.Request) { return } - rawPatch, formatPatch, err := gr.FormatPatch(commit1, commit2) + rawPatch, patchCount, err := gr.FormatPatch(commit1, commit2) if err != nil { x.Logger.Error("error comparing revisions", "msg", err.Error()) writeError(w, xrpcerr.NewXrpcError( @@ -72,10 +71,9 @@ func (x *Xrpc) RepoCompare(w http.ResponseWriter, r *http.Request) { return } - var combinedPatch []*gitdiff.File var combinedPatchRaw string // we need the combined patch - if len(formatPatch) >= 2 { + if patchCount > 1 { mergeBaseCommit, err := gr.MergeBase(commit1, commit2) if err != nil { x.Logger.Error("error comparing revisions", "msg", err.Error()) @@ -84,7 +82,6 @@ func (x *Xrpc) RepoCompare(w http.ResponseWriter, r *http.Request) { if err != nil { x.Logger.Error("error comparing revisions", "msg", err.Error()) } else { - combinedPatch = diffTree.Diff combinedPatchRaw = diffTree.Patch } } @@ -93,9 +90,7 @@ func (x *Xrpc) RepoCompare(w http.ResponseWriter, r *http.Request) { response := types.RepoFormatPatchResponse{ Rev1: commit1.Hash.String(), Rev2: commit2.Hash.String(), - FormatPatch: formatPatch, FormatPatchRaw: rawPatch, - CombinedPatch: combinedPatch, CombinedPatchRaw: combinedPatchRaw, } diff --git a/types/repo.go b/types/repo.go index 24f5273b..d0b67241 100644 --- a/types/repo.go +++ b/types/repo.go @@ -1,7 +1,6 @@ package types import ( - "github.com/bluekeyes/go-gitdiff/gitdiff" "github.com/go-git/go-git/v5/plumbing/object" ) @@ -36,9 +35,7 @@ type RepoCommitResponse struct { type RepoFormatPatchResponse struct { Rev1 string `json:"rev1,omitempty"` Rev2 string `json:"rev2,omitempty"` - FormatPatch []FormatPatch `json:"format_patch,omitempty"` FormatPatchRaw string `json:"patch,omitempty"` - CombinedPatch []*gitdiff.File `json:"combined_patch,omitempty"` CombinedPatchRaw string `json:"combined_patch_raw,omitempty"` } -- 2.51.2