diff options
author | oliverpool <3864879+oliverpool@users.noreply.github.com> | 2023-04-18 21:11:17 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-18 21:11:17 +0200 |
commit | bb2783860b8db033f9dcbd223a6c8b5a5c1044ac (patch) | |
tree | 3107ddfb1418ca3e2ab07041c75fe61640d18955 /models | |
parent | 75b9845420bb5686fc212272a4d9a07543eaced7 (diff) | |
download | gitea-bb2783860b8db033f9dcbd223a6c8b5a5c1044ac.tar.gz gitea-bb2783860b8db033f9dcbd223a6c8b5a5c1044ac.zip |
fix calReleaseNumCommitsBehind (#24148)
`repoCtx.CommitsCount` is not reliably the commit count of the default
branch (Repository.GetCommitsCount depends on what is currently
displayed).
For instance on the releases page the commit count is correct:
https://codeberg.org/Codeberg/pages-server/releases
![2023-04-15-215027](https://user-images.githubusercontent.com/3864879/232250500-6c05dc00-7030-4ec9-87f1-18c7797d36bf.png)
However it is not on the single page:
https://codeberg.org/Codeberg/pages-server/releases/tag/v4.6.2
![2023-04-15-215036](https://user-images.githubusercontent.com/3864879/232250503-620c8038-7c2c-45a1-b99d-cb994ef955a6.png)
This PR fixes this by removing a "fast branch" which was using this
field (I think this field should be removed, since it is a bit
unpredictable - but this would mean a larger refactoring PR).
_contributed in the context of @forgejo_
---------
Co-authored-by: Giteabot <teabot@gitea.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Diffstat (limited to 'models')
-rw-r--r-- | models/db/iterate_test.go | 2 | ||||
-rw-r--r-- | models/db/list_test.go | 4 | ||||
-rw-r--r-- | models/fixtures/release.yml | 42 | ||||
-rw-r--r-- | models/fixtures/repo_unit.yml | 26 | ||||
-rw-r--r-- | models/fixtures/repository.yml | 14 | ||||
-rw-r--r-- | models/fixtures/user.yml | 2 | ||||
-rw-r--r-- | models/repo/repo_list_test.go | 6 |
7 files changed, 89 insertions, 7 deletions
diff --git a/models/db/iterate_test.go b/models/db/iterate_test.go index 6bcf740c23..f9f1213721 100644 --- a/models/db/iterate_test.go +++ b/models/db/iterate_test.go @@ -25,7 +25,7 @@ func TestIterate(t *testing.T) { return nil }) assert.NoError(t, err) - assert.EqualValues(t, 84, repoCnt) + assert.EqualValues(t, 89, repoCnt) err = db.Iterate(db.DefaultContext, nil, func(ctx context.Context, repoUnit *repo_model.RepoUnit) error { reopUnit2 := repo_model.RepoUnit{ID: repoUnit.ID} diff --git a/models/db/list_test.go b/models/db/list_test.go index 1295692cec..195450b1e7 100644 --- a/models/db/list_test.go +++ b/models/db/list_test.go @@ -35,11 +35,11 @@ func TestFind(t *testing.T) { var repoUnits []repo_model.RepoUnit err := db.Find(db.DefaultContext, &opts, &repoUnits) assert.NoError(t, err) - assert.EqualValues(t, 84, len(repoUnits)) + assert.EqualValues(t, 89, len(repoUnits)) cnt, err := db.Count(db.DefaultContext, &opts, new(repo_model.RepoUnit)) assert.NoError(t, err) - assert.EqualValues(t, 84, cnt) + assert.EqualValues(t, 89, cnt) repoUnits = make([]repo_model.RepoUnit, 0, 10) newCnt, err := db.FindAndCount(db.DefaultContext, &opts, &repoUnits) diff --git a/models/fixtures/release.yml b/models/fixtures/release.yml index 1703f959d2..6d09401ebc 100644 --- a/models/fixtures/release.yml +++ b/models/fixtures/release.yml @@ -66,3 +66,45 @@ is_prerelease: true is_tag: false created_unix: 946684800 + +- id: 6 + repo_id: 57 + publisher_id: 2 + tag_name: "v1.0" + lower_tag_name: "v1.0" + target: "main" + title: "v1.0" + sha1: "a8a700e8c644c783ba2c6e742bb81bf91e244bff" + num_commits: 3 + is_draft: false + is_prerelease: false + is_tag: false + created_unix: 946684801 + +- id: 7 + repo_id: 57 + publisher_id: 2 + tag_name: "v1.1" + lower_tag_name: "v1.1" + target: "main" + title: "v1.1" + sha1: "cef06e48f2642cd0dc9597b4bea09f4b3f74aad6" + num_commits: 5 + is_draft: false + is_prerelease: false + is_tag: false + created_unix: 946684802 + +- id: 8 + repo_id: 57 + publisher_id: 2 + tag_name: "v2.0" + lower_tag_name: "v2.0" + target: "main" + title: "v2.0" + sha1: "7197b56fdc75b453f47c9110938cb46a303579fd" + num_commits: 6 + is_draft: false + is_prerelease: false + is_tag: false + created_unix: 946684803 diff --git a/models/fixtures/repo_unit.yml b/models/fixtures/repo_unit.yml index ef0b7c1a94..184be2d861 100644 --- a/models/fixtures/repo_unit.yml +++ b/models/fixtures/repo_unit.yml @@ -1,3 +1,4 @@ +# See models/unit/unit.go for the meaning of the type - id: 1 repo_id: 1 @@ -575,3 +576,28 @@ repo_id: 56 type: 1 created_unix: 946684810 +- + id: 85 + repo_id: 57 + type: 1 + created_unix: 946684810 +- + id: 86 + repo_id: 57 + type: 2 + created_unix: 946684810 +- + id: 87 + repo_id: 57 + type: 3 + created_unix: 946684810 +- + id: 88 + repo_id: 57 + type: 4 + created_unix: 946684810 +- + id: 89 + repo_id: 57 + type: 5 + created_unix: 946684810 diff --git a/models/fixtures/repository.yml b/models/fixtures/repository.yml index 4c888e47ed..496d1a3e7a 100644 --- a/models/fixtures/repository.yml +++ b/models/fixtures/repository.yml @@ -1,3 +1,4 @@ +# don't forget to add fixtures in repo_unit.yml - id: 1 owner_id: 2 @@ -1647,3 +1648,16 @@ is_private: true status: 0 num_issues: 0 + +- + id: 57 + owner_id: 2 + owner_name: user2 + lower_name: repo-release + name: repo-release + default_branch: main + is_empty: false + is_archived: false + is_private: false + status: 0 + num_issues: 0 diff --git a/models/fixtures/user.yml b/models/fixtures/user.yml index a4a85f6b1a..fce4a4bda0 100644 --- a/models/fixtures/user.yml +++ b/models/fixtures/user.yml @@ -66,7 +66,7 @@ num_followers: 2 num_following: 1 num_stars: 2 - num_repos: 12 + num_repos: 13 num_teams: 0 num_members: 0 visibility: 0 diff --git a/models/repo/repo_list_test.go b/models/repo/repo_list_test.go index d87d70c189..573281ea0b 100644 --- a/models/repo/repo_list_test.go +++ b/models/repo/repo_list_test.go @@ -235,12 +235,12 @@ func TestSearchRepository(t *testing.T) { { name: "AllPublic/PublicRepositoriesOfUserIncludingCollaborative", opts: &repo_model.SearchRepoOptions{ListOptions: db.ListOptions{Page: 1, PageSize: 10}, OwnerID: 15, AllPublic: true, Template: util.OptionalBoolFalse}, - count: 29, + count: 30, }, { name: "AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborative", opts: &repo_model.SearchRepoOptions{ListOptions: db.ListOptions{Page: 1, PageSize: 10}, OwnerID: 15, Private: true, AllPublic: true, AllLimited: true, Template: util.OptionalBoolFalse}, - count: 34, + count: 35, }, { name: "AllPublic/PublicAndPrivateRepositoriesOfUserIncludingCollaborativeByName", @@ -255,7 +255,7 @@ func TestSearchRepository(t *testing.T) { { name: "AllPublic/PublicRepositoriesOfOrganization", opts: &repo_model.SearchRepoOptions{ListOptions: db.ListOptions{Page: 1, PageSize: 10}, OwnerID: 17, AllPublic: true, Collaborate: util.OptionalBoolFalse, Template: util.OptionalBoolFalse}, - count: 29, + count: 30, }, { name: "AllTemplates", |