GNU bug report logs - #55954
[PATCH] gnu: public-inbox: Fixes to allow the testsuite to run

Previous Next

Package: guix-patches;

Reported by: Thiago Jung Bauermann <bauermann <at> kolabnow.com>

Date: Tue, 14 Jun 2022 03:33:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #16 received at 55954-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Thiago Jung Bauermann <bauermann <at> kolabnow.com>
Cc: 55954-done <at> debbugs.gnu.org
Subject: Re: bug#55954: [PATCH] gnu: public-inbox: Fixes to allow the
 testsuite to run
Date: Fri, 17 Jun 2022 14:44:09 +0200
Hello,

Thiago Jung Bauermann <bauermann <at> kolabnow.com> skribis:

> Ludovic Courtès <ludo <at> gnu.org> writes:

[...]

>> Applied, thanks!
>
> I guess you had second thoughts. :-)

Yes, sorry; I wasn’t sure whether bothering you was a good idea, but I
was also dissatisfied with that whole situation (which is not
public-inbox’s fault!).

>> It’s a bummer that we have to do all this.  Would this work:
>>
>>   (replace 'check
>>     (lambda _
>>       (sigaction SIGINT SIG_DFL)
>>       (sigaction SIGTERM SIG_DFL)
>>       (sigaction SIGCHLD (lambda _ (waitpid WAIT_ANY WNOHANG)))
>>
>>       ;; Ugly hack to make sure signal handler asyncs get a chance
>>       ;; to run while we’re in ‘waitpid’ during the “make check”
>>       ;; invocation.
>>       (sigaction SIGALRM (lambda _ (alarm 1)))
>>       (alarm 1)))
>>
>> ?
>
> I assume there should be a "make check" in there somewhere. :-)
>
> Unfortunately, it didn't work. This is the check phase I tried:
>
>   (replace 'check
>     (lambda _
>       (setenv "TEMP" "/tmp")
>       (setenv "TEMPDIR" "/tmp")
>       (setenv "TMP" "/tmp")
>       (setenv "TMPDIR" "/tmp")
>
>       (sigaction SIGINT SIG_DFL)
>       (sigaction SIGTERM SIG_DFL)
>       (sigaction SIGCHLD (lambda _ (waitpid WAIT_ANY WNOHANG)))
>
>       ;; Ugly hack to make sure signal handler asyncs get a chance
>       ;; to run while we’re in ‘waitpid’ during the “make check”
>       ;; invocation.
>       (sigaction SIGALRM (lambda _ (alarm 1)))
>       (alarm 1)
>       (unless (zero? (status:exit-val (system* "make" "check")))
>         (error "`make check' exited with error"))))
>
>
> And this was the end of the output of the phase:
>
>     ⋮
> Bailout called.  Further testing stopped:  daemon still running (PID:5282)
> FAILED--Further testing stopped: daemon still running (PID:5282)
> make: *** [Makefile:4141: check-each] Error 255
> error: in phase 'check': uncaught exception:
> misc-error #f "~A" ("`make check' exited with error") #f
> phase `check' failed after 27.7 seconds
>
> “daemon still running” means that lei's daemon process wasn't reaped.

Damnit, I wonder how that can happen.

>> If not, the solution you propose LGTM.
>
> Thanks. Hopefully this can be fixed in Guix's build machinery itself in
> the core-updates branch and all the packages that are using this hack
> can drop it then.

Yeah.

Anyway, applied for good this time, thanks for taking extra time on
this!

Ludo’.




This bug report was last modified 3 years and 34 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.