···
1690
-
// extract patch by performing compare
1691
-
forkScheme := "http"
1692
-
if !s.config.Core.Dev {
1693
-
forkScheme = "https"
1695
-
forkHost := fmt.Sprintf("%s://%s", forkScheme, forkRepo.Knot)
1696
-
forkRepoId := fmt.Sprintf("%s/%s", forkRepo.Did, forkRepo.Name)
1697
-
forkXrpcBytes, err := tangled.RepoCompare(r.Context(), &indigoxrpc.Client{Host: forkHost}, forkRepoId, pull.TargetBranch, pull.PullSource.Branch)
1699
-
if xrpcerr := xrpcclient.HandleXrpcErr(err); xrpcerr != nil {
1700
-
log.Println("failed to call XRPC repo.compare for fork", xrpcerr)
1701
-
s.pages.Notice(w, "resubmit-error", "Failed to create pull request. Try again later.")
1704
-
log.Printf("failed to compare branches: %s", err)
1705
-
s.pages.Notice(w, "resubmit-error", "Failed to create pull request. Try again later.")
1709
-
var forkComparison types.RepoFormatPatchResponse
1710
-
if err := json.Unmarshal(forkXrpcBytes, &forkComparison); err != nil {
1711
-
log.Println("failed to decode XRPC compare response for fork", err)
1712
-
s.pages.Notice(w, "resubmit-error", "Failed to create pull request. Try again later.")
// update the hidden tracking branch to latest
client, err := s.oauth.ServiceClient(
···
1721
+
hiddenRef := fmt.Sprintf("hidden/%s/%s", pull.PullSource.Branch, pull.TargetBranch)
1722
+
// extract patch by performing compare
1723
+
forkScheme := "http"
1724
+
if !s.config.Core.Dev {
1725
+
forkScheme = "https"
1727
+
forkHost := fmt.Sprintf("%s://%s", forkScheme, forkRepo.Knot)
1728
+
forkRepoId := fmt.Sprintf("%s/%s", forkRepo.Did, forkRepo.Name)
1729
+
forkXrpcBytes, err := tangled.RepoCompare(r.Context(), &indigoxrpc.Client{Host: forkHost}, forkRepoId, hiddenRef, pull.PullSource.Branch)
1731
+
if xrpcerr := xrpcclient.HandleXrpcErr(err); xrpcerr != nil {
1732
+
log.Println("failed to call XRPC repo.compare for fork", xrpcerr)
1733
+
s.pages.Notice(w, "resubmit-error", "Failed to create pull request. Try again later.")
1736
+
log.Printf("failed to compare branches: %s", err)
1737
+
s.pages.Notice(w, "resubmit-error", "Failed to create pull request. Try again later.")
1741
+
var forkComparison types.RepoFormatPatchResponse
1742
+
if err := json.Unmarshal(forkXrpcBytes, &forkComparison); err != nil {
1743
+
log.Println("failed to decode XRPC compare response for fork", err)
1744
+
s.pages.Notice(w, "resubmit-error", "Failed to create pull request. Try again later.")
// Use the fork comparison we already made
comparison := forkComparison