Hey folks!
We're having a look at FMN these days, and we're trying to design its replacement in our Fedora Messaging enabled world. The current FMN has the following shortcomings: - too slow at runtime - slow at startup time (a couple of hours to startup…) - complex UI
We think that this all comes from the same root cause: FMN is too flexible. It's trying to be everyone's procmail, and as a result the UI is complex and performance is hindered.
Also, in the past years we've adopted quite a few external services (Discourse, Gitlab, etc) which come with their own notification systems, so the needs of FMN users may have changed, and FMN can no longer be the one-stop-shop of notifications it aimed to be.
So we're planning to rewrite it as a much more simple notification system, with a few pre-defined things you could subscribe to, clearly presented in the UI but with less bells and whistles, and for that we're gathering your requirements.
What do you want from Fedora's notifications? We have identified the following use cases: - I want to be notified of what happens on my artifacts (packages, containers, modules, flatpaks) - I want to be notified of what happens on any artifact by entering its type and its name - I want to be notified of events referring to my username - I want to be able to follow someone (for example, my mentee) - I want to be able to block or allow notifications from a particular application (koji, bodhi, dist-git, etc) - I want to my notifications to be sent via email and/or IRC
Are there other use cases that would make your contributor's life easier? We're not committing to implementing everything that will be suggested here, since we want to keep the app as simple as we can, but we're very interested in your use cases. And if you want to do something very complex with notifications, we can also help you write a Fedora Messaging callback that will give you the full power of the message bus :-)
Thanks for your help!
Aurélien
On Fri, Apr 22, 2022 at 3:24 AM Aurelien Bompard abompard@fedoraproject.org wrote:
Hey folks!
We're having a look at FMN these days, and we're trying to design its replacement in our Fedora Messaging enabled world. The current FMN has the following shortcomings:
- too slow at runtime
- slow at startup time (a couple of hours to startup…)
- complex UI
We think that this all comes from the same root cause: FMN is too flexible. It's trying to be everyone's procmail, and as a result the UI is complex and performance is hindered.
Also, in the past years we've adopted quite a few external services (Discourse, Gitlab, etc) which come with their own notification systems, so the needs of FMN users may have changed, and FMN can no longer be the one-stop-shop of notifications it aimed to be.
So we're planning to rewrite it as a much more simple notification system, with a few pre-defined things you could subscribe to, clearly presented in the UI but with less bells and whistles, and for that we're gathering your requirements.
What do you want from Fedora's notifications? We have identified the following use cases:
- I want to be notified of what happens on my artifacts (packages, containers, modules, flatpaks)
- I want to be notified of what happens on any artifact by entering its type and its name
- I want to be notified of events referring to my username
- I want to be able to follow someone (for example, my mentee)
- I want to be able to block or allow notifications from a particular application (koji, bodhi, dist-git, etc)
- I want to my notifications to be sent via email and/or IRC
Are there other use cases that would make your contributor's life easier? We're not committing to implementing everything that will be suggested here, since we want to keep the app as simple as we can, but we're very interested in your use cases. And if you want to do something very complex with notifications, we can also help you write a Fedora Messaging callback that will give you the full power of the message bus :-)
Please make it Matrix native. That way FMN can send richer and more useful notifications.
I also want notifications about CI/CD things happening in PRs in Dist-Git.
Please make it Matrix native. That way FMN can send richer and more useful notifications.
Yeah that's maybe the only additional feature we're considering adding :-)
I also want notifications about CI/CD things happening in PRs in Dist-Git.
If a Fedora Message is sent, as long as the message schema flag it as affecting a package you own, it'll fall into the "packages I own" tracking rule.
A.
Dne 22. 04. 22 v 9:16 Aurelien Bompard napsal(a):
Hey folks!
We're having a look at FMN these days, and we're trying to design its replacement in our Fedora Messaging enabled world. The current FMN has the following shortcomings:
- too slow at runtime
- slow at startup time (a couple of hours to startup…)
- complex UI
We think that this all comes from the same root cause: FMN is too flexible. It's trying to be everyone's procmail, and as a result the UI is complex and performance is hindered.
Also, in the past years we've adopted quite a few external services (Discourse, Gitlab, etc) which come with their own notification systems, so the needs of FMN users may have changed, and FMN can no longer be the one-stop-shop of notifications it aimed to be.
So we're planning to rewrite it as a much more simple notification system, with a few pre-defined things you could subscribe to, clearly presented in the UI but with less bells and whistles, and for that we're gathering your requirements.
What do you want from Fedora's notifications? We have identified the following use cases:
- I want to be notified of what happens on my artifacts (packages, containers, modules, flatpaks)
Yes
- I want to be notified of what happens on any artifact by entering its type and its name
Not really. However, not sure if the "watch" is counted in this category or in the previous.
- I want to be notified of events referring to my username
What belongs into this category? Not really sure.
- I want to be able to follow someone (for example, my mentee)
I have never used this, so this is just nice to have. I think that following in BZ is good enough.
- I want to be able to block or allow notifications from a particular application (koji, bodhi, dist-git, etc)
It would be much easier if I can only "block" some notifications, when everything is enabled by default.
- I want to my notifications to be sent via email and/or IRC
Email!
Are there other use cases that would make your contributor's life easier?
Currently I am notified by actions done by myself and I think there should be option to disable this. Admitedly, notification about build finished after some time might be useful, comparing to information that I have commented in some Pagure ticket.
Vít
We're not committing to implementing everything that will be suggested here, since we want to keep the app as simple as we can, but we're very interested in your use cases. And if you want to do something very complex with notifications, we can also help you write a Fedora Messaging callback that will give you the full power of the message bus :-)
Thanks for your help!
Aurélien _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
Not really. However, not sure if the "watch" is counted in this category or in the previous.
Right, it wasn't clear. When I wrote "my artifacts" I meant the artifacts I'm the owner of.
What belongs into this category? Not really sure.
App maintainers may define in their message and schemas the users affected by the action that generated the message. It'll mean something different for every app I suppose.
It would be much easier if I can only "block" some notifications, when everything is enabled by default.
Yeah the current plan is that it's allowed by default, and if it's in a blocklist but *not* in an allowlist, it's blocked.
Currently I am notified by actions done by myself and I think there should be option to disable this.
Good point, noted.
A.
On 22. 04. 22 9:16, Aurelien Bompard wrote:
Hey folks!
We're having a look at FMN these days, and we're trying to design its replacement in our Fedora Messaging enabled world. The current FMN has the following shortcomings:
- too slow at runtime
- slow at startup time (a couple of hours to startup…)
- complex UI
We think that this all comes from the same root cause: FMN is too flexible. It's trying to be everyone's procmail, and as a result the UI is complex and performance is hindered.
Also, in the past years we've adopted quite a few external services (Discourse, Gitlab, etc) which come with their own notification systems, so the needs of FMN users may have changed, and FMN can no longer be the one-stop-shop of notifications it aimed to be.
So we're planning to rewrite it as a much more simple notification system, with a few pre-defined things you could subscribe to, clearly presented in the UI but with less bells and whistles, and for that we're gathering your requirements.
What do you want from Fedora's notifications? We have identified the following use cases:
- I want to be notified of what happens on my artifacts (packages, containers, modules, flatpaks)
- I want to be notified of what happens on any artifact by entering its type and its name
- I want to be notified of events referring to my username
- I want to be able to follow someone (for example, my mentee)
- I want to be able to block or allow notifications from a particular application (koji, bodhi, dist-git, etc)
- I want to my notifications to be sent via email and/or IRC
Are there other use cases that would make your contributor's life easier?
Groups. I want to be notified of what happens on group's artifacts, events referring to the group's name.
Thanks.
Groups. I want to be notified of what happens on group's artifacts, events referring to the group's name.
Good point! So let's say when an artifact is owned by a group you're a member of, you'll be considered an owner, and notified as such. Would that work for you?
There's currently no standard way for app maintainer to declare that events refer to a group, as they currently can do with usernames. But maybe we should add that possibility, it's pretty easy.
A.
On 22. 04. 22 12:12, Aurelien Bompard wrote:
Groups. I want to be notified of what happens on group's artifacts, events referring to the group's name.
Good point! So let's say when an artifact is owned by a group you're a member of, you'll be considered an owner, and notified as such. Would that work for you?
Unfortunately no, it won't. I am a mamber of a group that has too many artifacts to be notififed about all of them by default. This needs to be opt-in.
There's currently no standard way for app maintainer to declare that events refer to a group, as they currently can do with usernames. But maybe we should add that possibility, it's pretty easy.
On Fri, 2022-04-22 at 11:35 +0200, Miro Hrončok wrote:
On 22. 04. 22 9:16, Aurelien Bompard wrote:
Hey folks!
We're having a look at FMN these days, and we're trying to design its replacement in our Fedora Messaging enabled world. The current FMN has the following shortcomings:
- too slow at runtime
- slow at startup time (a couple of hours to startup…)
- complex UI
We think that this all comes from the same root cause: FMN is too flexible. It's trying to be everyone's procmail, and as a result the UI is complex and performance is hindered.
Also, in the past years we've adopted quite a few external services (Discourse, Gitlab, etc) which come with their own notification systems, so the needs of FMN users may have changed, and FMN can no longer be the one-stop-shop of notifications it aimed to be.
So we're planning to rewrite it as a much more simple notification system, with a few pre-defined things you could subscribe to, clearly presented in the UI but with less bells and whistles, and for that we're gathering your requirements.
What do you want from Fedora's notifications? We have identified the following use cases:
- I want to be notified of what happens on my artifacts (packages, containers, modules, flatpaks)
- I want to be notified of what happens on any artifact by entering its type and its name
- I want to be notified of events referring to my username
- I want to be able to follow someone (for example, my mentee)
- I want to be able to block or allow notifications from a particular application (koji, bodhi, dist-git, etc)
- I want to my notifications to be sent via email and/or IRC
Are there other use cases that would make your contributor's life easier?
Groups. I want to be notified of what happens on group's artifacts, events referring to the group's name.
Replying to a reply because I can't find the original mail, sorry.
I want to be easily able to *NOT* be notified of things I just did. In fact this should probably be the default. Right now my FMN notifications are floods of "adamwill did X to Y" - yes, I know, I just did it!
On Mon, Apr 25, 2022 at 9:49 PM Adam Williamson adamwill@fedoraproject.org wrote:
On Fri, 2022-04-22 at 11:35 +0200, Miro Hrončok wrote:
On 22. 04. 22 9:16, Aurelien Bompard wrote:
Hey folks!
We're having a look at FMN these days, and we're trying to design its replacement in our Fedora Messaging enabled world. The current FMN has the following shortcomings:
- too slow at runtime
- slow at startup time (a couple of hours to startup…)
- complex UI
We think that this all comes from the same root cause: FMN is too flexible. It's trying to be everyone's procmail, and as a result the UI is complex and performance is hindered.
Also, in the past years we've adopted quite a few external services (Discourse, Gitlab, etc) which come with their own notification systems, so the needs of FMN users may have changed, and FMN can no longer be the one-stop-shop of notifications it aimed to be.
So we're planning to rewrite it as a much more simple notification system, with a few pre-defined things you could subscribe to, clearly presented in the UI but with less bells and whistles, and for that we're gathering your requirements.
What do you want from Fedora's notifications? We have identified the following use cases:
- I want to be notified of what happens on my artifacts (packages, containers, modules, flatpaks)
- I want to be notified of what happens on any artifact by entering its type and its name
- I want to be notified of events referring to my username
- I want to be able to follow someone (for example, my mentee)
- I want to be able to block or allow notifications from a particular application (koji, bodhi, dist-git, etc)
- I want to my notifications to be sent via email and/or IRC
Are there other use cases that would make your contributor's life easier?
Groups. I want to be notified of what happens on group's artifacts, events referring to the group's name.
Replying to a reply because I can't find the original mail, sorry.
I want to be easily able to *NOT* be notified of things I just did. In fact this should probably be the default. Right now my FMN notifications are floods of "adamwill did X to Y" - yes, I know, I just did it!
Exactly. I want to get notifications for events that are happening to packages that I'm associated with (either by being a (co-)maintainer, being a member of a co-maintainer group, or by "watching" a package on dist-git) that were *not* triggered by myself. For example:
- somebody else pushes a commit to the package on dist-git - somebody else launches a koji build for the package - somebody else submits an update containing the package to bodhi - koschei notices that the package starts to be FTBFS - somebody or something filed a bug against the package - etc.
Fabio
On Tue, Apr 26, 2022 at 12:26:06PM +0200, Fabio Valentini wrote:
On Mon, Apr 25, 2022 at 9:49 PM Adam Williamson adamwill@fedoraproject.org wrote:
Replying to a reply because I can't find the original mail, sorry.
I want to be easily able to *NOT* be notified of things I just did. In fact this should probably be the default. Right now my FMN notifications are floods of "adamwill did X to Y" - yes, I know, I just did it!
Exactly. I want to get notifications for events that are happening to packages that I'm associated with (either by being a (co-)maintainer, being a member of a co-maintainer group, or by "watching" a package on dist-git) that were *not* triggered by myself. For example:
- somebody else pushes a commit to the package on dist-git
- somebody else launches a koji build for the package
- somebody else submits an update containing the package to bodhi
- koschei notices that the package starts to be FTBFS
- somebody or something filed a bug against the package
- etc.
Lest it sound like everyone just wants it to behave this way, I personally _do_ like getting emails for actions I did myself. I find that later when I am looking back to see what changed by who I can (sometimes surprisingly) find out it was me. :)
So, I would prefer this be a pref (perhaps set to not notify by default?)
kevin
Kevin Fenzi wrote:
Lest it sound like everyone just wants it to behave this way, I personally _do_ like getting emails for actions I did myself. I find that later when I am looking back to see what changed by who I can (sometimes surprisingly) find out it was me. :)
So, I would prefer this be a pref (perhaps set to not notify by default?)
I'd second that. I wouldn't want to lose the ability to get those notifications entirely. I'm happy to adjust the settings to do that¹.
I send them via email and filter them, so I use it as a historical log more than an immediate notification.
But they are good as a confirmation that an action has made its way through the system, as well.
¹ I hope that the settings can be simplified a bit. The current setup is quite powerful but is rather difficult to understand, particularly because it's not something most of us do very often.
On Fri, 2022-04-22 at 11:35 +0200, Miro Hrončok wrote:
Replying to a reply because I can't find the original mail, sorry.
I want to be easily able to *NOT* be notified of things I just did. In fact this should probably be the default. Right now my FMN notifications are floods of "adamwill did X to Y" - yes, I know, I just did it!
Yeah, we thought of that one already, and I agree it's a good idea to set it as the default.
A.
Hey folks!
After spending some time evaluating our options, CPE's Advance Reconnaissance Team came up with this proposal for the next version of FMN:
https://fedora-arc.readthedocs.io/en/latest/fmn/april2022/index.html
Please check it out if you're interested, it has an analysis of the existing system and requirements for the next. And the best time for feedback is now, before the work actually starts :-)
Thanks!
Aurélien
On Sat, May 14, 2022 at 11:40 AM Aurelien Bompard < abompard@fedoraproject.org> wrote:
Hey folks!
After spending some time evaluating our options, CPE's Advance Reconnaissance Team came up with this proposal for the next version of FMN:
https://fedora-arc.readthedocs.io/en/latest/fmn/april2022/index.html
Please check it out if you're interested, it has an analysis of the existing system and requirements for the next. And the best time for feedback is now, before the work actually starts :-)
One of the current issues that I don't see listed is that people receive notifications with empty or incomplete descriptions, and often it's not even possible why (which filter caused it and how to prevent it). For example:
~~~~ from: notifications@fedoraproject.org to: kparal@redhat.com subject: fedmsg notification # see that even the subject is generic content: Notification time stamped 2022-05-14 01:48:35 UTC https://bodhi.fedoraproject.org/updates/FEDORA-2022-af58cd6f88 ~~~~ It doesn't say why I received the notification, what happened to that bodhi update, nothing. Of course in FMN settings I enabled: "We can annotate your messages with a "triggered by" link that will let you know which filter was responsible for triggering each message." but it doesn't work.
Here's another example: ~~~~ from: notifications@fedoraproject.org to: kparal@redhat.com subject: Fedora Notifications Digest (3 updates) content: Digest Summary: 1. 2. 3. Fedora EPEL 9 Update: testcloud-0.7.1-1.el9 ~~~~ Very useful.
This one is my favorite: ~~~~ from: notifications@fedoraproject.org to: kparal@redhat.com subject: fedmsg notification content: Notification time stamped 2021-12-14 08:34:53 UTC
{ "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUUyakNDQkVPZ0F3SUJBZ0lDQXBzd0RRWUpL\nb1pJaHZjTkFRRUxCUUF3Z2FBeEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJRXdKT1F6RVFN\nQTRHQTFVRUJ4TUhVbUZzWldsbmFERVhNQlVHQTFVRUNoTU9SbVZrYjNKaApJRkJ5YjJwbFkzUXhE\nekFOQmdOVkJBc1RCbVpsWkcxelp6RVBNQTBHQTFVRUF4TUdabVZrYlhObk1ROHdEUVlEClZRUXBF\nd1ptWldSdGMyY3hKakFrQmdrcWhraUc5dzBCQ1FFV0YyRmtiV2x1UUdabFpHOXlZWEJ5YjJwbFkz\nUXUKYjNKbk1CNFhEVEU0TURreU5qSXpNalV3T0ZvWERUSTRNRGt5TXpJek1qVXdPRm93Z2VReEN6\nQUpCZ05WQkFZVApBbFZUTVFzd0NRWURWUVFJRXdKT1F6RVFNQTRHQTFVRUJ4TUhVbUZzWldsbmFE\nRVhNQlVHQTFVRUNoTU9SbVZrCmIzSmhJRkJ5YjJwbFkzUXhEekFOQmdOVkJBc1RCbVpsWkcxelp6\nRXhNQzhHQTFVRUF4TW9abVZrYlhObkxXMXAKWjNKaGRHbHZiaTEwYjI5c2N5NW1aV1J2Y21Gd2Nt\nOXFaV04wTG05eVp6RXhNQzhHQTFVRUtSTW9abVZrYlhObgpMVzFwWjNKaGRHbHZiaTEwYjI5c2N5\nNW1aV1J2Y21Gd2NtOXFaV04wTG05eVp6RW1NQ1FHQ1NxR1NJYjNEUUVKCkFSWVhZV1J0YVc1QVpt\nVmtiM0poY0hKdmFtVmpkQzV2Y21jd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUIKRHdBd2dn\nRUtBb0lCQVFEUm4xd1E1UVZwN2JCdUpFUjlNOUkwZ2o0WHB0NTlFZDdnU1p2RVQvcSsrUVNFb0x2\nWApkb0tnOTdkWXhZK2FPdll1TDAzc1lOdjZEcmJLZVM2blk5V1dwKytoZ1hUMXBEaFY3QmRxeitt\nNFoxbDhsYjFHCi9mZHAwd1FON0RMVndDclYyTmNSajZ6b2J0NHV2Z0JYaWtVUWhRNjl5V2E2VE9D\nTis5OWEwUUtjTUJzNENuNTAKc2pmUTNGQUNsV1B3NUhkNkNPMHJWenhPODRROGc0bEpCcTRubHY0\nc0xRVmZoZTNoZWMzTEFObUt2RGNSc3JpbgpDUXFGdFF5MVNmR0pHWnE4RkEyUDhkckVCd1BqdnZx\nMTJ4MHJucEJjdVM5bXlLQmhOYVE3eSs5bE9GTXJSZFBrCmRaUXY0eGdSU0FzZGJQRDlyeXYrTE1n\nS1YvVnVTdm11RzF0eEFnTUJBQUdqZ2dGWE1JSUJVekFKQmdOVkhSTUUKQWpBQU1DMEdDV0NHU0FH\nRytFSUJEUVFnRmg1RllYTjVMVkpUUVNCSFpXNWxjbUYwWldRZ1EyVnlkR2xtYVdOaApkR1V3SFFZ\nRFZSME9CQllFRkM0anZCbmhFSnRDTkxHaTg5UHgreU41K1VNa01JSFZCZ05WSFNNRWdjMHdnY3FB\nCkZHdEFXdmtTQ0lsWjUxbmxCZlVDSFFwT2Z4UUFvWUdtcElHak1JR2dNUXN3Q1FZRFZRUUdFd0pW\nVXpFTE1Ba0cKQTFVRUNCTUNUa014RURBT0JnTlZCQWNUQjFKaGJHVnBaMmd4RnpBVkJnTlZCQW9U\nRGtabFpHOXlZU0JRY205cQpaV04wTVE4d0RRWURWUVFMRXdabVpXUnRjMmN4RHpBTkJnTlZCQU1U\nQm1abFpHMXpaekVQTUEwR0ExVUVLUk1HClptVmtiWE5uTVNZd0pBWUpLb1pJaHZjTkFRa0JGaGRo\nWkcxcGJrQm1aV1J2Y21Gd2NtOXFaV04wTG05eVo0SUoKQU9OUUhrZFBGeDVGTUJNR0ExVWRKUVFN\nTUFvR0NDc0dBUVVGQndNQ01Bc0dBMVVkRHdRRUF3SUhnREFOQmdrcQpoa2lHOXcwQkFRc0ZBQU9C\nZ1FBQnFBcDQzd3lUbk5XUUJYODUzSEVEUEpDTTM4aVJTdlV3dzFCejd4MmFpSWpuCkVPTWZ1djhB\nTEV2Z2JXeDhSc0RBNTluRkNXS1FJRWdGeEFBcUFMUFJwYWF3dFRUcnN1VlQ3bFhlSEhrU21VblEK\ncEdKSFd1elU2OUZibFdaWkpDTVQzUTRVYWNUa0VHNE1XMFFqOWp1aFNpM2lHOHZXVXZlMTEzUTNL\nMDhmVHc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\n", "crypto": "x509", "i": 2390172, "msg": { "bug": { "alias": [], "assigned_to": "kparal@redhat.com", "cc": [], "cf_atomic": "", "cf_category": "", <snip> ~~~~ I love receiving json dumps.
Of course these are just examples I could quickly find. I don't need to debug them. I roughly know why I received them. But in the past, I sometimes received a notification that I really had zero idea why I got it. Also, I sometimes received a completely empty email, IIRC. The problem is, I believe, that FMN doesn't require the "event->human description" formatter to exist. If it does, it uses it, but if it doesn't, it sends you a blank email, a json dump, a bare link, whatever it finds in the raw event. That really shouldn't happen. I only kept FMN enabled because those emails are sufficiently rare (a few per week at max, I think) and the good notifications are useful.
* Aurelien Bompard [14/05/2022 09:39] :
Please check it out if you're interested, it has an analysis of the existing system and requirements for the next. And the best time for feedback is now, before the work actually starts :-)
One thing I've always wanted is to be able to have a daily/weekly/monthly email summary of all my notifications instead of getting one email for each notification.
Emmanuel