* Fedora/Debian release monitoring inspiration for Guix Data Service @ 2021-03-16 10:57 Léo Le Bouter 2021-03-16 11:12 ` Ricardo Wurmus ` (2 more replies) 0 siblings, 3 replies; 8+ messages in thread From: Léo Le Bouter @ 2021-03-16 10:57 UTC (permalink / raw) To: guix-devel; +Cc: mail [-- Attachment #1: Type: text/plain, Size: 1548 bytes --] Hello! It seems Fedora has automated infrastructure and feeds to monitor new upstream releases so that maintainers can get notifications on them. https://release-monitoring.org/ Functional feed: https://apps.fedoraproject.org/datagrepper/raw?rows_per_page=1&delta=127800&category=hotness I could not find the actual data it is based on for release monitoring (like Debian watch files). I could not find a similar feed for Debian's watch/uscan but it would be nice if they provided some sort of RSS feed (global or scoped to packages or sets of packages). I am thinking we should really get something like this with the Guix Data Service, start including something similar to Debian uscan/watch rules in every package so we can get reliable (in majority of cases) update notifications. We could also have some feature that gives you a feed for a manifest or operating-system definition so that people can prioritize work on what they care about easily. I would really love to have some RSS feed for new upstream releases from Guix Data Service based on my operating-system definition I would upload there. We could even go as far as preparing a patch (similar to guix refresh -u <pkg> && etc/committer.scm) and trying to build it and all it's dependents and if it doesnt cause any new failures we could send an automated patch contribution on guix-patches directly and tag it with "ci-update-ok" or something so a maintainer just has to double-check quickly and push (very efficient workflow). Léo [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Fedora/Debian release monitoring inspiration for Guix Data Service 2021-03-16 10:57 Fedora/Debian release monitoring inspiration for Guix Data Service Léo Le Bouter @ 2021-03-16 11:12 ` Ricardo Wurmus 2021-03-16 11:14 ` Léo Le Bouter 2021-03-16 23:28 ` Christopher Baines 2021-03-17 17:35 ` Ludovic Courtès 2 siblings, 1 reply; 8+ messages in thread From: Ricardo Wurmus @ 2021-03-16 11:12 UTC (permalink / raw) To: Léo Le Bouter; +Cc: guix-devel Léo Le Bouter <lle-bout@zaclys.net> writes: > I am thinking we should really get something like this with the Guix > Data Service, start including something similar to Debian uscan/watch > rules in every package so we can get reliable (in majority of cases) > update notifications. “guix lint” has a checker for releases: --8<---------------cut here---------------start------------->8--- $ guix lint -l Available checkers: […] - refresh: Check the package for new upstream releases --8<---------------cut here---------------end--------------->8--- It just needs to be extended to cover more packages. Developing a service that runs this for all packages is an orthogonal issue. -- Ricardo ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Fedora/Debian release monitoring inspiration for Guix Data Service 2021-03-16 11:12 ` Ricardo Wurmus @ 2021-03-16 11:14 ` Léo Le Bouter 0 siblings, 0 replies; 8+ messages in thread From: Léo Le Bouter @ 2021-03-16 11:14 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: mail, guix-devel [-- Attachment #1: Type: text/plain, Size: 1240 bytes --] On Tue, 2021-03-16 at 12:12 +0100, Ricardo Wurmus wrote: > Léo Le Bouter <lle-bout@zaclys.net> writes: > > > I am thinking we should really get something like this with the > > Guix > > Data Service, start including something similar to Debian > > uscan/watch > > rules in every package so we can get reliable (in majority of > > cases) > > update notifications. > > “guix lint” has a checker for releases: > > --8<---------------cut here---------------start------------->8--- > $ guix lint -l > Available checkers: > […] > - refresh: Check the package for new upstream releases > --8<---------------cut here---------------end--------------->8--- > > It just needs to be extended to cover more packages. > > Developing a service that runs this for all packages is an orthogonal > issue. > Just to clarify, I do know it exists and use it often :-) Indeed it needs to be extended and that's what I am talking about there, also Guix Data Service is important here because we cannot possibly each on our sides spam the various URLs or APIs to generate the release monitoring dataset. Instead, using Guix Data Service for that with specially configured API keys and else sounds like a better idea. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Fedora/Debian release monitoring inspiration for Guix Data Service 2021-03-16 10:57 Fedora/Debian release monitoring inspiration for Guix Data Service Léo Le Bouter 2021-03-16 11:12 ` Ricardo Wurmus @ 2021-03-16 23:28 ` Christopher Baines 2021-03-17 10:24 ` Léo Le Bouter 2021-03-17 17:35 ` Ludovic Courtès 2 siblings, 1 reply; 8+ messages in thread From: Christopher Baines @ 2021-03-16 23:28 UTC (permalink / raw) To: Léo Le Bouter; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 4003 bytes --] Léo Le Bouter <lle-bout@zaclys.net> writes: > It seems Fedora has automated infrastructure and feeds to monitor new > upstream releases so that maintainers can get notifications on them. > > https://release-monitoring.org/ > > Functional feed: > https://apps.fedoraproject.org/datagrepper/raw?rows_per_page=1&delta=127800&category=hotness > > I could not find the actual data it is based on for release monitoring > (like Debian watch files). I think it might be in the service itself. > I could not find a similar feed for Debian's watch/uscan but it would > be nice if they provided some sort of RSS feed (global or scoped to > packages or sets of packages). > > I am thinking we should really get something like this with the Guix > Data Service, start including something similar to Debian uscan/watch > rules in every package so we can get reliable (in majority of cases) > update notifications. I did spot these patches https://patches.guix-patches.cbaines.net/project/guix-patches/list/?series=7298 I think the Guix Data Service could run the "refresh" code from Guix and store relevant data, although I'm also thinking along the lines of trying to generate patches, like you go on to below... > We could also have some feature that gives you a feed for a manifest or > operating-system definition so that people can prioritize work on what > they care about easily. > > I would really love to have some RSS feed for new upstream releases > from Guix Data Service based on my operating-system definition I would > upload there. So, one thing I'm hoping to start work on in the coming weeks/months is the long awaited service for providing subscriptions/notifications for the Guix Data Service (+ other services). My current plan is to use a WebSub like pattern, but this could easily be adapted to RSS/email/... > We could even go as far as preparing a patch (similar to guix refresh > -u <pkg> && etc/committer.scm) and trying to build it and all it's > dependents and if it doesnt cause any new failures we could send an > automated patch contribution on guix-patches directly and tag it with > "ci-update-ok" or something so a maintainer just has to double-check > quickly and push (very efficient workflow). Yeah, one problem with the current automated patch review stuff I've got going at the moment is that there's no feedback when the Guix Data Service finds out that things do/don't build. However, as I also set out above, there's been a plan and design for making that possible for years, it just needs implementing. One thing I'm hoping to do once it's possible to subscribe to Guix Data Service data is make the checks in Patchwork actually reflective of results (like 4 packages broken by these changes), rather than just providing links, and someone having to figure out what information is hidden within. Those same subscriptions could be used to prompt people to look at patches for package updates that don't introduce breakages (following what you set out above). The pieces are slowly coming together for this, at least with the way I would approach it. For example, it's possible to get commits in to data.guix-patches.cbaines.net now by just pushing to the Git repository, so to set out something similar to what you describe above: - Some service watches for new releases (through the guix refresh code), and then makes commits, and pushes them to a Git repo - There's a Guix Data Service reading from that Git repository, it starts processing the changes - Something (probably the "service" above") subscribes to find out when relevant information is available (like build successes/failures) - Builds happen via the Guix Build Coordinator, which feeds information back to the Guix Data Service - That "service" gets the notifications that the commits are good, and prompts someone to review them I hope some of that makes sense, Chris [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 987 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Fedora/Debian release monitoring inspiration for Guix Data Service 2021-03-16 23:28 ` Christopher Baines @ 2021-03-17 10:24 ` Léo Le Bouter 0 siblings, 0 replies; 8+ messages in thread From: Léo Le Bouter @ 2021-03-17 10:24 UTC (permalink / raw) To: Christopher Baines; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 3099 bytes --] On Tue, 2021-03-16 at 23:28 +0000, Christopher Baines wrote: > I did spot these patches > https://patches.guix-patches.cbaines.net/project/guix-patches/list/?series=7298 Awesome!! I did not see them earlier! > I think the Guix Data Service could run the "refresh" code from Guix > and > store relevant data, although I'm also thinking along the lines of > trying to generate patches, like you go on to below... Yes :-D > So, one thing I'm hoping to start work on in the coming weeks/months > is > the long awaited service for providing subscriptions/notifications > for > the Guix Data Service (+ other services). > > My current plan is to use a WebSub like pattern, but this could > easily > be adapted to RSS/email/... That sounds very great! I know you've been working on this, but I also wanted (through my email) try to make more people aware and draw attention to the subject of automation in GNU Guix. > Yeah, one problem with the current automated patch review stuff I've > got > going at the moment is that there's no feedback when the Guix Data > Service finds out that things do/don't build. Yes, and because of that the Guix Data Service and guix-build- coordinator-agent thing you are running goes mostly unused (even for me!). > However, as I also set out above, there's been a plan and design for > making that possible for years, it just needs implementing. > > One thing I'm hoping to do once it's possible to subscribe to Guix > Data > Service data is make the checks in Patchwork actually reflective of > results (like 4 packages broken by these changes), rather than just > providing links, and someone having to figure out what information is > hidden within. > > Those same subscriptions could be used to prompt people to look at > patches for package updates that don't introduce breakages (following > what you set out above). +1000 > The pieces are slowly coming together for this, at least with the way > I > would approach it. For example, it's possible to get commits in to > data.guix-patches.cbaines.net now by just pushing to the Git > repository, > so to set out something similar to what you describe above: > > - Some service watches for new releases (through the guix refresh > code), and then makes commits, and pushes them to a Git repo > > - There's a Guix Data Service reading from that Git repository, it > starts processing the changes > > - Something (probably the "service" above") subscribes to find out > when > relevant information is available (like build successes/failures) > > - Builds happen via the Guix Build Coordinator, which feeds > information > back to the Guix Data Service > > - That "service" gets the notifications that the commits are good, > and > prompts someone to review them All awesome! Can't wait! As soon as I can I will make sure to help, I am reading through the GNU Guile manual, need to find more concentration time. > I hope some of that makes sense, > > Chris Thanks a lot Chris for all this!! [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Fedora/Debian release monitoring inspiration for Guix Data Service 2021-03-16 10:57 Fedora/Debian release monitoring inspiration for Guix Data Service Léo Le Bouter 2021-03-16 11:12 ` Ricardo Wurmus 2021-03-16 23:28 ` Christopher Baines @ 2021-03-17 17:35 ` Ludovic Courtès 2021-03-17 17:47 ` Léo Le Bouter 2 siblings, 1 reply; 8+ messages in thread From: Ludovic Courtès @ 2021-03-17 17:35 UTC (permalink / raw) To: Léo Le Bouter; +Cc: guix-devel Hi, Léo Le Bouter <lle-bout@zaclys.net> skribis: > It seems Fedora has automated infrastructure and feeds to monitor new > upstream releases so that maintainers can get notifications on them. > > https://release-monitoring.org/ Established distros have great tools and services for that. Guix has ‘guix refresh’, which predates some of the trendy release/CVE monitoring services and actually works well. It’s not perfect, but it’s good, so my advice would be to work on improving it. If you look at Guix’s design and history, you’ll find that much is built in a way that avoids relying on external services when we can. > We could even go as far as preparing a patch (similar to guix refresh > -u <pkg> && etc/committer.scm) and trying to build it and all it's > dependents and if it doesnt cause any new failures we could send an > automated patch contribution on guix-patches directly and tag it with > "ci-update-ok" or something so a maintainer just has to double-check > quickly and push (very efficient workflow). I definitely agree. We could build upon the infrastructure we already have to write a tool that roughly runs ‘guix refresh -u’ on individual packages, attempts to build it and its dependents, and publishes a ready-to-apply patch—or a failure notification. Whether it’s a task for the Guix Data Service or some other service, I don’t know, but it would be most welcome! Ludo’. ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Fedora/Debian release monitoring inspiration for Guix Data Service 2021-03-17 17:35 ` Ludovic Courtès @ 2021-03-17 17:47 ` Léo Le Bouter 2021-03-20 11:22 ` Ludovic Courtès 0 siblings, 1 reply; 8+ messages in thread From: Léo Le Bouter @ 2021-03-17 17:47 UTC (permalink / raw) To: Ludovic Courtès; +Cc: guix-devel, mail [-- Attachment #1: Type: text/plain, Size: 1163 bytes --] On Wed, 2021-03-17 at 18:35 +0100, Ludovic Courtès wrote: > Established distros have great tools and services for that. > > Guix has ‘guix refresh’, which predates some of the trendy > release/CVE > monitoring services and actually works well. It’s not perfect, but > it’s > good, so my advice would be to work on improving it. > > If you look at Guix’s design and history, you’ll find that much is > built > in a way that avoids relying on external services when we can. Just to clarify, I also get behind that very much I was suggesting the functional part more so than the service kind, even though I think services (like Guix Data Service) are OK as long as datasets are easily exportable and the service itself can easily be re-deployed through GNU Guix as well. It seems GNU Guix takes a generic approach to updates while Debian or Fedora seems to look at specialized rules for each package, I was thinking we could import those already existing rules (in Fedora's or Debian's) into GNU Guix, I find it a superior approach for reliability of notifications even though generic updaters are also very complementary. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Fedora/Debian release monitoring inspiration for Guix Data Service 2021-03-17 17:47 ` Léo Le Bouter @ 2021-03-20 11:22 ` Ludovic Courtès 0 siblings, 0 replies; 8+ messages in thread From: Ludovic Courtès @ 2021-03-20 11:22 UTC (permalink / raw) To: Léo Le Bouter; +Cc: guix-devel Hi, Léo Le Bouter <lle-bout@zaclys.net> skribis: > It seems GNU Guix takes a generic approach to updates while Debian or > Fedora seems to look at specialized rules for each package, I was > thinking we could import those already existing rules (in Fedora's or > Debian's) into GNU Guix, I find it a superior approach for reliability > of notifications even though generic updaters are also very > complementary. The updaters in Guix are fairly specialized; only ‘generic-html’ is generic. Do take a closer look; it’s an area of the code that’s fun to work with! Ludo’. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2021-03-20 11:22 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-03-16 10:57 Fedora/Debian release monitoring inspiration for Guix Data Service Léo Le Bouter 2021-03-16 11:12 ` Ricardo Wurmus 2021-03-16 11:14 ` Léo Le Bouter 2021-03-16 23:28 ` Christopher Baines 2021-03-17 10:24 ` Léo Le Bouter 2021-03-17 17:35 ` Ludovic Courtès 2021-03-17 17:47 ` Léo Le Bouter 2021-03-20 11:22 ` Ludovic Courtès
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).