Skip to content

Commit 081449d

Browse files
author
Gusted
authored
Don't allow merging PR's which are being conflict checked (#19357) (#19358)
* Don't allow merging PR's which are being conflict checked (#19357) - Backport of #19357 - When a PR is still being conflict checked, don't allow the PR to be merged(the merge button could already be visible before e.g. a new commit was pushed to the PR). - Resolves #19352 * Update error message
1 parent ee3a21a commit 081449d

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

services/pull/check.go

+5
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ var (
3636
ErrUserNotAllowedToMerge = errors.New("user not allowed to merge")
3737
ErrHasMerged = errors.New("has already been merged")
3838
ErrIsWorkInProgress = errors.New("work in progress PRs cannot be merged")
39+
ErrIsChecking = errors.New("cannot merge while conflict checking is in progress")
3940
ErrNotMergableState = errors.New("not in mergeable state")
4041
ErrDependenciesLeft = errors.New("is blocked by an open dependency")
4142
)
@@ -88,6 +89,10 @@ func CheckPullMergable(ctx context.Context, doer *user_model.User, perm *models.
8889
return ErrNotMergableState
8990
}
9091

92+
if pr.IsChecking() {
93+
return ErrIsChecking
94+
}
95+
9196
if err := CheckPRReadyToMerge(pr, false); err != nil {
9297
if models.IsErrNotAllowedToMerge(err) {
9398
if force {

0 commit comments

Comments
 (0)