Mathieu Othacehe writes: > Hello Christopher, > >> +(define* (main #:optional (args (command-line))) >> + >> + ;; Always have stdout/stderr line-buffered. >> + (setvbuf (current-output-port) 'line) >> + (setvbuf (current-error-port) 'line) > > I must admit I've not been following very closely your work on Guix Data > Service. However, I must admit that being able to have an overview of > the status of all packages of a given branch is something that would > really be nice. > > On this patch more specifically, is this really necessary to create a > separate process? Could the task of pushing events be done in the main > cuirass binary, periodically in a separate thread/fiber? No, I think it would be possible to do this as part of the cuirass process that takes care of builds, and that even might have some advantages as you'd potentially able to avoid some delays associated with polling. However, I don't really understand fibers in Guile yet, so I didn't have a good idea of how to add new functionality in to the mix of the existing process. So I went for a simpler implementation. I'm quite happy to work on changing it, but it would be good to have some input from someone that has a better idea of the Cuirass internals.