unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.
@ 2020-10-24 18:23 Lars-Dominik Braun
  2020-10-25 18:14 ` Leo Famulari
  0 siblings, 1 reply; 9+ messages in thread
From: Lars-Dominik Braun @ 2020-10-24 18:23 UTC (permalink / raw)
  To: 44197

* gnu/packages/calendar.scm (khal): Update to 0.10.2.
[source]: Drop upstream patches.
[arguments]: Drop substitute* for bug fixed upstream and ignore failing
test in 'check.
[inputs]: Add missing inputs.
---
 gnu/packages/calendar.scm | 46 +++++++++++++++------------------------
 1 file changed, 18 insertions(+), 28 deletions(-)

diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index 1dde978d72..dabf8bfb15 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -168,23 +168,13 @@ data units.")
 (define-public khal
   (package
     (name "khal")
-    (version "0.10.1")
+    (version "0.10.2")
     (source (origin
-             (method url-fetch)
-             (uri (pypi-uri "khal" version))
-             (sha256
-              (base32
-               "1r8bkgjwkh7i8ygvsv51h1cnax50sb183vafg66x5snxf3dgjl6l"))
-             (patches
-               (list
-                 (origin
-                   (method url-fetch)
-                   ;; This patch fixes an issue with python-urwid-2.1.0
-                   (uri "https://github.com/pimutils/khal/commit/2c5990c2de2015b251ba23617faa40ee11b8c22a.patch")
-                   (file-name "khal-compat-urwid-2.1.0.patch")
-                   (sha256
-                    (base32
-                     "11nd8hkjz68imwqqn0p54zmb53z2pfxmzchaviy7jc1ky5s9l663")))))))
+              (method url-fetch)
+              (uri (pypi-uri "khal" version))
+              (sha256
+               (base32
+                "11qhrga44knlnp88py9p547d4nr5kn041d2nszwa3dqw7mf22ks9"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
@@ -198,19 +188,14 @@ data units.")
              "doc/build/man/khal.1"
              (string-append (assoc-ref outputs "out") "/share/man/man1"))
             #t))
-        (add-before 'check 'fix-tests
-          (lambda _
-            ;; Reported upstream: <https://github.com/pimutils/khal/issues/947>.
-            (substitute* "tests/cli_test.py"
-             (("Invalid value for \"\\[ICS\\]\"") "Invalid value for \\'[ICS]\\'"))
-            #t))
         (replace 'check
-          (lambda* (#:key inputs #:allow-other-keys)
-            ;; The tests require us to choose a timezone.
-            (setenv "TZ"
-                    (string-append (assoc-ref inputs "tzdata")
-                                   "/share/zoneinfo/Zulu"))
-            (invoke "py.test" "tests"))))))
+          (lambda* (#:key inputs tests? #:allow-other-keys)
+            (if tests?
+                (begin
+                  ;; The tests require us to choose a timezone.
+                  (setenv "TZ" "UTC")
+                  ;; The disabled test expects /dev/tty.
+                  (invoke "pytest" "tests" "-k" "not test_import_from_stdin"))))))))
     (native-inputs
      `(("python-pytest" ,python-pytest)
        ("python-pytest-cov" ,python-pytest-cov)
@@ -229,6 +214,11 @@ data units.")
        ("python-icalendar" ,python-icalendar)
        ("python-tzlocal" ,python-tzlocal)
        ("python-urwid" ,python-urwid)
+       ("python-pytz" ,python-pytz)
+       ("python-setproctitle" ,python-setproctitle)
+       ("python-atomicwrites" ,python-atomicwrites)
+       ("python-click" ,python-click)
+       ("python-click-log" ,python-click-log)
        ("python-pyxdg" ,python-pyxdg)))
     (synopsis "Console calendar program")
     (description "Khal is a standards based console calendar program,
-- 
2.26.2





^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.
  2020-10-24 18:23 [bug#44197] [PATCH] gnu: khal: Update to 0.10.2 Lars-Dominik Braun
@ 2020-10-25 18:14 ` Leo Famulari
  2020-10-26  7:37   ` Lars-Dominik Braun
  0 siblings, 1 reply; 9+ messages in thread
From: Leo Famulari @ 2020-10-25 18:14 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: 44197

On Sat, Oct 24, 2020 at 08:23:33PM +0200, Lars-Dominik Braun wrote:
> * gnu/packages/calendar.scm (khal): Update to 0.10.2.
> [source]: Drop upstream patches.
> [arguments]: Drop substitute* for bug fixed upstream and ignore failing
> test in 'check.
> [inputs]: Add missing inputs.

Thanks!

Unfortunately, the second part of the patch ("hunk 2") does not apply to
the latest Guix Git master branch:

> @@ -198,19 +188,14 @@ data units.")
>               "doc/build/man/khal.1"
>               (string-append (assoc-ref outputs "out") "/share/man/man1"))
>              #t))
> -        (add-before 'check 'fix-tests
> -          (lambda _
> -            ;; Reported upstream: <https://github.com/pimutils/khal/issues/947>.
> -            (substitute* "tests/cli_test.py"
> -             (("Invalid value for \"\\[ICS\\]\"") "Invalid value for \\'[ICS]\\'"))
> -            #t))
>          (replace 'check
> -          (lambda* (#:key inputs #:allow-other-keys)
> -            ;; The tests require us to choose a timezone.
> -            (setenv "TZ"
> -                    (string-append (assoc-ref inputs "tzdata")
> -                                   "/share/zoneinfo/Zulu"))
> -            (invoke "py.test" "tests"))))))
> +          (lambda* (#:key inputs tests? #:allow-other-keys)
> +            (if tests?
> +                (begin
> +                  ;; The tests require us to choose a timezone.
> +                  (setenv "TZ" "UTC")
> +                  ;; The disabled test expects /dev/tty.
> +                  (invoke "pytest" "tests" "-k" "not test_import_from_stdin"))))))))
>      (native-inputs
>       `(("python-pytest" ,python-pytest)
>         ("python-pytest-cov" ,python-pytest-cov)

Can you double-check and see if there is something else in your local
copy of the Guix source code?




^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.
  2020-10-25 18:14 ` Leo Famulari
@ 2020-10-26  7:37   ` Lars-Dominik Braun
  2020-10-26 17:39     ` bug#44197: Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.) Leo Famulari
  0 siblings, 1 reply; 9+ messages in thread
From: Lars-Dominik Braun @ 2020-10-26  7:37 UTC (permalink / raw)
  To: Leo Famulari; +Cc: 44197

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

Hi Leo,

> Unfortunately, the second part of the patch ("hunk 2") does not apply to
> the latest Guix Git master branch:
you’re right. Looks like there is a weird space character between “;;”
and “Reported upstream”. Maybe email ate that? I’m attaching a `git
show` instead and also uploading the change to
https://github.com/PromyLOPh/guix (branch work-khal, commit
503169b39de09e3c3969bb2dc92464f054d79560).

Thanks for taking care of this,
Lars


[-- Attachment #2: khal.patch --]
[-- Type: text/x-diff, Size: 3533 bytes --]

commit 503169b39de09e3c3969bb2dc92464f054d79560
Author: Lars-Dominik Braun <lars@6xq.net>
Date:   Sat Oct 24 20:17:48 2020 +0200

    gnu: khal: Update to 0.10.2.
    
    * gnu/packages/calendar.scm (khal): Update to 0.10.2.
    [source]: Drop upstream patches.
    [arguments]: Drop substitute* for bug fixed upstream and ignore failing
    test in 'check.
    [inputs]: Add missing inputs.

diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index 1dde978d72..dabf8bfb15 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -168,23 +168,13 @@ data units.")
 (define-public khal
   (package
     (name "khal")
-    (version "0.10.1")
+    (version "0.10.2")
     (source (origin
-             (method url-fetch)
-             (uri (pypi-uri "khal" version))
-             (sha256
-              (base32
-               "1r8bkgjwkh7i8ygvsv51h1cnax50sb183vafg66x5snxf3dgjl6l"))
-             (patches
-               (list
-                 (origin
-                   (method url-fetch)
-                   ;; This patch fixes an issue with python-urwid-2.1.0
-                   (uri "https://github.com/pimutils/khal/commit/2c5990c2de2015b251ba23617faa40ee11b8c22a.patch")
-                   (file-name "khal-compat-urwid-2.1.0.patch")
-                   (sha256
-                    (base32
-                     "11nd8hkjz68imwqqn0p54zmb53z2pfxmzchaviy7jc1ky5s9l663")))))))
+              (method url-fetch)
+              (uri (pypi-uri "khal" version))
+              (sha256
+               (base32
+                "11qhrga44knlnp88py9p547d4nr5kn041d2nszwa3dqw7mf22ks9"))))
     (build-system python-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
@@ -198,19 +188,14 @@ data units.")
              "doc/build/man/khal.1"
              (string-append (assoc-ref outputs "out") "/share/man/man1"))
             #t))
-        (add-before 'check 'fix-tests
-          (lambda _
-            ;; Reported upstream: <https://github.com/pimutils/khal/issues/947>.
-            (substitute* "tests/cli_test.py"
-             (("Invalid value for \"\\[ICS\\]\"") "Invalid value for \\'[ICS]\\'"))
-            #t))
         (replace 'check
-          (lambda* (#:key inputs #:allow-other-keys)
-            ;; The tests require us to choose a timezone.
-            (setenv "TZ"
-                    (string-append (assoc-ref inputs "tzdata")
-                                   "/share/zoneinfo/Zulu"))
-            (invoke "py.test" "tests"))))))
+          (lambda* (#:key inputs tests? #:allow-other-keys)
+            (if tests?
+                (begin
+                  ;; The tests require us to choose a timezone.
+                  (setenv "TZ" "UTC")
+                  ;; The disabled test expects /dev/tty.
+                  (invoke "pytest" "tests" "-k" "not test_import_from_stdin"))))))))
     (native-inputs
      `(("python-pytest" ,python-pytest)
        ("python-pytest-cov" ,python-pytest-cov)
@@ -229,6 +214,11 @@ data units.")
        ("python-icalendar" ,python-icalendar)
        ("python-tzlocal" ,python-tzlocal)
        ("python-urwid" ,python-urwid)
+       ("python-pytz" ,python-pytz)
+       ("python-setproctitle" ,python-setproctitle)
+       ("python-atomicwrites" ,python-atomicwrites)
+       ("python-click" ,python-click)
+       ("python-click-log" ,python-click-log)
        ("python-pyxdg" ,python-pyxdg)))
     (synopsis "Console calendar program")
     (description "Khal is a standards based console calendar program,

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* bug#44197: Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.)
  2020-10-26  7:37   ` Lars-Dominik Braun
@ 2020-10-26 17:39     ` Leo Famulari
  2020-10-27  8:14       ` [bug#44197] " Lars-Dominik Braun
  0 siblings, 1 reply; 9+ messages in thread
From: Leo Famulari @ 2020-10-26 17:39 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: bug-guix, 44197-done

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

On Mon, Oct 26, 2020 at 08:37:24AM +0100, Lars-Dominik Braun wrote:
> Thanks for taking care of this,

Thanks for taking care of this package I use every day! :)

> commit 503169b39de09e3c3969bb2dc92464f054d79560
> Author: Lars-Dominik Braun <lars@6xq.net>
> Date:   Sat Oct 24 20:17:48 2020 +0200
> 
>     gnu: khal: Update to 0.10.2.
>     
>     * gnu/packages/calendar.scm (khal): Update to 0.10.2.
>     [source]: Drop upstream patches.
>     [arguments]: Drop substitute* for bug fixed upstream and ignore failing
>     test in 'check.
>     [inputs]: Add missing inputs.

Pushed as 21955a54da2bc171f2745486f62aceeacea7993a.

I wonder, should we disable the test suite entirely? In my experience,
it's not reliable — different parts of it will succeed or fail on
subsequent runs, or on different computers, or when verbose output is
enable, etc. The upstream bug tracker is full of reports like that.

For example:

https://github.com/pimutils/khal/issues/860

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#44197] Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.)
  2020-10-26 17:39     ` bug#44197: Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.) Leo Famulari
@ 2020-10-27  8:14       ` Lars-Dominik Braun
  2020-10-27 21:59         ` Leo Famulari
  0 siblings, 1 reply; 9+ messages in thread
From: Lars-Dominik Braun @ 2020-10-27  8:14 UTC (permalink / raw)
  To: Leo Famulari; +Cc: bug-guix, 44197-done

Hi,

> Thanks for taking care of this package I use every day! :)
yeah, me too :)

> I wonder, should we disable the test suite entirely? In my experience,
> it's not reliable — different parts of it will succeed or fail on
> subsequent runs, or on different computers, or when verbose output is
> enable, etc.
I just checked on two different machines and you’re right, on my main
machine the test suite works (even across multiple runs), on the other
one three tests[1] fail – with exactly the same Guix version
(commit 6a0fec57092d574c33b997e5972012e9c29a4dd4). This should not
happen in the build environment. Imo it would be worth figuring out why
it does nontheless.

Cheers,
Lars

[1] TestCollection.test_multi_uid_vdir, test_event_different_timezones
and test_default_calendar.





^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#44197] Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.)
  2020-10-27  8:14       ` [bug#44197] " Lars-Dominik Braun
@ 2020-10-27 21:59         ` Leo Famulari
  2020-10-28  7:22           ` Lars-Dominik Braun
  0 siblings, 1 reply; 9+ messages in thread
From: Leo Famulari @ 2020-10-27 21:59 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: 44197-done

On Tue, Oct 27, 2020 at 09:14:10AM +0100, Lars-Dominik Braun wrote:
> I just checked on two different machines and you’re right, on my main
> machine the test suite works (even across multiple runs), on the other
> one three tests[1] fail – with exactly the same Guix version
> (commit 6a0fec57092d574c33b997e5972012e9c29a4dd4). This should not
> happen in the build environment. Imo it would be worth figuring out why
> it does nontheless.

Alright, I will disable it then.

Can you say more about the differences between the machines where it
succeeds and fails? It could help us figure out what's going on.

For me, I'm building on a Thinkpad (Intel Core i5-6300U CPU) using
Debian with Linux 5.9.1, with a tmpfs filesystem for the build
environment. I use an SSD for storage...  but I don't think the tmpfs is
ever swapping on this machine. There is a lot of unused RAM.

> 
> [1] TestCollection.test_multi_uid_vdir, test_event_different_timezones
> and test_default_calendar.

These fail for me often. I also sometimes see failures of
test_only_update_old_event, test_birthdays, test_birthdays_29feb and
test_birthdays_no_year.




^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#44197] Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.)
  2020-10-27 21:59         ` Leo Famulari
@ 2020-10-28  7:22           ` Lars-Dominik Braun
  2020-10-28 16:30             ` Leo Famulari
  0 siblings, 1 reply; 9+ messages in thread
From: Lars-Dominik Braun @ 2020-10-28  7:22 UTC (permalink / raw)
  To: Leo Famulari; +Cc: 44197-done

Hi,

> Can you say more about the differences between the machines where it
> succeeds and fails? It could help us figure out what's going on.
they are quite different machines unfortunately. One is Gentoo Linux
running on a Ryzen 5 3600 desktop machine (working), the other one a
Ubuntu 19.10 on a Thinkpad (Intel Core i5-8250U) Laptop (not working).
Both have SSD storage and /tmp on a tmpfs.

Could there be something leaking into the build environment to make it
fail consistently on one machine, but not the other one?

Cheers,
Lars





^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#44197] Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.)
  2020-10-28  7:22           ` Lars-Dominik Braun
@ 2020-10-28 16:30             ` Leo Famulari
  2020-10-29 10:10               ` Lars-Dominik Braun
  0 siblings, 1 reply; 9+ messages in thread
From: Leo Famulari @ 2020-10-28 16:30 UTC (permalink / raw)
  To: Lars-Dominik Braun; +Cc: 44197-done

On Wed, Oct 28, 2020 at 08:22:13AM +0100, Lars-Dominik Braun wrote:
> Hi,
> 
> > Can you say more about the differences between the machines where it
> > succeeds and fails? It could help us figure out what's going on.
> they are quite different machines unfortunately. One is Gentoo Linux
> running on a Ryzen 5 3600 desktop machine (working), the other one a
> Ubuntu 19.10 on a Thinkpad (Intel Core i5-8250U) Laptop (not working).
> Both have SSD storage and /tmp on a tmpfs.

Interesting that we both get failures on Core i5 processors and
Debian-family operating systems. I am not using the Debian kernel (I
build a variant of the Guix kernel), but I do use the Debian package
tooling to manage it.

> Could there be something leaking into the build environment to make it
> fail consistently on one machine, but not the other one?

Could be, but the question is what? The build environment isolation
doesn't account for things like filesystem, kernel version, time of day
(👀), CPU bugs... besides the common culprit of some race conditions in
the test suite.

Are you using the same kernel versions on your two machines? I guess the
kernel configs likely don't match between them.




^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#44197] Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.)
  2020-10-28 16:30             ` Leo Famulari
@ 2020-10-29 10:10               ` Lars-Dominik Braun
  0 siblings, 0 replies; 9+ messages in thread
From: Lars-Dominik Braun @ 2020-10-29 10:10 UTC (permalink / raw)
  To: Leo Famulari; +Cc: 44197-done

Hi Leo,

some more data points:

- works consistently inside a VM (Common KVM processor) with Ubuntu
  20.04 → not the kernel version/configuration or OS.
- whether it works or not does not change during the day → not time
  related(?)
- works consistently on a different laptop with i5-8250U and Gentoo →
  not the processor

After looking at how test_birthdays_29feb fails, I’m leaning towards the
possiblity of a bug in khal. So, I commented here:
https://github.com/pimutils/khal/issues/860#issuecomment-718583031

> Are you using the same kernel versions on your two machines? I guess the
> kernel configs likely don't match between them.
No, previously the Ubuntu machine used 5.3 and now after upgrading to
20.04 version 5.4. The test suite is still failing there and still
succeeding on my desktop, which is using a custom kernel configuration
tailored to this particular machine (version 5.8 right now).

Cheers,
Lars





^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-10-29 10:11 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-24 18:23 [bug#44197] [PATCH] gnu: khal: Update to 0.10.2 Lars-Dominik Braun
2020-10-25 18:14 ` Leo Famulari
2020-10-26  7:37   ` Lars-Dominik Braun
2020-10-26 17:39     ` bug#44197: Disable khal test suite? (was Re: [bug#44197] [PATCH] gnu: khal: Update to 0.10.2.) Leo Famulari
2020-10-27  8:14       ` [bug#44197] " Lars-Dominik Braun
2020-10-27 21:59         ` Leo Famulari
2020-10-28  7:22           ` Lars-Dominik Braun
2020-10-28 16:30             ` Leo Famulari
2020-10-29 10:10               ` Lars-Dominik Braun

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).