forgejo/models
kolaente 085f717529
feat: notify doers of a merge when automerging (#21553)
I found myself wondering whether a PR I scheduled for automerge was
actually merged. It was, but I didn't receive a mail notification for it
- that makes sense considering I am the doer and usually don't want to
receive such notifications. But ideally I want to receive a notification
when a PR was merged because I scheduled it for automerge.

This PR implements exactly that.

The implementation works, but I wonder if there's a way to avoid passing
the "This PR was automerged" state down so much. I tried solving this
via the database (checking if there's an automerge scheduled for this PR
when sending the notification) but that did not work reliably, probably
because sending the notification happens async and the entry might have
already been deleted. My implementation might be the most
straightforward but maybe not the most elegant.

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2022-11-03 23:49:00 +08:00
..
activities feat: notify doers of a merge when automerging (#21553) 2022-11-03 23:49:00 +08:00
admin Make every not exist error unwrappable to a fs.ErrNotExist (#20891) 2022-10-18 07:50:37 +02:00
asymkey Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
auth Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
avatars Add system setting table with cache and also add cache supports for user setting (#18058) 2022-10-17 07:29:26 +08:00
db Merge db.Iterate and IterateObjects (#21641) 2022-10-31 23:51:14 +08:00
fixtures Record OAuth client type at registration (#21316) 2022-10-24 15:59:24 +08:00
foreignreference Make every not exist error unwrappable to a fs.ErrNotExist (#20891) 2022-10-18 07:50:37 +02:00
git Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
issues Fix issues count bug (#21557) 2022-10-25 14:47:46 +02:00
migrations Alter package_version.metadata_json to LONGTEXT (#21667) 2022-11-03 15:28:46 +08:00
organization Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
packages Alter package_version.metadata_json to LONGTEXT (#21667) 2022-11-03 15:28:46 +08:00
perm Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
project Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
pull Make every not exist error unwrappable to a fs.ErrNotExist (#20891) 2022-10-18 07:50:37 +02:00
repo Fix issues count bug (#21557) 2022-10-25 14:47:46 +02:00
system Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
unit Add more linters to improve code readability (#19989) 2022-06-20 12:02:49 +02:00
unittest Add system setting table with cache and also add cache supports for user setting (#18058) 2022-10-17 07:29:26 +08:00
user Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
webhook Add index for hook_task table (#21545) 2022-10-28 13:05:39 +02:00
error.go Make every not exist error unwrappable to a fs.ErrNotExist (#20891) 2022-10-18 07:50:37 +02:00
fixture_generation.go Move access and repo permission to models/perm/access (#19350) 2022-05-11 12:09:36 +02:00
fixture_test.go Decouple unit test code from business code (#17623) 2021-11-12 22:36:47 +08:00
main_test.go Add system setting table with cache and also add cache supports for user setting (#18058) 2022-10-17 07:29:26 +08:00
migrate.go Add generic set type (#21408) 2022-10-12 13:18:26 +08:00
migrate_test.go Move some files into models' sub packages (#20262) 2022-08-25 10:31:57 +08:00
org.go Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
org_team.go Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
org_team_test.go Move some files into models' sub packages (#20262) 2022-08-25 10:31:57 +08:00
org_test.go Refactor AssertExistsAndLoadBean to use generics (#20797) 2022-08-16 10:22:25 +08:00
repo.go Fix issues count bug (#21557) 2022-10-25 14:47:46 +02:00
repo_collaboration.go Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
repo_collaboration_test.go Move some files into models' sub packages (#20262) 2022-08-25 10:31:57 +08:00
repo_test.go Move tests as seperate sub packages to reduce duplicated file names (#19951) 2022-06-15 09:02:00 +02:00
repo_transfer.go Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00
repo_transfer_test.go Refactor AssertExistsAndLoadBean to use generics (#20797) 2022-08-16 10:22:25 +08:00
user.go Replace all instances of fmt.Errorf(%v) with fmt.Errorf(%w) (#21551) 2022-10-24 20:29:17 +01:00