IRC channel logs

2024-04-02.log

back to list of logs

<ArneBab>daviid: so why are there texinfo modules left in guile-lib? For backwards compat for guile 1.8?
<freakingpenguin>Hi Guile! I have a package I've been working on the past couple weeks. I'd love to hear feedback on it if anyone has thoughts. https://git.sr.ht/~freakingpenguin/guile-blocks
<freakingpenguin>Best summary I've come up with is an "Org-mode-esque implementation of source blocks in Guile Scheme". Seems to work well with haunt so far.
<cbaines>I don't get it, system* seems to break signal handling
<cbaines>setting up a handler for SIGINT seems to do nothing when you run system* once in another thread
<civodul>cbaines: you mean the child process doesn’t receive SIGINIT?
<civodul>*SIGINT
<cbaines>nope, the parent process receives it, but the handler doesn't run
<cbaines>without this change, C-c C-c'ing the data service wasn't stopping it: https://git.savannah.gnu.org/cgit/guix/data-service.git/commit/?id=1dc293c5705efcfe51305d05f92142b9de52af1f
<civodul>cbaines: signals are terrible, and signals in Guile are worse
<civodul>Guile runs signals in “asyncs”
<civodul>er, signal handlers
<civodul>if asyncs don’t get a chance to run, your signal handler isn’t called
<civodul>so for example, if you block on waitpid(2), then the Scheme-level signal handler is never called
<civodul>(or read(2) or any blocking syscall)
<cbaines>I checked with strace and something was happening, and I had the relevant thread sleep and wakeup repeatedly as I was wondering whether the handler just hadn't got a chance to run
<cbaines>but the only thing that seemed to help was removing the use of system*
<civodul>weird
<civodul>can you get a reduced test case?
<cbaines>civodul, I think this shows the situation https://paste.debian.net/plain/1312803
<cbaines>sending SIGINT doesn't seem to do anything, but that changes if you comment out the system* call
<civodul>cbaines: i can reproduce the bug here; could you send it to bug-guile?
<cbaines>sure, will do
<civodul>i tested with Guile 48548df91e9eb5d4a46391da0ad0a8cdd3387857
<civodul>same with 3.0.9
<cbaines>reported as bug #70144