Gitea: Complete notifications system

Created on 11 Nov 2016  ยท  49Comments  ยท  Source: go-gitea/gitea

Today Gitea can send e-mail for new Issues/PRs/Comments and that's it.

I think it should have a complete notifications system, like GitHub and GitLab.

  • [x] Notifications would be saved in a database table
  • [x] A page to manage them. Equivalent to https://github.com/notifications
  • [x] Mark as read/unread, pinning a notification (visible even if read)
  • [x] Subscribe/Unsubscribe button
  • [x] Mark all notifications as read
  • [ ] Mark all notifications as unread
  • [ ] Automatic subscribe on Open/Comment, etc
  • [ ] Also more refined watch options?
  • [ ] E-mail read means notification gone. Each user should have the ability to disable this
  • [ ] E-Mail notifications for pushes


Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

kinfeature kinproposal

Most helpful comment

:+1: for opt-out of this feature.

All 49 comments

If you watch some repository, then defaultly, you will subscribe all the issues and prs on this repository except you unsubscribe this issue.

Please implement notifications like GitLab does, where you actually have to press "I'm done with this" before it goes away ๐Ÿ™‚

If you add an "e-mail read means notification gone" system like GitHub's, please make it opt-out :)

@stevenroose that is a great idea. I think I can implement it.

@andreynering could you add e-mail read means notification gone to the check list?

@lunny @stevenroose Updated

GitHub implements that by having a 1px-1px transparent image which point to https://github.com/some-route?token=.... When the GitHub server serve that image for the first time the notification is marked as read.

Yes. A small trick. :)

@andreynering I know they do it like that. But most e-mail clients don't have a feature to block displaying emails from specific senders :) So if you don't like that feature, it can be annoying.

:+1: for opt-out of this feature.

@tboerger Don't get me wrong. I got to like the e-mail thing because now I read all my GitHub stuff from e-mail. But for someone who doesn't it be annoying. I had a lot of "ah, let me quickly check this issue in my email and look at it further tonight" and then I ended up not finding the issue and ploughing through archived e-mails to find it back :D

My team would like commit messages, so I'm working on implementing that for all watchers to a repository.

There is a "notifyWatchers" function on commit, but all it does is make an entry in a database table.

@stroucki Did you start anything?

I just started but only had time to create the database table until you sent this message. :smiley:

Maybe we should create a feature branch and work together on this, so we don't have conflicting changes.

@andreynering Actually I have something that works :)

Though it is probably not acceptable for general usage, since you can't opt out. It is similar to what gogs does for mentionemails: Do a database entry that apparently is only useful for webhooks, then send out email to all watchers.

You can see it in my fork: (note I am still based on gogs)
https://github.com/stroucki/gogs/tree/commitemails

But while testing I see that it is not working for commits made via ssh yet.

@stroucki Thanks for linking your branch.

I started something on https://github.com/go-gitea/gitea/pull/321 (still in an early stage) for who's interested.

We will probably integrate notifications and email sending. Your patch will be useful.

I've been looking at getting notifications working on ssh commits today.
This is pretty messy, because 1) the serve command doesn't set up any of the mailer stuff and 2) it uses "log.GitLogger" to log stuff, but the mailer initialization bits want to log, they use "log". Things don't even seem to blow up then, the git-receive-pack ends up hanging and nothing really happens.
I got to the point now where it is sending commit messages, but the command line output gets a "failed to push some refs" error (but things have committed).

OK. I think I have it. I now get commit messages on https and ssh commits.

The big thing was that console logs interfere with the git processes that gogs creates. I'm guessing that since the log used stdout, the subprocess never terminated. Besides that, mailing services needed to be initialized too.
It is too late for tonight, but tomorrow I'll update my branch.

@andreynering I also think that Action-table holds most of the data already. Might be worth looking into before making a new table ๐Ÿ™‚

^

@bkcsoft @lunny I will take a look at that, but I think we need another table. An action is created every time an issue changes, but we should have only one notification per issue/PR.

Also, an user may be subscribed to an issue but don't watch the repo, so won't have an action for him, etc. Situations like this.

Is the action table actually used for anything?

I committed changes to my branch that now let commit messages go out to watchers on https and ssh commits.

@stroucki

Is the action table actually used for anything?

It's only used by the feed on the dashboard.

I committed changes to my branch that now let commit messages go out to watchers on https and ssh commits

I'll look into integrate that after I'm done with my implementation

@lunny this isn't done yet ,only part 1 of 2 ;)

ooh, it was #523 that had the text "resolve #number" in it ๐Ÿ˜†

So not me? Or maybe we have to review and change the title when merging it.

@lunny no need to change the title, just the body ๐Ÿ™

Is the roadmap in the original submission updated after part 2 ?
I've tested notifications on try.gitea.io but doesn't seem to be working: https://try.gitea.io/gitea/gitea/issues/1

Step 2, merged, was #539

@strk You are not watching the repo, so you won't get any notifications:

https://try.gitea.io/gitea/gitea/watchers

On Thu, Jan 05, 2017 at 04:39:14PM -0800, Andrey Nering wrote:

@strk You are not watching the repo, so you won't get any notifications:

https://try.gitea.io/gitea/gitea/watchers

I thought one of the goals of the notification system was allowing
for per-issue watchers ?

I thought one of the goals of the notification system was allowing for per-issue watchers?

Yes, but it was not implemented yet. I'm doing it in parts. By now it's only notifying watchers. I hope we get it 100โ„… on v1.1.0

I would like to note that email notifications currently do not say which user commented on the issue. It only displays the content of the comment.

Can we add the name of who commented to the email somehow?

Than the current mail template is missing that information

It would be good to have a button to mark all notifications as read. (I hope this is the right issue for this feature request)

@mxmehl Yes, that's reasonable.

@mxmehl Yes, that's reasonable.

Cool! Could you please add that to the list in the top post?

@mxmehl Done!

Any update on this? I'd like to see E-Mail notifications for pushes.

https://github.com/gogits/gogs/issues/1441

@McLive added

What I find missing here is optional admin notifications, like when a user has registered.

2019 is this not happening?

@Worthy7 everyone works of features they need most as no one is paid to work on Gitea and we are spending our free time to work on this project...

Some people need the features but can't work on the project because it's in Go - a language not everyone knows. I would do this myself but I don't know anything about Go. So the best I can do is complain.
If other people don't think this is important, I'd like to know how organization owners (anyone out there) deals with issues and @mentioning people.... Perhaps I'm just using it wrong?

@Worthy7 then pick up a book and start learning. It's not a secret language.

I suppose people can just get round this by unwatching/unsubscribing to everything not concerning them for now. It doesn't seem like there's much demand for the feature since last year.

Iโ€˜m also still waiting for this ๐Ÿ™ˆ

a language not everyone knows

It takes about ~3 days to learn Go. I think you will have more problems with the sheer complexity of the application than you will have with the language :)

Yea to be honest that's what I meant.

On Mon, 23 Sep 2019, 22:23 Julian Ospald, notifications@github.com wrote:

a language not everyone knows

It takes about ~3 days to learn Go. I think you will have more problems
with the sheer complexity of the application than you will have with the
language :)

โ€”
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/go-gitea/gitea/issues/145?email_source=notifications&email_token=ABEKWH34ICJJLZAQKFINTYLQLC7NBA5CNFSM4CV65S7KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7K2VIY#issuecomment-534096547,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABEKWH6T6W4OXWLKPLZQTHLQLC7NBANCNFSM4CV65S7A
.

beside Also more refined watch options? <- I think for repos you mean

I'll close this, feel free to open a new issue for the speciffic case you are missing for notifications

Was this page helpful?
0 / 5 - 0 ratings

Related issues

jorise7 picture jorise7  ยท  3Comments

mirhec picture mirhec  ยท  3Comments

kifirkin picture kifirkin  ยท  3Comments

internalfx picture internalfx  ยท  3Comments

thehowl picture thehowl  ยท  3Comments