all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Janneke Nieuwenhuizen <janneke@gnu.org>
To: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Cc: Raghav Gururajan <rg@raghavgururajan.name>,
	ludo@gnu.org, 64711@debbugs.gnu.org,
	Liliana Marie Prikler <liliana.prikler@gmail.com>
Subject: [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for the Hurd.
Date: Thu, 20 Jul 2023 10:19:43 +0200	[thread overview]
Message-ID: <877cqvuh9c.fsf@gnu.org> (raw)
In-Reply-To: <87o7k9t27a.fsf@gmail.com> (Maxim Cournoyer's message of "Tue, 18 Jul 2023 16:05:45 -0400")

[-- Attachment #1: Type: text/plain, Size: 1678 bytes --]

Maxim Cournoyer writes:

Hello!

> Janneke Nieuwenhuizen <janneke@gnu.org> writes:
>
>> Liliana Marie Prikler writes:
>>
>>> Am Dienstag, dem 18.07.2023 um 16:40 +0200 schrieb Janneke
>>> Nieuwenhuizen:
>>>> * gnu/packages/glib.scm (glib)[arguments]: When building for the
>>>> Hurd,
>>>> set #:tests? to #false.
>>
>> [..]
>>>> +      #:tests? (not (target-hurd?))
>>
>>>> compiled
>>
>>> Instead of disabling tests altogether, can we just disable those that
>>> fail on the Hurd?
>>
>> We probably can, and I have tried to do so in most cases.  However,
>> identifying those tests can be quite time consuming.  I'm not sure how
>> many tests failed here, and note that some tests will hang or crash the
>> Hurd, so if we decide to do this, I would appreciate some help :-)
>>
>> Ludo on the other hand, argued against having more than ~20 (IIRC) test
>> exceptions and using #:tests? #f instead.
>>
>> My idea was to get guix to build natively, and guix pull to work.  Once
>> we get those to work, we can possibly look forward to more contributors
>> to this.
>
> I agree with Liliana that it's nicer to disable just these tests that
> fail, but in light of what you wrote, your approach seems reasonable.

Yes, I agree that if we want to make Hurd better and enabble us to
create a bug report it sure helps if we have more information.

Yesterday I decided to have another look into this.  I have identified
20 tests that TIMEOUT after 600s, and 37 FAIL and instead of setting
#:tests? to #false, I have added them to the `disable-failing-tests'
phase when building on the Hurd.  See attached patch.

Greetings,
Janneke


[-- Attachment #2: 0001-gnu-glib-Disable-hanging-and-failing-tests-for-the-H.patch --]
[-- Type: text/x-patch, Size: 7678 bytes --]

From e65647119e4791580ef50869d35be29d4010c6bb Mon Sep 17 00:00:00 2001
Message-Id: <e65647119e4791580ef50869d35be29d4010c6bb.1689841075.git.janneke@gnu.org>
From: Janneke Nieuwenhuizen <janneke@gnu.org>
Date: Tue, 13 Jun 2023 10:58:03 +0200
Subject: [PATCH] gnu: glib: Disable hanging and failing tests for the Hurd.

* gnu/packages/glib.scm (glib)[arguments]: When building for the Hurd,
in phase `disable-failing-tests', neutralize 20 hanging tests, and 37 more
failing tests.
---
 gnu/packages/glib.scm | 104 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 103 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index e988e8dc87..a0b85b15d1 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -14,7 +14,7 @@
 ;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
 ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
 ;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
-;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2020 Arthur Margerit <ruhtra.mar@gmail.com>
 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
 ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
@@ -285,6 +285,108 @@ (define glib
                           (string-append "//" all "\n"))
                          (("^  g_assert_cmpfloat \\(elapsed, ==.*" all)
                           (string-append "//" all "\n"))))
+                     '())
+              #$@(if (system-hurd?)
+                     '((with-directory-excursion "gio/tests"
+                         ;; TIMEOUT after 600s
+                         (substitute* '("actions.c"
+                                        "dbus-appinfo.c"
+                                        "debugcontroller.c"
+                                        "gdbus-bz627724.c"
+                                        "gdbus-connection-slow.c"
+                                        "gdbus-exit-on-close.c"
+                                        "gdbus-export.c"
+                                        "gdbus-introspection.c"
+                                        "gdbus-method-invocation.c"
+                                        "gdbus-non-socket.c"
+                                        "gdbus-proxy-threads.c"
+                                        "gdbus-proxy-unique-name.c"
+                                        "gdbus-proxy-well-known-name.c"
+                                        "gdbus-proxy.c"
+                                        "gdbus-test-codegen.c"
+                                        "gmenumodel.c"
+                                        "gnotification.c"
+                                        "stream-rw_all.c")
+                           (("return (g_test_run|session_bus_run)" all call)
+                            (string-append "return 0;// " call))
+                           ((" (ret|rtv|result) = (g_test_run|session_bus_run)"
+                             all var call)
+                            (string-append " " var " = 0;// " call))
+                           (("[ \t]*g_test_add_func.*;") ""))
+
+                         ;; commenting-out g_assert, g_test_add_func, g_test_run
+                         ;; does not help; special-case short-circuit.
+                         (substitute* "gdbus-connection-loss.c" ;; TODO?
+                           (("  gchar \\*path;.*" all)
+                            (string-append all "  return 0;\n")))
+
+                         ;; FAIL
+                         (substitute* '("appmonitor.c"
+                                        "async-splice-output-stream.c"
+                                        "autoptr.c"
+                                        "contexts.c"       
+                                        "converter-stream.c"
+                                        "file.c"
+                                        "g-file-info.c"
+                                        "g-file.c"
+                                        "g-icon.c"
+                                        "gapplication.c"
+                                        "gdbus-connection-flush.c"
+                                        "gdbus-connection.c"
+                                        "gdbus-names.c"    
+                                        "gdbus-server-auth.c"
+                                        "gsocketclient-slow.c"
+                                        "gsubprocess.c"
+                                        "io-stream.c"
+                                        "live-g-file.c"
+                                        "memory-monitor.c" 
+                                        "mimeapps.c"
+                                        "network-monitor-race.c"
+                                        "network-monitor.c"
+                                        "pollable.c"
+                                        "power-profile-monitor.c"
+                                        "readwrite.c"
+                                        "resources.c"
+                                        "socket-service.c"
+                                        "socket.c"
+                                        "tls-bindings.c"
+                                        "tls-certificate.c"
+                                        "tls-database.c"
+                                        "trash.c"
+                                        "vfs.c")
+                           (("return (g_test_run|session_bus_run)" all call)
+                            (string-append "return 0;// " call))
+                           ((" (ret|rtv|result) = (g_test_run|session_bus_run)"
+                             all var call)
+                            (string-append " " var " = 0;// " call))
+                           (("[ \t]*g_test_add_func.*;") ""))
+
+                         ;; commenting-out g_test_add_func, g_test_run does
+                         ;; not help; special-case short-circuit.
+                         (substitute* "gsettings.c"
+                           (("#ifdef TEST_LOCALE_PATH" all)
+                            (string-append "  return 0;\n" all)))
+
+                         ;; commenting-out g_test_add_func, ;; g_test_run does
+                         ;; not help; special-case short-circuit.
+                         (substitute* "proxy-test.c"
+                           (("  gint result.*;" all)
+                            (string-append all "  return 0;\n")))
+
+                         ;; commenting-out g_test_add_func, g_test_run
+                         ;; does not help; special-case short-circuit.
+                         (substitute* "volumemonitor.c"
+                           (("  gboolean ret;" all)
+                            (string-append all "  return 0;\n"))))
+
+                       (with-directory-excursion "glib/tests"
+                         ;; TIMEOUT after 600s
+                         (substitute* "thread-pool.c"
+                           (("[ \t]*g_test_add_func.*;") ""))
+
+                         ;; FAIL
+                         (substitute* "fileutils.c"
+                           (("[ \t]*g_test_add_func.*;") ""))))
                      '())))
           ;; Python references are not being patched in patch-phase of build,
           ;; despite using python-wrapper as input. So we patch them manually.

base-commit: c5a189d2abdbfe4c8dfeef764e3be055948b5c91
-- 
2.40.1


[-- Attachment #3: Type: text/plain, Size: 164 bytes --]


-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com

  reply	other threads:[~2023-07-20  8:20 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-18 14:38 [bug#64711] [PATCH 00/45] Fix builds and skip failing tests for the Hurd Janneke Nieuwenhuizen
2023-07-18 14:39 ` [bug#64711] [PATCH 01/43] Revert "gnu: libunistring: Fix make check for the Hurd." Janneke Nieuwenhuizen
2023-07-18 14:39 ` [bug#64711] [PATCH 02/43] gnu: guile: Skip hanging and failing pipe tests on the Hurd Janneke Nieuwenhuizen
2023-07-18 20:18   ` [bug#64711] [PATCH 00/45] Fix builds and skip failing tests for " Ludovic Courtès
2023-07-19  5:23     ` Janneke Nieuwenhuizen
2023-07-19  6:27     ` Janneke Nieuwenhuizen
2023-07-18 14:39 ` [bug#64711] [PATCH 03/43] gnu: coreutils: Skip hanging and failing test on " Janneke Nieuwenhuizen
2023-07-18 20:13   ` [bug#64711] [PATCH 00/45] Fix builds and skip failing tests for " Ludovic Courtès
2023-07-18 20:23     ` Janneke Nieuwenhuizen
2023-07-18 20:23     ` Janneke Nieuwenhuizen
2023-07-18 14:39 ` [bug#64711] [PATCH 04/43] gnu: grep: Update hanging and failing tests on " Janneke Nieuwenhuizen
2023-07-18 20:23   ` [bug#64711] [PATCH 00/45] Fix builds and skip failing tests for " Ludovic Courtès
2023-07-18 14:39 ` [bug#64711] [PATCH 05/43] Revert "gnu: sed: Skip failing test on GNU/Hurd." Janneke Nieuwenhuizen
2023-07-18 14:39 ` [bug#64711] [PATCH 06/43] gnu: findutils: Move test-strerror_r from XFAIL to skip on the Hurd Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 07/43] gnu: diffutils: Remove test-perror2 from XFAIL_TESTS " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 08/43] gnu: gettext-minimal: Remove XFAIL_TESTS for " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 09/43] gnu: m4: Skip gnulib stack-overflow tests " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 10/43] gnu: openssl: Build fix " Janneke Nieuwenhuizen
2023-07-18 17:53   ` [bug#64711] [PATCH 00/45] Fix builds and skip failing tests " Ludovic Courtès
2023-07-18 18:04     ` Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 11/43] gnu: python: Support native build on " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 12/43] gnu: mpfr: Skip failing test " Janneke Nieuwenhuizen
2023-07-18 17:57   ` [bug#64711] [PATCH 00/45] Fix builds and skip failing tests for " Ludovic Courtès
2023-07-18 14:40 ` [bug#64711] [PATCH 13/43] gnu: elfutils: Skip failing tests on " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 14/43] gnu: libbsd: Skip failing test " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 15/43] gnu: c-ares: Skip failing tests " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 16/43] gnu: libgpg-error: Skip failing test " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 17/43] gnu: libgcrypt: Skip hanging benchmark tests " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 18/43] gnu: tcl: Remove failing " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 19/43] gnu: curl: Skip failing test " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 20/43] gnu: git: " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 21/43] gnu: emacs: Depend on libc-for-target Janneke Nieuwenhuizen
2023-07-18 15:54   ` Liliana Marie Prikler
2023-07-18 16:39     ` Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 22/43] gnu: procps: Skip linux-version test for the Hurd Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 23/43] gnu: e2fsprogs: Skip failing tests on " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 24/43] gnu: parted: Disable tests for " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 25/43] gnu: libpaper: " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 26/43] gnu: cairo: Support building " Janneke Nieuwenhuizen
2023-07-18 15:57   ` Liliana Marie Prikler
2023-07-18 16:33     ` Janneke Nieuwenhuizen
2023-07-18 20:06       ` Maxim Cournoyer
2023-07-19  9:30         ` Janneke Nieuwenhuizen
2023-07-20  3:14           ` Maxim Cournoyer
2023-07-21 18:27             ` Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 27/43] gnu: openssl-1.1: Fix shared build " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 28/43] gnu: ruby-2.6: Skip test on " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 29/43] gnu: tcsh: Skip substitution tests " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 30/43] gnu: swig: Skip tests when building for " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 31/43] gnu: zstd: " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 32/43] gnu: cmake-bootstrap: Fix build " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 33/43] gnu: cmake-minimal: Skip tests on " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 34/43] gnu: doxygen: Fix build for " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 35/43] gnu: graphite2: Skip test on " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 36/43] gnu: guile-git: Skip http proxy " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 37/43] gnu: glib: Disable tests for " Janneke Nieuwenhuizen
2023-07-18 15:56   ` Liliana Marie Prikler
2023-07-18 16:32     ` Janneke Nieuwenhuizen
2023-07-18 20:05       ` Maxim Cournoyer
2023-07-20  8:19         ` Janneke Nieuwenhuizen [this message]
2023-07-20 18:08           ` Maxim Cournoyer
2023-07-21 17:22             ` Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 38/43] gnu: ghostscript: Fix build " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 39/43] gnu: harfbuzz: Support " Janneke Nieuwenhuizen
2023-07-18 20:13   ` Maxim Cournoyer
2023-07-18 14:40 ` [bug#64711] [PATCH 40/43] gnu: pango: " Janneke Nieuwenhuizen
2023-07-18 20:04   ` Maxim Cournoyer
2023-07-18 20:15     ` Janneke Nieuwenhuizen
2023-07-19  0:56       ` Maxim Cournoyer
2023-07-19  6:14         ` Janneke Nieuwenhuizen
2023-07-19 16:22           ` Maxim Cournoyer
2023-07-19 20:51             ` Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 41/43] gnu: fontforge: Support build on " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 42/43] gnu: po4a: Skip failing test " Janneke Nieuwenhuizen
2023-07-18 14:40 ` [bug#64711] [PATCH 43/43] gnu: guile-2.0: Skip failing tests " Janneke Nieuwenhuizen
2023-07-18 14:48 ` [bug#64711] [PATCH 00/43] Fix builds and skip failing tests for " Janneke Nieuwenhuizen
2023-07-18 20:29 ` [bug#64711] [PATCH 00/45] " Ludovic Courtès
2023-07-20  8:27   ` bug#64711: " Janneke Nieuwenhuizen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877cqvuh9c.fsf@gnu.org \
    --to=janneke@gnu.org \
    --cc=64711@debbugs.gnu.org \
    --cc=liliana.prikler@gmail.com \
    --cc=ludo@gnu.org \
    --cc=maxim.cournoyer@gmail.com \
    --cc=rg@raghavgururajan.name \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.