Skip to content

Commit 8903d39

Browse files
authored
Merge branch 'release/v1.22' into backport-32130-v1.22
2 parents 2cac3cc + 9fc3915 commit 8903d39

File tree

13 files changed

+93
-16
lines changed

13 files changed

+93
-16
lines changed

models/activities/action.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -450,9 +450,7 @@ func GetFeeds(ctx context.Context, opts GetFeedsOptions) (ActionList, int64, err
450450
return nil, 0, err
451451
}
452452

453-
sess := db.GetEngine(ctx).Where(cond).
454-
Select("`action`.*"). // this line will avoid select other joined table's columns
455-
Join("INNER", "repository", "`repository`.id = `action`.repo_id")
453+
sess := db.GetEngine(ctx).Where(cond)
456454

457455
opts.SetDefaultValues()
458456
sess = db.SetSessionPagination(sess, &opts)

models/activities/action_test.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -226,6 +226,8 @@ func TestNotifyWatchers(t *testing.T) {
226226
}
227227

228228
func TestGetFeedsCorrupted(t *testing.T) {
229+
// Now we will not check for corrupted data in the feeds
230+
// users should run doctor to fix their data
229231
assert.NoError(t, unittest.PrepareTestDatabase())
230232
user := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 1})
231233
unittest.AssertExistsAndLoadBean(t, &activities_model.Action{
@@ -239,8 +241,8 @@ func TestGetFeedsCorrupted(t *testing.T) {
239241
IncludePrivate: true,
240242
})
241243
assert.NoError(t, err)
242-
assert.Len(t, actions, 0)
243-
assert.Equal(t, int64(0), count)
244+
assert.Len(t, actions, 1)
245+
assert.Equal(t, int64(1), count)
244246
}
245247

246248
func TestConsistencyUpdateAction(t *testing.T) {

models/fixtures/comment.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,3 +83,22 @@
8383
issue_id: 2 # in repo_id 1
8484
review_id: 20
8585
created_unix: 946684810
86+
87+
-
88+
id: 10
89+
type: 22 # review
90+
poster_id: 5
91+
issue_id: 3 # in repo_id 1
92+
content: "reviewed by user5"
93+
review_id: 21
94+
created_unix: 946684816
95+
96+
-
97+
id: 11
98+
type: 27 # review request
99+
poster_id: 2
100+
issue_id: 3 # in repo_id 1
101+
content: "review request for user5"
102+
review_id: 22
103+
assignee_id: 5
104+
created_unix: 946684817

models/fixtures/review.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,3 +179,22 @@
179179
content: "Review Comment"
180180
updated_unix: 946684810
181181
created_unix: 946684810
182+
183+
-
184+
id: 21
185+
type: 2
186+
reviewer_id: 5
187+
issue_id: 3
188+
content: "reviewed by user5"
189+
commit_id: 4a357436d925b5c974181ff12a994538ddc5a269
190+
updated_unix: 946684816
191+
created_unix: 946684816
192+
193+
-
194+
id: 22
195+
type: 4
196+
reviewer_id: 5
197+
issue_id: 3
198+
content: "review request for user5"
199+
updated_unix: 946684817
200+
created_unix: 946684817

models/issues/pull.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -387,7 +387,7 @@ func (pr *PullRequest) getReviewedByLines(ctx context.Context, writer io.Writer)
387387

388388
// Note: This doesn't page as we only expect a very limited number of reviews
389389
reviews, err := FindLatestReviews(ctx, FindReviewOptions{
390-
Type: ReviewTypeApprove,
390+
Types: []ReviewType{ReviewTypeApprove},
391391
IssueID: pr.IssueID,
392392
OfficialOnly: setting.Repository.PullRequest.DefaultMergeMessageOfficialApproversOnly,
393393
})

models/issues/review.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ func GetCurrentReview(ctx context.Context, reviewer *user_model.User, issue *Iss
364364
return nil, nil
365365
}
366366
reviews, err := FindReviews(ctx, FindReviewOptions{
367-
Type: ReviewTypePending,
367+
Types: []ReviewType{ReviewTypePending},
368368
IssueID: issue.ID,
369369
ReviewerID: reviewer.ID,
370370
})

models/issues/review_list.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ func (reviews ReviewList) LoadIssues(ctx context.Context) error {
6363
// FindReviewOptions represent possible filters to find reviews
6464
type FindReviewOptions struct {
6565
db.ListOptions
66-
Type ReviewType
66+
Types []ReviewType
6767
IssueID int64
6868
ReviewerID int64
6969
OfficialOnly bool
@@ -78,8 +78,8 @@ func (opts *FindReviewOptions) toCond() builder.Cond {
7878
if opts.ReviewerID > 0 {
7979
cond = cond.And(builder.Eq{"reviewer_id": opts.ReviewerID})
8080
}
81-
if opts.Type != ReviewTypeUnknown {
82-
cond = cond.And(builder.Eq{"type": opts.Type})
81+
if len(opts.Types) > 0 {
82+
cond = cond.And(builder.In("type", opts.Types))
8383
}
8484
if opts.OfficialOnly {
8585
cond = cond.And(builder.Eq{"official": true})

models/issues/review_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ func TestReviewType_Icon(t *testing.T) {
6363
func TestFindReviews(t *testing.T) {
6464
assert.NoError(t, unittest.PrepareTestDatabase())
6565
reviews, err := issues_model.FindReviews(db.DefaultContext, issues_model.FindReviewOptions{
66-
Type: issues_model.ReviewTypeApprove,
66+
Types: []issues_model.ReviewType{issues_model.ReviewTypeApprove},
6767
IssueID: 2,
6868
ReviewerID: 1,
6969
})
@@ -75,7 +75,7 @@ func TestFindReviews(t *testing.T) {
7575
func TestFindLatestReviews(t *testing.T) {
7676
assert.NoError(t, unittest.PrepareTestDatabase())
7777
reviews, err := issues_model.FindLatestReviews(db.DefaultContext, issues_model.FindReviewOptions{
78-
Type: issues_model.ReviewTypeApprove,
78+
Types: []issues_model.ReviewType{issues_model.ReviewTypeApprove},
7979
IssueID: 11,
8080
})
8181
assert.NoError(t, err)

routers/api/v1/repo/pull_review.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,6 @@ func ListPullReviews(ctx *context.APIContext) {
8383

8484
opts := issues_model.FindReviewOptions{
8585
ListOptions: utils.GetListOptions(ctx),
86-
Type: issues_model.ReviewTypeUnknown,
8786
IssueID: pr.IssueID,
8887
}
8988

services/pull/pull.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -990,6 +990,8 @@ type CommitInfo struct {
990990
}
991991

992992
// GetPullCommits returns all commits on given pull request and the last review commit sha
993+
// Attention: The last review commit sha must be from the latest review whose commit id is not empty.
994+
// So the type of the latest review cannot be "ReviewTypeRequest".
993995
func GetPullCommits(ctx *gitea_context.Context, issue *issues_model.Issue) ([]CommitInfo, string, error) {
994996
pull := issue.PullRequest
995997

@@ -1035,7 +1037,11 @@ func GetPullCommits(ctx *gitea_context.Context, issue *issues_model.Issue) ([]Co
10351037
lastreview, err := issues_model.FindLatestReviews(ctx, issues_model.FindReviewOptions{
10361038
IssueID: issue.ID,
10371039
ReviewerID: ctx.Doer.ID,
1038-
Type: issues_model.ReviewTypeUnknown,
1040+
Types: []issues_model.ReviewType{
1041+
issues_model.ReviewTypeApprove,
1042+
issues_model.ReviewTypeComment,
1043+
issues_model.ReviewTypeReject,
1044+
},
10391045
})
10401046

10411047
if err != nil && !issues_model.IsErrReviewNotExist(err) {

0 commit comments

Comments
 (0)