diff --git a/common/gitea_utils.go b/common/gitea_utils.go index 57e8e2f..660d510 100644 --- a/common/gitea_utils.go +++ b/common/gitea_utils.go @@ -723,8 +723,12 @@ func (gitea *GiteaTransport) CreatePullRequestIfNotExist(repo *models.Repository } func (gitea *GiteaTransport) RequestReviews(pr *models.PullRequest, reviewers ...string) ([]*models.PullReview, error) { + activeReviewers := slices.DeleteFunc(reviewers, func(s string) bool { return s == "" }) + if len(activeReviewers) == 0 { + return nil, nil + } reviewOptions := models.PullReviewRequestOptions{ - Reviewers: reviewers, + Reviewers: activeReviewers, } review, err := gitea.client.Repository.RepoCreatePullReviewRequests( diff --git a/common/pr.go b/common/pr.go index 164ae4a..40c2be1 100644 --- a/common/pr.go +++ b/common/pr.go @@ -422,21 +422,16 @@ func (rs *PRSet) AssignReviewers(gitea GiteaReviewFetcherAndRequesterAndUnreques if len(missingReviewers) > 0 { LogDebug(" Requesting reviews from:", missingReviewers) if !IsDryRun { - for _, r := range missingReviewers { - if _, err := gitea.RequestReviews(pr.PR, r); err != nil { - LogError("Cannot create reviews on", PRtoString(pr.PR), "for user:", r, err) - } + if _, err := gitea.RequestReviews(pr.PR, missingReviewers...); err != nil { + LogError("Cannot create reviews on", PRtoString(pr.PR), "for user:", strings.Join(missingReviewers, ","), err) } } } if len(extraReviewers) > 0 { LogDebug(" UnRequesting reviews from:", extraReviewers) if !IsDryRun { - for _, r := range extraReviewers { - org, repo, idx := pr.PRComponents() - if err := gitea.UnrequestReview(org, repo, idx, r); err != nil { - LogError("Cannot unrequest reviews on", PRtoString(pr.PR), "for user:", r, err) - } + if err := gitea.UnrequestReview(pr.PR.Base.Repo.Owner.UserName, pr.PR.Base.Repo.Name, pr.PR.Index, extraReviewers...); err != nil { + LogError("Cannot unrequest reviews on", PRtoString(pr.PR), "for user:", strings.Join(extraReviewers, ","), err) } } }