-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix wrong display of recently pushed notification #25812
Fix wrong display of recently pushed notification #25812
Conversation
duplicated with #25795 |
It does sound like it solves a different issue. |
Have no enough time to test this PR, I will test it later. |
models/git/branch.go
Outdated
@@ -391,7 +391,7 @@ func FindRecentlyPushedNewBranches(ctx context.Context, repoID, userID int64) (B | |||
"issue.is_closed": false, | |||
}) | |||
err := db.GetEngine(ctx). | |||
Where("pusher_id=? AND is_deleted=?", userID, false). | |||
Where("repo_id=? AND pusher_id=? AND is_deleted=?", repoID, userID, false). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The problem I see with this is the following:
Now, you won't be able to see this message in forks.
I've thought about the logic in the previous PR and thought it seems sensible.
While I can also see your problem, the question is now which of the two is better?
Or is there a third approach to still include forks, i.e. additionally storing a ForkedFromID
or something like that?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's difficult to get all forked repositories. Maybe only the first level forked?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I meant the other way round as it is a one-to-n
relation: Each fork only has a single parent, so we can check for repoID = fork or parent
.
#25795 not looks good to me. It is not good to detect branch by name, as we may have same branch names in different repos. Added some screenshots to the pr description. |
We can add a test for this new feature later. |
59b9311
to
8cea058
Compare
I was unable to create a backport for 1.22. @yp05327, please send one manually. 🍵
|
There's a bug in go-gitea#25715: If user pushed a commit into another repo with same branch name, the no-related repo will display the recently pushed notification incorrectly. It is simple to fix this, we should match the repo id in the sql query. ![image](https://github.com/go-gitea/gitea/assets/18380374/9411a926-16f1-419e-a1b5-e953af38bab1) The latest commit is 2 weeks ago. ![image](https://github.com/go-gitea/gitea/assets/18380374/52f9ab22-4999-43ac-a86f-6d36fb1e0411) The notification comes from another repo with same branch name: ![image](https://github.com/go-gitea/gitea/assets/18380374/a26bc335-8e5b-4b9c-a965-c3dc3fa6f252) After: In forked repo: ![image](https://github.com/go-gitea/gitea/assets/18380374/ce6ffc35-deb7-4be7-8b09-184207392f32) New PR Link will redirect to the original repo: ![image](https://github.com/go-gitea/gitea/assets/18380374/7b98e76f-0c75-494c-9462-80cf9f98e786) In the original repo: ![image](https://github.com/go-gitea/gitea/assets/18380374/5f6a821b-e51a-4bbd-9980-d9eb94a3c847) New PR Link: ![image](https://github.com/go-gitea/gitea/assets/18380374/1ce8c879-9f11-4312-8c32-695d7d9af0df) In the same repo: ![image](https://github.com/go-gitea/gitea/assets/18380374/64b56073-4d0e-40c4-b8a0-80be7a775f69) New PR Link: ![image](https://github.com/go-gitea/gitea/assets/18380374/96e1b6a3-fb98-40ee-b2ee-648039fb0dcf) 08/15 Update: Follow go-gitea#26257, added permission check and logic fix mentioned in go-gitea#26257 (comment) 2024/04/25 Update: Fix go-gitea#30611 --------- Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
* giteaofficial/main: Add nix flake for dev shell (go-gitea#30967) [skip ci] Updated translations via Crowdin Fix wrong display of recently pushed notification (go-gitea#25812) use existing oauth grant for public client (go-gitea#31015) Fix automerge will not work because of some events haven't been triggered (go-gitea#30780)
Backport #25812 ~~ps: removed some new codes in `tests/integration/pull_merge_test.go`~~ --------- Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
There's a bug in #25715:
If user pushed a commit into another repo with same branch name, the no-related repo will display the recently pushed notification incorrectly.
It is simple to fix this, we should match the repo id in the sql query.
The latest commit is 2 weeks ago.
The notification comes from another repo with same branch name:
After:
In forked repo:
New PR Link will redirect to the original repo:
In the original repo:
New PR Link:
In the same repo:
New PR Link:
08/15 Update:
Follow #26257, added permission check and logic fix mentioned in #26257 (comment)
2024/04/25 Update:
Fix #30611