Skip to content

Commit 668d3c0

Browse files
author
Gitea
committed
Merge branch into master
2 parents b84622d + 2ab8c78 commit 668d3c0

File tree

116 files changed

+4021
-3192
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

116 files changed

+4021
-3192
lines changed

docs/content/doc/advanced/config-cheat-sheet.en-us.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -558,13 +558,13 @@ Gitea can support Markup using external tools. The example below will add a mark
558558

559559
```ini
560560
[markup.asciidoc]
561-
ENABLED = false
561+
ENABLED = true
562562
FILE_EXTENSIONS = .adoc,.asciidoc
563563
RENDER_COMMAND = "asciidoc --out-file=- -"
564564
IS_INPUT_FILE = false
565565
```
566566

567-
- ENABLED: **false** Enable markup support.
567+
- ENABLED: **false** Enable markup support; set to **true** to enable this renderer.
568568
- FILE\_EXTENSIONS: **\<empty\>** List of file extensions that should be rendered by an external
569569
command. Multiple extentions needs a comma as splitter.
570570
- RENDER\_COMMAND: External command to render all matching extensions.

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ require (
9898
github.com/urfave/cli v1.20.0
9999
github.com/willf/bitset v0.0.0-20180426185212-8ce1146b8621 // indirect
100100
github.com/yohcop/openid-go v0.0.0-20160914080427-2c050d2dae53
101-
golang.org/x/crypto v0.0.0-20190927123631-a832865fa7ad
101+
golang.org/x/crypto v0.0.0-20191117063200-497ca9f6d64f
102102
golang.org/x/net v0.0.0-20191101175033-0deb6923b6d9
103103
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45
104104
golang.org/x/sys v0.0.0-20190910064555-bbd175535a8b

go.sum

+2
Original file line numberDiff line numberDiff line change
@@ -583,6 +583,8 @@ golang.org/x/crypto v0.0.0-20190617133340-57b3e21c3d56/go.mod h1:yigFU9vqHzYiE8U
583583
golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
584584
golang.org/x/crypto v0.0.0-20190927123631-a832865fa7ad h1:5E5raQxcv+6CZ11RrBYQe5WRbUIWpScjh0kvHZkZIrQ=
585585
golang.org/x/crypto v0.0.0-20190927123631-a832865fa7ad/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
586+
golang.org/x/crypto v0.0.0-20191117063200-497ca9f6d64f h1:kz4KIr+xcPUsI3VMoqWfPMvtnJ6MGfiVwsWSVzphMO4=
587+
golang.org/x/crypto v0.0.0-20191117063200-497ca9f6d64f/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
586588
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
587589
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
588590
golang.org/x/exp v0.0.0-20190731235908-ec7cb31e5a56/go.mod h1:JhuoJpWY28nO4Vef9tZUw9qufEGTyX1+7lmHxV5q5G4=

integrations/api_repo_test.go

+2
Original file line numberDiff line numberDiff line change
@@ -347,6 +347,8 @@ func TestAPIOrgRepoCreate(t *testing.T) {
347347
{ctxUserID: 1, orgName: "user3", repoName: "repo-admin", expectedStatus: http.StatusCreated},
348348
{ctxUserID: 2, orgName: "user3", repoName: "repo-own", expectedStatus: http.StatusCreated},
349349
{ctxUserID: 2, orgName: "user6", repoName: "repo-bad-org", expectedStatus: http.StatusForbidden},
350+
{ctxUserID: 28, orgName: "user3", repoName: "repo-creator", expectedStatus: http.StatusCreated},
351+
{ctxUserID: 28, orgName: "user6", repoName: "repo-not-creator", expectedStatus: http.StatusForbidden},
350352
}
351353

352354
prepareTestEnv(t)

integrations/user_test.go

+1
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ func TestRenameReservedUsername(t *testing.T) {
9090
"repo",
9191
"template",
9292
"user",
93+
"search",
9394
}
9495

9596
session := loginUser(t, "user2")

models/fixtures/issue_watch.yml

+16
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,19 @@
1313
is_watching: false
1414
created_unix: 946684800
1515
updated_unix: 946684800
16+
17+
-
18+
id: 3
19+
user_id: 2
20+
issue_id: 7
21+
is_watching: true
22+
created_unix: 946684800
23+
updated_unix: 946684800
24+
25+
-
26+
id: 4
27+
user_id: 1
28+
issue_id: 7
29+
is_watching: false
30+
created_unix: 946684800
31+
updated_unix: 946684800

models/fixtures/org_user.yml

+13
Original file line numberDiff line numberDiff line change
@@ -45,3 +45,16 @@
4545
uid: 24
4646
org_id: 25
4747
is_public: true
48+
49+
-
50+
id: 9
51+
uid: 28
52+
org_id: 3
53+
is_public: true
54+
55+
-
56+
id: 10
57+
uid: 28
58+
org_id: 6
59+
is_public: true
60+

models/fixtures/team.yml

+20
Original file line numberDiff line numberDiff line change
@@ -96,3 +96,23 @@
9696
authorize: 1 # read
9797
num_repos: 0
9898
num_members: 0
99+
100+
-
101+
id: 12
102+
org_id: 3
103+
lower_name: team12creators
104+
name: team12Creators
105+
authorize: 3 # admin
106+
num_repos: 0
107+
num_members: 1
108+
can_create_org_repo: true
109+
110+
-
111+
id: 13
112+
org_id: 6
113+
lower_name: team13notcreators
114+
name: team13NotCreators
115+
authorize: 3 # admin
116+
num_repos: 0
117+
num_members: 1
118+
can_create_org_repo: false

models/fixtures/team_user.yml

+12
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,15 @@
6969
org_id: 25
7070
team_id: 10
7171
uid: 24
72+
73+
-
74+
id: 13
75+
org_id: 3
76+
team_id: 12
77+
uid: 28
78+
79+
-
80+
id: 14
81+
org_id: 6
82+
team_id: 13
83+
uid: 28

models/fixtures/user.yml

+24-4
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@
5050
avatar: avatar3
5151
avatar_email: [email protected]
5252
num_repos: 3
53-
num_members: 2
54-
num_teams: 3
53+
num_members: 3
54+
num_teams: 4
5555

5656
-
5757
id: 4
@@ -102,8 +102,8 @@
102102
avatar: avatar6
103103
avatar_email: [email protected]
104104
num_repos: 0
105-
num_members: 1
106-
num_teams: 1
105+
num_members: 2
106+
num_teams: 2
107107

108108
-
109109
id: 7
@@ -443,3 +443,23 @@
443443
avatar: avatar27
444444
avatar_email: [email protected]
445445
num_repos: 2
446+
447+
-
448+
id: 28
449+
lower_name: user28
450+
name: user28
451+
full_name: "user27"
452+
453+
keep_email_private: true
454+
passwd: 7d93daa0d1e6f2305cc8fa496847d61dc7320bb16262f9c55dd753480207234cdd96a93194e408341971742f4701772a025a # password
455+
type: 0 # individual
456+
salt: ZogKvWdyEx
457+
is_admin: false
458+
avatar: avatar28
459+
avatar_email: [email protected]
460+
num_repos: 0
461+
num_stars: 0
462+
num_followers: 0
463+
num_following: 0
464+
is_active: true
465+

models/issue.go

+5-14
Original file line numberDiff line numberDiff line change
@@ -722,11 +722,7 @@ func (issue *Issue) ChangeTitle(doer *User, oldTitle string) (err error) {
722722
return fmt.Errorf("createComment: %v", err)
723723
}
724724

725-
if err = issue.neuterCrossReferences(sess); err != nil {
726-
return err
727-
}
728-
729-
if err = issue.addCrossReferences(sess, doer); err != nil {
725+
if err = issue.addCrossReferences(sess, doer, true); err != nil {
730726
return err
731727
}
732728

@@ -810,10 +806,8 @@ func (issue *Issue) ChangeContent(doer *User, content string) (err error) {
810806
if err = updateIssueCols(sess, issue, "content"); err != nil {
811807
return fmt.Errorf("UpdateIssueCols: %v", err)
812808
}
813-
if err = issue.neuterCrossReferences(sess); err != nil {
814-
return err
815-
}
816-
if err = issue.addCrossReferences(sess, doer); err != nil {
809+
810+
if err = issue.addCrossReferences(sess, doer, true); err != nil {
817811
return err
818812
}
819813

@@ -964,7 +958,7 @@ func newIssue(e *xorm.Session, doer *User, opts NewIssueOptions) (err error) {
964958
if err = opts.Issue.loadAttributes(e); err != nil {
965959
return err
966960
}
967-
return opts.Issue.addCrossReferences(e, doer)
961+
return opts.Issue.addCrossReferences(e, doer, false)
968962
}
969963

970964
// NewIssue creates new issue with labels for repository.
@@ -1598,13 +1592,10 @@ func UpdateIssue(issue *Issue) error {
15981592
if err := updateIssue(sess, issue); err != nil {
15991593
return err
16001594
}
1601-
if err := issue.neuterCrossReferences(sess); err != nil {
1602-
return err
1603-
}
16041595
if err := issue.loadPoster(sess); err != nil {
16051596
return err
16061597
}
1607-
if err := issue.addCrossReferences(sess, issue.Poster); err != nil {
1598+
if err := issue.addCrossReferences(sess, issue.Poster, true); err != nil {
16081599
return err
16091600
}
16101601
return sess.Commit()

models/issue_comment.go

+2-5
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,7 @@ func createComment(e *xorm.Session, opts *CreateCommentOptions) (_ *Comment, err
545545
}
546546
}
547547

548-
if err = comment.addCrossReferences(e, opts.Doer); err != nil {
548+
if err = comment.addCrossReferences(e, opts.Doer, false); err != nil {
549549
return nil, err
550550
}
551551

@@ -882,10 +882,7 @@ func UpdateComment(c *Comment, doer *User) error {
882882
if err := c.loadIssue(sess); err != nil {
883883
return err
884884
}
885-
if err := c.neuterCrossReferences(sess); err != nil {
886-
return err
887-
}
888-
if err := c.addCrossReferences(sess, doer); err != nil {
885+
if err := c.addCrossReferences(sess, doer, true); err != nil {
889886
return err
890887
}
891888
if err := sess.Commit(); err != nil {

models/issue_watch.go

+2
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ func getIssueWatch(e Engine, userID, issueID int64) (iw *IssueWatch, exists bool
5656
exists, err = e.
5757
Where("user_id = ?", userID).
5858
And("issue_id = ?", issueID).
59+
And("is_watching = ?", true).
5960
Get(iw)
6061
return
6162
}
@@ -80,6 +81,7 @@ func GetIssueWatchers(issueID int64) (IssueWatchList, error) {
8081
func getIssueWatchers(e Engine, issueID int64) (watches IssueWatchList, err error) {
8182
err = e.
8283
Where("`issue_watch`.issue_id = ?", issueID).
84+
And("`issue_watch`.is_watching = ?", true).
8385
And("`user`.is_active = ?", true).
8486
And("`user`.prohibit_login = ?", false).
8587
Join("INNER", "`user`", "`user`.id = `issue_watch`.user_id").

models/issue_watch_test.go

+15-8
Original file line numberDiff line numberDiff line change
@@ -15,26 +15,26 @@ func TestCreateOrUpdateIssueWatch(t *testing.T) {
1515

1616
assert.NoError(t, CreateOrUpdateIssueWatch(3, 1, true))
1717
iw := AssertExistsAndLoadBean(t, &IssueWatch{UserID: 3, IssueID: 1}).(*IssueWatch)
18-
assert.Equal(t, true, iw.IsWatching)
18+
assert.True(t, iw.IsWatching)
1919

2020
assert.NoError(t, CreateOrUpdateIssueWatch(1, 1, false))
2121
iw = AssertExistsAndLoadBean(t, &IssueWatch{UserID: 1, IssueID: 1}).(*IssueWatch)
22-
assert.Equal(t, false, iw.IsWatching)
22+
assert.False(t, iw.IsWatching)
2323
}
2424

2525
func TestGetIssueWatch(t *testing.T) {
2626
assert.NoError(t, PrepareTestDatabase())
2727

2828
_, exists, err := GetIssueWatch(9, 1)
29-
assert.Equal(t, true, exists)
29+
assert.True(t, exists)
3030
assert.NoError(t, err)
3131

3232
_, exists, err = GetIssueWatch(2, 2)
33-
assert.Equal(t, true, exists)
33+
assert.False(t, exists)
3434
assert.NoError(t, err)
3535

3636
_, exists, err = GetIssueWatch(3, 1)
37-
assert.Equal(t, false, exists)
37+
assert.False(t, exists)
3838
assert.NoError(t, err)
3939
}
4040

@@ -44,13 +44,20 @@ func TestGetIssueWatchers(t *testing.T) {
4444
iws, err := GetIssueWatchers(1)
4545
assert.NoError(t, err)
4646
// Watcher is inactive, thus 0
47-
assert.Equal(t, 0, len(iws))
47+
assert.Len(t, iws, 0)
4848

4949
iws, err = GetIssueWatchers(2)
5050
assert.NoError(t, err)
51-
assert.Equal(t, 1, len(iws))
51+
// Watcher is explicit not watching
52+
assert.Len(t, iws, 0)
5253

5354
iws, err = GetIssueWatchers(5)
5455
assert.NoError(t, err)
55-
assert.Equal(t, 0, len(iws))
56+
// Issue has no Watchers
57+
assert.Len(t, iws, 0)
58+
59+
iws, err = GetIssueWatchers(7)
60+
assert.NoError(t, err)
61+
// Issue has one watcher
62+
assert.Len(t, iws, 1)
5663
}

0 commit comments

Comments
 (0)