diff mbox series

[bug#51165,core-updates-frozen] gnu: glib: Skip ‘testfilemonitor’ test.

Message ID 20211012160312.158351-1-bauermann@kolabnow.com
State New
Headers show
Series [bug#51165,core-updates-frozen] gnu: glib: Skip ‘testfilemonitor’ test. | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Thiago Jung Bauermann Oct. 12, 2021, 4:03 p.m. UTC
On powerpc64le-linux, it fails approximately 2 out of 3 times. On x86_64 it
also fails every now and then, at least on glib’s CI.

* gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add new patch.
* gnu/packages/glib.scm: Use it.
---

Hello,

Since glib was recently updated on core-updates frozen, it stopped building
on powerpc64le-linux because of this test failure. I noticed the issue while
testing `guix pull` from the branch and the pull failed due to this problem.
It turns out Debian has a patch addressing exactly this, so let’s use it
too.

Unfortunately, `guix pull` still fails on powerpc64le-linux because the Guix
package recently started to depend on MariaDB, which unfortunately I t think
never built successfuly on this platform due to testsuite failures.

 gnu/local.mk                                  |   1 +
 gnu/packages/glib.scm                         |   3 +-
 ...-Skip-if-we-are-avoiding-flaky-tests.patch | 111 ++++++++++++++++++
 3 files changed, 114 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch

Comments

Maxim Cournoyer Oct. 12, 2021, 6:29 p.m. UTC | #1
Hi,

Thiago Jung Bauermann <bauermann@kolabnow.com> writes:

> On powerpc64le-linux, it fails approximately 2 out of 3 times. On x86_64 it
> also fails every now and then, at least on glib’s CI.
>
> * gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch:
> New file.
> * gnu/local.mk (dist_patch_DATA): Add new patch.
> * gnu/packages/glib.scm: Use it.
> ---

That seems too long of a patch name -- guix lint should flag it.

Don't worry though, I'll adjust it locally.

Thanks!

Maxim
Thiago Jung Bauermann Oct. 12, 2021, 9:55 p.m. UTC | #2
Hello Maxim,

Em terça-feira, 12 de outubro de 2021, às 15:29:53 -03, Maxim Cournoyer 
escreveu:
> Thiago Jung Bauermann <bauermann@kolabnow.com> writes:
> > On powerpc64le-linux, it fails approximately 2 out of 3 times. On
> > x86_64 it also fails every now and then, at least on glib’s CI.
> > 
> > *
> > gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flak
> > y-tests.patch: New file.
> > * gnu/local.mk (dist_patch_DATA): Add new patch.
> > * gnu/packages/glib.scm: Use it.
> > ---
> 
> That seems too long of a patch name -- guix lint should flag it.

It does, but I forgot to run it before submitting the patch. :-/

> Don't worry though, I'll adjust it locally.
> 
> Thanks!

Thank you! Sorry for the extra work.
And thank you for looking into it so promptly.
Maxim Cournoyer Oct. 15, 2021, 3:32 a.m. UTC | #3
Hello,

Thiago Jung Bauermann <bauermann@kolabnow.com> writes:

> Hello Maxim,
>
> Em terça-feira, 12 de outubro de 2021, às 15:29:53 -03, Maxim Cournoyer 
> escreveu:
>> Thiago Jung Bauermann <bauermann@kolabnow.com> writes:
>> > On powerpc64le-linux, it fails approximately 2 out of 3 times. On
>> > x86_64 it also fails every now and then, at least on glib’s CI.
>> > 
>> > *
>> > gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flak
>> > y-tests.patch: New file.
>> > * gnu/local.mk (dist_patch_DATA): Add new patch.
>> > * gnu/packages/glib.scm: Use it.
>> > ---
>> 
>> That seems too long of a patch name -- guix lint should flag it.
>
> It does, but I forgot to run it before submitting the patch. :-/
>
>> Don't worry though, I'll adjust it locally.
>> 
>> Thanks!
>
> Thank you! Sorry for the extra work.
> And thank you for looking into it so promptly.

No worries; I'm currently smoke testing a local version of the
core-updates-frozen with the extra batched commits and then some.

If it tests well I should be able to push it shortly.

Thank you!

Maxim
diff mbox series

Patch

diff --git a/gnu/local.mk b/gnu/local.mk
index dfb9e50b7369..e4d66c833643 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1124,6 +1124,7 @@  dist_patch_DATA =						\
   %D%/packages/patches/glib-appinfo-watch.patch			\
   %D%/packages/patches/glib-networking-gnutls-binding.patch	\
   %D%/packages/patches/glib-skip-failing-test.patch		\
+  %D%/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch	\
   %D%/packages/patches/glibc-CVE-2018-11236.patch		\
   %D%/packages/patches/glibc-CVE-2018-11237.patch		\
   %D%/packages/patches/glibc-CVE-2019-7309.patch		\
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 6373fd0da9d1..9fc46b2101b1 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -190,7 +190,8 @@  shared NFS home directories.")
         (base32 "0f1iprj7v0b5wn9njj39dkl25g6filfs7i4ybk20jq821k1a7qg7"))
        (patches
         (search-patches "glib-appinfo-watch.patch"
-                        "glib-skip-failing-test.patch"))
+                        "glib-skip-failing-test.patch"
+                        "glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch"))
        (modules '((guix build utils)))
        (snippet
         '(begin
diff --git a/gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch b/gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch
new file mode 100644
index 000000000000..3feaa75bd0e7
--- /dev/null
+++ b/gnu/packages/patches/glib-testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch
@@ -0,0 +1,111 @@ 
+On powerpc64le-linux, testfilemonitor fails approximately 2 out of 3 times.
+Patch obtained from:
+
+https://sources.debian.org/patches/glib2.0/2.66.8-1/debian/testfilemonitor-Skip-if-we-are-avoiding-flaky-tests.patch/
+
+From: Simon McVittie <smcv@debian.org>
+Date: Tue, 25 Feb 2020 10:45:07 +0000
+Subject: testfilemonitor: Skip if we are avoiding flaky tests
+
+See https://gitlab.gnome.org/GNOME/glib/issues/1634
+
+Signed-off-by: Simon McVittie <smcv@debian.org>
+Forwarded: no
+---
+ gio/tests/testfilemonitor.c | 34 +++++++++++++++++++++++++++++++++-
+ 1 file changed, 33 insertions(+), 1 deletion(-)
+
+diff --git a/gio/tests/testfilemonitor.c b/gio/tests/testfilemonitor.c
+index b74dc2b..79b5776 100644
+--- a/gio/tests/testfilemonitor.c
++++ b/gio/tests/testfilemonitor.c
+@@ -21,6 +21,12 @@ setup (Fixture       *fixture,
+   gchar *path = NULL;
+   GError *local_error = NULL;
+ 
++  if (g_getenv ("DEB_ALLOW_FLAKY_TESTS") == NULL)
++    {
++      g_test_skip ("https://gitlab.gnome.org/GNOME/glib/issues/1634");
++      return;
++    }
++
+   path = g_dir_make_tmp ("gio-test-testfilemonitor_XXXXXX", &local_error);
+   g_assert_no_error (local_error);
+ 
+@@ -37,7 +43,9 @@ teardown (Fixture       *fixture,
+ {
+   GError *local_error = NULL;
+ 
+-  g_file_delete (fixture->tmp_dir, NULL, &local_error);
++  if (fixture->tmp_dir != NULL)
++    g_file_delete (fixture->tmp_dir, NULL, &local_error);
++
+   g_assert_no_error (local_error);
+   g_clear_object (&fixture->tmp_dir);
+ }
+@@ -360,6 +368,10 @@ test_atomic_replace (Fixture       *fixture,
+   GError *error = NULL;
+   TestData data;
+ 
++  /* respect g_test_skip() during setup() */
++  if (g_test_failed ())
++    return;
++
+   data.step = 0;
+   data.events = NULL;
+ 
+@@ -465,6 +477,10 @@ test_file_changes (Fixture       *fixture,
+   GError *error = NULL;
+   TestData data;
+ 
++  /* respect g_test_skip() during setup() */
++  if (g_test_failed ())
++    return;
++
+   data.step = 0;
+   data.events = NULL;
+ 
+@@ -582,6 +598,10 @@ test_dir_monitor (Fixture       *fixture,
+   GError *error = NULL;
+   TestData data;
+ 
++  /* respect g_test_skip() during setup() */
++  if (g_test_failed ())
++    return;
++
+   data.step = 0;
+   data.events = NULL;
+ 
+@@ -679,6 +699,10 @@ test_dir_non_existent (Fixture       *fixture,
+   TestData data;
+   GError *error = NULL;
+ 
++  /* respect g_test_skip() during setup() */
++  if (g_test_failed ())
++    return;
++
+   data.step = 0;
+   data.events = NULL;
+ 
+@@ -788,6 +812,10 @@ test_cross_dir_moves (Fixture       *fixture,
+   GError *error = NULL;
+   TestData data[2];
+ 
++  /* respect g_test_skip() during setup() */
++  if (g_test_failed ())
++    return;
++
+   data[0].step = 0;
+   data[0].events = NULL;
+ 
+@@ -957,6 +985,10 @@ test_file_hard_links (Fixture       *fixture,
+   GError *error = NULL;
+   TestData data;
+ 
++  /* respect g_test_skip() during setup() */
++  if (g_test_failed ())
++    return;
++
+   g_test_bug ("755721");
+ 
+ #ifdef HAVE_LINK