[PATCH gnome-team 0/1] Update tracker, and ignore i686 missing tests

  • Done
  • quality assurance status badge
Details
2 participants
  • Liliana Marie Prikler
  • Vivien Kraus
Owner
unassigned
Submitted by
Vivien Kraus
Severity
normal
V
V
Vivien Kraus wrote on 17 Sep 2023 14:59
(address . guix-patches@gnu.org)
cover.1694955548.git.vivien@planete-kraus.eu
Dear guix,

tracker does not build on i686-linux. There are 2 failing test cases: parsing
a double does not give the same result as the compiler implementation of a
literal parser, and the far away dates are off (I suspect a 32-bit time_t).

Anyway, I relaxed the former so that it is equal up to 1e-12, and I disabled
the latter.

What do you think?

Best regards,

Vivien

Vivien Kraus (1):
gnu: tracker: Update to 3.6.0.

gnu/packages/gnome.scm | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)


base-commit: e9ff5d51e3297089e66c124195e1f1b42dbded65
--
2.41.0
V
V
Vivien Kraus wrote on 17 Sep 2023 13:29
[PATCH gnome-team 1/1] gnu: tracker: Update to 3.6.0.
(address . 66052@debbugs.gnu.org)
62ce9b1e2e95d3b480e9d09cb85fe8823b54bf09.1694955548.git.vivien@planete-kraus.eu
* gnu/packages/gnome.scm (tracker): Update to 3.6.0.
[#:phases]: On 32-bit systems, disable 2 failing tests.
---
gnu/packages/gnome.scm | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)

Toggle diff (47 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 2077478ff2..29aa57133d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9387,7 +9387,7 @@ (define-public gnome-autoar
(define-public tracker
(package
(name "tracker")
- (version "3.5.3")
+ (version "3.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker/"
@@ -9395,7 +9395,7 @@ (define-public tracker
"tracker-" version ".tar.xz"))
(sha256
(base32
- "1vi878f95a2nlvqz46ph6f05hywjb2ni0znqavhdkrbvi6qchrhl"))))
+ "1whdqidxmagsc35pmz9kcc5vs3bmvbkmnis7prnx3zxs37z2qnaj"))))
(build-system meson-build-system)
(arguments
(list
@@ -9417,6 +9417,22 @@ (define-public tracker
(substitute* "utils/trackertestutils/__main__.py"
(("/bin/bash")
(search-input-file inputs "bin/bash")))))
+ #$@(if (target-x86-32?)
+ ;; On 32-bit systems, the far away dates are incorrect, and
+ ;; the floats are not parsed exactly.
+ (list
+ #~(add-after 'unpack 'relax-float-equality-tests
+ (lambda _
+ (substitute* "tests/libtracker-sparql/tracker-statement-test.c"
+ (("g_assert_cmpfloat *\\((.*), ==, ([0-9.e-]+)\\);" total actual expected)
+ (string-append "g_assert_cmpfloat_with_epsilon ("
+ actual ", " expected ", 1e-12);")))))
+ #~(add-after 'unpack 'disable-datetime-test
+ (lambda _
+ (substitute* "tests/core/tracker-sparql-test.c"
+ (("\\{ \"datetime/direct-1\", .* \\},")
+ "/* datetime test disabled */")))))
+ '())
(add-before 'configure 'set-shell
(lambda _
(setenv "SHELL" (which "bash"))))
--
2.41.0
L
L
Liliana Marie Prikler wrote on 17 Sep 2023 15:27
f81b5962314a785372f3cf9ac737cfbcdb69fd99.camel@gmail.com
Am Sonntag, dem 17.09.2023 um 13:29 +0200 schrieb Vivien Kraus:
Toggle quote (2 lines)
> * gnu/packages/gnome.scm (tracker): Update to 3.6.0.
> [#:phases]: On 32-bit systems, disable 2 failing tests.
Should be [#:phases]: Add ‘the-added-phase’ otherwise the ChangeLog
LGTM.
Toggle quote (54 lines)
> ---
>  gnu/packages/gnome.scm | 20 ++++++++++++++++++--
>  1 file changed, 18 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 2077478ff2..29aa57133d 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -9387,7 +9387,7 @@ (define-public gnome-autoar
>  (define-public tracker
>    (package
>      (name "tracker")
> -    (version "3.5.3")
> +    (version "3.6.0")
>      (source (origin
>                (method url-fetch)
>                (uri (string-append "mirror://gnome/sources/tracker/"
> @@ -9395,7 +9395,7 @@ (define-public tracker
>                                    "tracker-" version ".tar.xz"))
>                (sha256
>                 (base32
> -               
> "1vi878f95a2nlvqz46ph6f05hywjb2ni0znqavhdkrbvi6qchrhl"))))
> +               
> "1whdqidxmagsc35pmz9kcc5vs3bmvbkmnis7prnx3zxs37z2qnaj"))))
>      (build-system meson-build-system)
>      (arguments
>       (list
> @@ -9417,6 +9417,22 @@ (define-public tracker
>                (substitute* "utils/trackertestutils/__main__.py"
>                  (("/bin/bash")
>                   (search-input-file inputs "bin/bash")))))
> +          #$@(if (target-x86-32?)
> +                 ;; On 32-bit systems, the far away dates are
> incorrect, and
> +                 ;; the floats are not parsed exactly.
> +                 (list
> +                  #~(add-after 'unpack 'relax-float-equality-tests
> +                      (lambda _
> +                        (substitute* "tests/libtracker-
> sparql/tracker-statement-test.c"
> +                          (("g_assert_cmpfloat *\\((.*), ==, ([0-
> 9.e-]+)\\);" total actual expected)
> +                           (string-append
> "g_assert_cmpfloat_with_epsilon ("
> +                                          actual ", " expected ",
> 1e-12);")))))
> +                  #~(add-after 'unpack 'disable-datetime-test
> +                      (lambda _
> +                        (substitute* "tests/core/tracker-sparql-
> test.c"
> +                          (("\\{ \"datetime/direct-1\", .* \\},")
> +                           "/* datetime test disabled */")))))
> +                 '())
You can (and probably should) make this into a ‘disable-failing-tests’
or inline it into an existing one. Otherwise LGTM but waiting for CI
to test.

Cheers
V
V
Vivien Kraus wrote on 17 Sep 2023 13:29
[PATCH gnome-team v2] gnu: tracker: Update to 3.6.0.
f20d548ec573512dc5f5eb97d7cdcfb1088f0775.1694962575.git.vivien@planete-kraus.eu
* gnu/packages/gnome.scm (tracker): Update to 3.6.0.
[#:phases]: Add 'disable-i686-failing-tests'.
---

So, I can add a reply here, below the ---?

Toggle quote (3 lines)
> You can (and probably should) make this into a ‘disable-failing-tests’ or
> inline it into an existing one. Otherwise LGTM but waiting for CI to test.

This is only for i686, I want to keep all tests for x86_64. So, it’s named
'disable-i686-failing-tests'.

I would not hold my breath for CI. Looking at the qa-frontpage repository, I
suspect the base for all QA builds is always master (it invokes "git tag
base-for-issue-*" without a specific branch name), so it will likely fail.

Best regards,

Vivien

gnu/packages/gnome.scm | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)

Toggle diff (47 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 2077478ff2..e38aa6622a 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9387,7 +9387,7 @@ (define-public gnome-autoar
(define-public tracker
(package
(name "tracker")
- (version "3.5.3")
+ (version "3.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker/"
@@ -9395,7 +9395,7 @@ (define-public tracker
"tracker-" version ".tar.xz"))
(sha256
(base32
- "1vi878f95a2nlvqz46ph6f05hywjb2ni0znqavhdkrbvi6qchrhl"))))
+ "1whdqidxmagsc35pmz9kcc5vs3bmvbkmnis7prnx3zxs37z2qnaj"))))
(build-system meson-build-system)
(arguments
(list
@@ -9417,6 +9417,20 @@ (define-public tracker
(substitute* "utils/trackertestutils/__main__.py"
(("/bin/bash")
(search-input-file inputs "bin/bash")))))
+ #$@(if (target-x86-32?)
+ ;; On 32-bit systems, the far away dates are incorrect, and
+ ;; the floats are not parsed exactly.
+ (list
+ #~(add-after 'unpack 'disable-i686-failing-tests
+ (lambda _
+ (substitute* "tests/libtracker-sparql/tracker-statement-test.c"
+ (("g_assert_cmpfloat *\\((.*), ==, ([0-9.e-]+)\\);" total actual expected)
+ (string-append "g_assert_cmpfloat_with_epsilon ("
+ actual ", " expected ", 1e-12);")))
+ (substitute* "tests/core/tracker-sparql-test.c"
+ (("\\{ \"datetime/direct-1\", .* \\},")
+ "/* datetime test disabled */")))))
+ '())
(add-before 'configure 'set-shell
(lambda _
(setenv "SHELL" (which "bash"))))

base-commit: e9ff5d51e3297089e66c124195e1f1b42dbded65
--
2.41.0
L
L
Liliana Marie Prikler wrote on 17 Sep 2023 18:22
0235430d802b793ab401ee6ed15b51a587cf38dd.camel@gmail.com
Am Sonntag, dem 17.09.2023 um 13:29 +0200 schrieb Vivien Kraus:
Toggle quote (5 lines)
> * gnu/packages/gnome.scm (tracker): Update to 3.6.0.
> [#:phases]: Add 'disable-i686-failing-tests'.
> ---
>
> So, I can add a reply here, below the ---?
Exactly.

Toggle quote (11 lines)
> > You can (and probably should) make this into a ‘disable-failing-
> > tests’ or inline it into an existing one.  Otherwise LGTM but
> > waiting for CI to test.
>
> This is only for i686, I want to keep all tests for x86_64. So, it’s
> named 'disable-i686-failing-tests'.
>
> I would not hold my breath for CI. Looking at the qa-frontpage
> repository, I suspect the base for all QA builds is always master (it
> invokes "git tag base-for-issue-*" without a specific branch name),
> so it will likely fail.
Fine by me. Not sure whether we'll need to distinguish failing tests
like that in the future or chain multiple ones after another (there is
precedent to putting them all in one phase and we are already
rebuilding tracker, so we might also have a phase that reads
*unspecified* on arches that don't need any fixes, but who am I to
insist on that).

More importantly, I can't currently rely on mumi to get me v2 of the
patch-set, so I'm waiting either way :)

Toggle quote (55 lines)
> Best regards,
>
> Vivien
>
>  gnu/packages/gnome.scm | 18 ++++++++++++++++--
>  1 file changed, 16 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 2077478ff2..e38aa6622a 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -9387,7 +9387,7 @@ (define-public gnome-autoar
>  (define-public tracker
>    (package
>      (name "tracker")
> -    (version "3.5.3")
> +    (version "3.6.0")
>      (source (origin
>                (method url-fetch)
>                (uri (string-append "mirror://gnome/sources/tracker/"
> @@ -9395,7 +9395,7 @@ (define-public tracker
>                                    "tracker-" version ".tar.xz"))
>                (sha256
>                 (base32
> -               
> "1vi878f95a2nlvqz46ph6f05hywjb2ni0znqavhdkrbvi6qchrhl"))))
> +               
> "1whdqidxmagsc35pmz9kcc5vs3bmvbkmnis7prnx3zxs37z2qnaj"))))
>      (build-system meson-build-system)
>      (arguments
>       (list
> @@ -9417,6 +9417,20 @@ (define-public tracker
>                (substitute* "utils/trackertestutils/__main__.py"
>                  (("/bin/bash")
>                   (search-input-file inputs "bin/bash")))))
> +          #$@(if (target-x86-32?)
> +                 ;; On 32-bit systems, the far away dates are
> incorrect, and
> +                 ;; the floats are not parsed exactly.
> +                 (list
> +                  #~(add-after 'unpack 'disable-i686-failing-tests
> +                      (lambda _
> +                        (substitute* "tests/libtracker-
> sparql/tracker-statement-test.c"
> +                          (("g_assert_cmpfloat *\\((.*), ==, ([0-
> 9.e-]+)\\);" total actual expected)
> +                           (string-append
> "g_assert_cmpfloat_with_epsilon ("
> +                                          actual ", " expected ",
> 1e-12);")))
> +                        (substitute* "tests/core/tracker-sparql-
> test.c"
> +                          (("\\{ \"datetime/direct-1\", .* \\},")
> +                           "/* datetime test disabled */")))))
> +                 '())
Visually LGTM, as for whether it builds I'll have to see ._.

Cheers
V
V
Vivien Kraus wrote on 17 Sep 2023 13:29
[PATCH gnome-team v3] gnu: tracker: Update to 3.6.0.
409de86ce727f6f09b2e9a063e79848578be5fa9.1694972905.git.vivien@planete-kraus.eu
* gnu/packages/gnome.scm (tracker): Update to 3.6.0.
[#:phases]: Add 'disable-failing-tests'.
---

Toggle quote (18 lines)
> > > You can (and probably should) make this into a ‘disable-failing-
> > > tests’ or inline it into an existing one. Otherwise LGTM but
> > > waiting for CI to test.
> >
> > This is only for i686, I want to keep all tests for x86_64. So, it’s
> > named 'disable-i686-failing-tests'.
> >
> > I would not hold my breath for CI. Looking at the qa-frontpage
> > repository, I suspect the base for all QA builds is always master (it
> > invokes "git tag base-for-issue-*" without a specific branch name),
> > so it will likely fail.
> Fine by me. Not sure whether we'll need to distinguish failing tests
> like that in the future or chain multiple ones after another (there is
> precedent to putting them all in one phase and we are already
> rebuilding tracker, so we might also have a phase that reads
> *unspecified* on arches that don't need any fixes, but who am I to
> insist on that).

Sorry, I’m not sure I understood everything. Is this more what you expected?
I’m not sure about the *unspecified* thing. If I drop the "else" leg of the
conditional, I get:

guix build: error: #<unspecified>: invalid G-expression input

Same if I replace the "if" with a "when".

So, the phase does not read *unspecified* if no fix is needed, it reads #t
instead.

gnu/packages/gnome.scm | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)

Toggle diff (49 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 2077478ff2..422d6de28f 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9387,7 +9387,7 @@ (define-public gnome-autoar
(define-public tracker
(package
(name "tracker")
- (version "3.5.3")
+ (version "3.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker/"
@@ -9395,7 +9395,7 @@ (define-public tracker
"tracker-" version ".tar.xz"))
(sha256
(base32
- "1vi878f95a2nlvqz46ph6f05hywjb2ni0znqavhdkrbvi6qchrhl"))))
+ "1whdqidxmagsc35pmz9kcc5vs3bmvbkmnis7prnx3zxs37z2qnaj"))))
(build-system meson-build-system)
(arguments
(list
@@ -9417,6 +9417,22 @@ (define-public tracker
(substitute* "utils/trackertestutils/__main__.py"
(("/bin/bash")
(search-input-file inputs "bin/bash")))))
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ #$(if (target-x86-32?)
+ ;; On 32-bit systems, the far away dates are incorrect, and
+ ;; the floats are not parsed exactly.
+ #~(begin
+ (substitute*
+ "tests/libtracker-sparql/tracker-statement-test.c"
+ (("g_assert_cmpfloat *\\((.*), ==, ([0-9.e-]+)\\);"
+ total actual expected)
+ (string-append "g_assert_cmpfloat_with_epsilon ("
+ actual ", " expected ", 1e-12);")))
+ (substitute* "tests/core/tracker-sparql-test.c"
+ (("\\{ \"datetime/direct-1\", .* \\},")
+ "/* datetime test disabled */")))
+ #~#t)))
(add-before 'configure 'set-shell
(lambda _
(setenv "SHELL" (which "bash"))))

base-commit: e9ff5d51e3297089e66c124195e1f1b42dbded65
--
2.41.0
L
L
Liliana Marie Prikler wrote on 17 Sep 2023 20:55
79a0085fc5b4c27bef6d3d811ab40a9b6f752447.camel@gmail.com
Am Sonntag, dem 17.09.2023 um 13:29 +0200 schrieb Vivien Kraus:
Toggle quote (38 lines)
> * gnu/packages/gnome.scm (tracker): Update to 3.6.0.
> [#:phases]: Add 'disable-failing-tests'.
> ---
>
> > > > You can (and probably should) make this into a ‘disable-
> > > > failing-
> > > > tests’ or inline it into an existing one.  Otherwise LGTM but
> > > > waiting for CI to test.
> > >
> > > This is only for i686, I want to keep all tests for x86_64. So,
> > > it’s
> > > named 'disable-i686-failing-tests'.
> > >
> > > I would not hold my breath for CI. Looking at the qa-frontpage
> > > repository, I suspect the base for all QA builds is always master
> > > (it
> > > invokes "git tag base-for-issue-*" without a specific branch
> > > name),
> > > so it will likely fail.
> > Fine by me.  Not sure whether we'll need to distinguish failing
> > tests
> > like that in the future or chain multiple ones after another (there
> > is
> > precedent to putting them all in one phase and we are already
> > rebuilding tracker, so we might also have a phase that reads
> > *unspecified* on arches that don't need any fixes, but who am I to
> > insist on that).
>
> Sorry, I’m not sure I understood everything. Is this more what you
> expected? I’m not sure about the *unspecified* thing. If I drop the
> "else" leg of the conditional, I get:
>
>     guix build: error: #<unspecified>: invalid G-expression input
>
> Same if I replace the "if" with a "when".
>
> So, the phase does not read *unspecified* if no fix is needed, it
> reads #t instead.
You don't need the clunky #t if you use and, but I'm sure there are
other places that already have such logic to copy from with more
idiomatic code. Case in point: glib, which has patches for i686 and
hurd.


Cheers
V
V
Vivien Kraus wrote on 17 Sep 2023 13:29
[PATCH gnome-team v4] gnu: tracker: Update to 3.6.0.
afedd96086dbc7468dd6ae3a75c0bc3d6099b03d.1694977684.git.vivien@planete-kraus.eu
* gnu/packages/gnome.scm (tracker): Update to 3.6.0.
[#:phases]: Add 'disable-failing-tests'.
---

Toggle quote (1 lines)
> You don't need the clunky #t if you use and
True. Thank you, I did not think of that.

Toggle quote (4 lines)
> but I'm sure there are other places that already have such logic to copy
> from with more idiomatic code. Case in point: glib, which has patches for
> i686 and hurd.

I can do the same as glib, but then on x86_64, where nothing is spliced in,
the phase becomes `(lambda _)' which is a syntax error in Guile (lambdas must
have at least one item in body). I can do the "and" trick, or do as glib and
write '("Nothing to do :)") in the not-x86-32 branch of the if instead of
'(). What would be best?

In the mean time, here is the cheapest change: use the "and" trick.

gnu/packages/gnome.scm | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)

Toggle diff (48 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 2077478ff2..d344d2830c 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9387,7 +9387,7 @@ (define-public gnome-autoar
(define-public tracker
(package
(name "tracker")
- (version "3.5.3")
+ (version "3.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker/"
@@ -9395,7 +9395,7 @@ (define-public tracker
"tracker-" version ".tar.xz"))
(sha256
(base32
- "1vi878f95a2nlvqz46ph6f05hywjb2ni0znqavhdkrbvi6qchrhl"))))
+ "1whdqidxmagsc35pmz9kcc5vs3bmvbkmnis7prnx3zxs37z2qnaj"))))
(build-system meson-build-system)
(arguments
(list
@@ -9417,6 +9417,21 @@ (define-public tracker
(substitute* "utils/trackertestutils/__main__.py"
(("/bin/bash")
(search-input-file inputs "bin/bash")))))
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ #$(and (target-x86-32?)
+ ;; On 32-bit systems, the far away dates are incorrect,
+ ;; and the floats are not parsed exactly.
+ #~(begin
+ (substitute*
+ "tests/libtracker-sparql/tracker-statement-test.c"
+ (("g_assert_cmpfloat *\\((.*), ==, ([0-9.e-]+)\\);"
+ total actual expected)
+ (string-append "g_assert_cmpfloat_with_epsilon ("
+ actual ", " expected ", 1e-12);")))
+ (substitute* "tests/core/tracker-sparql-test.c"
+ (("\\{ \"datetime/direct-1\", .* \\},")
+ "/* datetime test disabled */"))))))
(add-before 'configure 'set-shell
(lambda _
(setenv "SHELL" (which "bash"))))

base-commit: e9ff5d51e3297089e66c124195e1f1b42dbded65
--
2.41.0
L
L
Liliana Marie Prikler wrote on 17 Sep 2023 21:51
800d89ee93edfcb461862e2daa3217b7e9fc1c8b.camel@gmail.com
Am Sonntag, dem 17.09.2023 um 13:29 +0200 schrieb Vivien Kraus:
Toggle quote (16 lines)
> * gnu/packages/gnome.scm (tracker): Update to 3.6.0.
> [#:phases]: Add 'disable-failing-tests'.
> ---
>
> > You don't need the clunky #t if you use and
> True. Thank you, I did not think of that.
>
> > but I'm sure there are other places that already have such logic to
> > copy from with more idiomatic code.  Case in point: glib, which has
> > patches for i686 and hurd.
>
> I can do the same as glib, but then on x86_64, where nothing is
> spliced in, the phase becomes `(lambda _)' which is a syntax error in
> Guile (lambdas must have at least one item in body). I can do the
> "and" trick, or do as glib and write '("Nothing to do :)") in the
> not-x86-32 branch of the if instead of '(). What would be best?
And that's where my original comment with unspecified comes back in.
If you add *unspecified* after a bunch of conditional code that may or
may not get expanded, you will at least not have an empty body :)

Also remember to use #$@ rather than #$ for reasons (allows you to use
lists rather than forcing begin everywhere).

Cheers
V
V
Vivien Kraus wrote on 17 Sep 2023 13:29
[PATCH gnome-team v5] gnu: tracker: Update to 3.6.0.
b11456e974df5822d602c90672eaceaf48dba8ad.1695013151.git.vivien@planete-kraus.eu
* gnu/packages/gnome.scm (tracker): Update to 3.6.0.
[#:phases]: Add 'disable-failing-tests'.
---
Toggle quote (8 lines)
> > I can do the same as glib, but then on x86_64, where nothing is spliced
> > in, the phase becomes `(lambda _)' which is a syntax error in Guile
> > (lambdas must have at least one item in body).
> > […]
> And that's where my original comment with unspecified comes back in. If you
> add *unspecified* after a bunch of conditional code that may or may not get
> expanded, you will at least not have an empty body :)

Ooh, now I get it. I finally understand that *unspecified* is an actual value
in Guile. I’m sorry and a bit embarrassed it took that long. So, something
like that?

gnu/packages/gnome.scm | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)

Toggle diff (49 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 2077478ff2..87d208bcd2 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9387,7 +9387,7 @@ (define-public gnome-autoar
(define-public tracker
(package
(name "tracker")
- (version "3.5.3")
+ (version "3.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tracker/"
@@ -9395,7 +9395,7 @@ (define-public tracker
"tracker-" version ".tar.xz"))
(sha256
(base32
- "1vi878f95a2nlvqz46ph6f05hywjb2ni0znqavhdkrbvi6qchrhl"))))
+ "1whdqidxmagsc35pmz9kcc5vs3bmvbkmnis7prnx3zxs37z2qnaj"))))
(build-system meson-build-system)
(arguments
(list
@@ -9417,6 +9417,22 @@ (define-public tracker
(substitute* "utils/trackertestutils/__main__.py"
(("/bin/bash")
(search-input-file inputs "bin/bash")))))
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ #$@(if (target-x86-32?)
+ ;; On 32-bit systems, the far away dates are incorrect,
+ ;; and the floats are not parsed exactly.
+ '((substitute*
+ "tests/libtracker-sparql/tracker-statement-test.c"
+ (("g_assert_cmpfloat *\\((.*), ==, ([0-9.e-]+)\\);"
+ total actual expected)
+ (string-append "g_assert_cmpfloat_with_epsilon ("
+ actual ", " expected ", 1e-12);")))
+ (substitute* "tests/core/tracker-sparql-test.c"
+ (("\\{ \"datetime/direct-1\", .* \\},")
+ "/* datetime test disabled */")))
+ '())
+ *unspecified*))
(add-before 'configure 'set-shell
(lambda _
(setenv "SHELL" (which "bash"))))

base-commit: e9ff5d51e3297089e66c124195e1f1b42dbded65
--
2.41.0
L
L
Liliana Marie Prikler wrote on 18 Sep 2023 19:00
1d4ecc16d80aef67764d3b228821557af518df51.camel@gmail.com
Am Sonntag, dem 17.09.2023 um 13:29 +0200 schrieb Vivien Kraus:
Toggle quote (15 lines)
> * gnu/packages/gnome.scm (tracker): Update to 3.6.0.
> [#:phases]: Add 'disable-failing-tests'.
> ---
> > > I can do the same as glib, but then on x86_64, where nothing is
> > > spliced in, the phase becomes `(lambda _)' which is a syntax
> > > error in Guile (lambdas must have at least one item in body).
> > > […]
> > And that's where my original comment with unspecified comes back
> > in.  If you add *unspecified* after a bunch of conditional code
> > that may or may not get expanded, you will at least not have an
> > empty body :)
>
> Ooh, now I get it. I finally understand that *unspecified* is an
> actual value in Guile. I’m sorry and a bit embarrassed it took that
> long. So, something like that?
Yep, like that. Will test as soon as mumi gives me a non-empty patch
set.

Cheers
L
L
Liliana Marie Prikler wrote on 24 Sep 2023 12:01
e8d40d52e5bd6aead2b3732ef89aea35eb20ab38.camel@gmail.com
Am Montag, dem 18.09.2023 um 19:00 +0200 schrieb Liliana Marie Prikler:
Toggle quote (18 lines)
> Am Sonntag, dem 17.09.2023 um 13:29 +0200 schrieb Vivien Kraus:
> > * gnu/packages/gnome.scm (tracker): Update to 3.6.0.
> > [#:phases]: Add 'disable-failing-tests'.
> > ---
> > > > I can do the same as glib, but then on x86_64, where nothing is
> > > > spliced in, the phase becomes `(lambda _)' which is a syntax
> > > > error in Guile (lambdas must have at least one item in body).
> > > > […]
> > > And that's where my original comment with unspecified comes back
> > > in.  If you add *unspecified* after a bunch of conditional code
> > > that may or may not get expanded, you will at least not have an
> > > empty body :)
> >
> > Ooh, now I get it. I finally understand that *unspecified* is an
> > actual value in Guile. I’m sorry and a bit embarrassed it took that
> > long. So, something like that?
> Yep, like that.  Will test as soon as mumi gives me a non-empty patch
> set.
Mumi still appears broken; pushed anyway.

Cheers
Closed
?