Monorepo for Tangled tangled.org

appview: add proper author attribution while merge a pull request

get user handle from resolver, and use the user's primary email id, if set

Tangled be809e87 bccc48b7

Changed files
+13 -1
appview
state
+13 -1
appview/state/pull.go
··· 648 648 return 649 649 } 650 650 651 + ident, err := s.resolver.ResolveIdent(r.Context(), pull.OwnerDid) 652 + if err != nil { 653 + log.Printf("resolving identity: %s", err) 654 + w.WriteHeader(http.StatusNotFound) 655 + return 656 + } 657 + 658 + email, err := db.GetPrimaryEmail(s.db, pull.OwnerDid) 659 + if err != nil { 660 + log.Printf("failed to get primary email: %s", err) 661 + } 662 + 651 663 ksClient, err := NewSignedClient(f.Knot, secret, s.config.Dev) 652 664 if err != nil { 653 665 log.Printf("failed to create signed client for %s: %s", f.Knot, err) ··· 656 668 } 657 669 658 670 // Merge the pull request 659 - resp, err := ksClient.Merge([]byte(pull.LatestPatch()), f.OwnerDid(), f.RepoName, pull.TargetBranch, pull.Title, pull.Body, "", "") 671 + resp, err := ksClient.Merge([]byte(pull.LatestPatch()), f.OwnerDid(), f.RepoName, pull.TargetBranch, pull.Title, pull.Body, ident.Handle.String(), email.Address) 660 672 if err != nil { 661 673 log.Printf("failed to merge pull request: %s", err) 662 674 s.pages.Notice(w, "pull-merge-error", "Failed to merge pull request. Try again later.")