diff mbox

update notmuch and python bindings

Message ID 147063086382.16312.14483597599827932971@what
State New
Headers show

Commit Message

Troy Sankey Aug. 8, 2016, 4:34 a.m. UTC
Updated patches address all comments so far except for the removal of
the emacs input.  Also updated the test numbers just for fun.

Quoting ng0 (2016-08-07 18:24:57)
> I'd also advise to upgrade git to something more recent if your distro
> allows it :)

Debian stable :)  It's a long term project of mine to switch to GuixSD.
I'm switching over one package at a time.  Next is notmuch!

> I'll try to test build tomorrow morning when my buildserver is up
> again. release notes read interesting enough. thanks for the patches.

Thanks.

Troy

Comments

non such Aug. 8, 2016, 7:05 a.m. UTC | #1
Troy Sankey <sankeytms@gmail.com> writes:

> Updated patches address all comments so far except for the removal of
> the emacs input.  Also updated the test numbers just for fun.
>
> Quoting ng0 (2016-08-07 18:24:57)
>> I'd also advise to upgrade git to something more recent if your distro
>> allows it :)
>
> Debian stable :)  It's a long term project of mine to switch to GuixSD.
> I'm switching over one package at a time.  Next is notmuch!

Maybe git 2.9.x is in backports.. I'm just pointing this out because
recently someone told me about security issues with certain versions of
git.

>> I'll try to test build tomorrow morning when my buildserver is up
>> again. release notes read interesting enough. thanks for the patches.
>
> Thanks.
>
> Troy

> From 034a4ac3b1bc85ae574fbe9f79add609cf311cc1 Mon Sep 17 00:00:00 2001
> From: Troy Sankey <sankeytms@gmail.com>
> Date: Sun, 7 Aug 2016 13:21:28 -0400
> Subject: [PATCH 1/3] gnu: notmuch: Update to 0.22.1.
>
> This also removes the emacs input.  Quote from the notmuch NEWS file:
>
>   Drop dependency on "pkg-config emacs".
> ---
>  gnu/packages/mail.scm | 11 +++++------
>  1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 28978a8..82e35fb 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -436,18 +436,18 @@ attachments, create new maildirs, and so on.")
>  (define-public notmuch
>    (package
>      (name "notmuch")
> -    (version "0.21")
> +    (version "0.22.1")
>      (source (origin
>                (method url-fetch)
>                (uri (string-append "https://notmuchmail.org/releases/notmuch-"
>                                    version ".tar.gz"))
>                (sha256
>                 (base32
> -                "1cr53rbpkcy3pvrmhbg2gq7sjpwb0c8xd7a4zhzxbiv8s7z8yvyh"))))
> +                "0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"))))
>      (build-system gnu-build-system)
>      (arguments
> -     '(#:tests? #f ;; FIXME: 662 tests; 168 fail and 99 are skipped
> -                   ;; with perl input: 50 fail and 99 are skipped
> +     '(#:tests? #f ; FIXME: 694 tests; 170 fail and 100 are skipped
> +                   ; with perl input: 50 fail and 100 are skipped

I think this comment should not be updated in your patch, like I wrote
before someone should update the comment when either the whole file is
addressed in stylistic fixes or when the tests are changed from false to
true or something test related is changed. Your version bump does not do
this.

>         #:phases (modify-phases %standard-phases
>                    (replace 'configure
>                      (lambda* (#:key outputs #:allow-other-keys)
> @@ -464,8 +464,7 @@ attachments, create new maildirs, and so on.")
>         ("python-sphinx" ,python2-sphinx)
>         ("bash-completion" ,bash-completion)))
>      (inputs
> -     `(("emacs" ,emacs)
> -       ("glib" ,glib)
> +     `(("glib" ,glib)
>         ("gmime" ,gmime)
>         ("talloc" ,talloc)
>         ("xapian" ,xapian)
> -- 
> 2.1.4
>
non such Aug. 8, 2016, 7:42 a.m. UTC | #2
ng0 <ng0@we.make.ritual.n0.is> writes:

> Troy Sankey <sankeytms@gmail.com> writes:
>
>> Updated patches address all comments so far except for the removal of
>> the emacs input.  Also updated the test numbers just for fun.
>>
>> Quoting ng0 (2016-08-07 18:24:57)
>>> I'd also advise to upgrade git to something more recent if your distro
>>> allows it :)
>>
>> Debian stable :)  It's a long term project of mine to switch to GuixSD.
>> I'm switching over one package at a time.  Next is notmuch!
>
> Maybe git 2.9.x is in backports.. I'm just pointing this out because
> recently someone told me about security issues with certain versions of
> git.
>
>>> I'll try to test build tomorrow morning when my buildserver is up
>>> again. release notes read interesting enough. thanks for the patches.
>>
>> Thanks.
>>
>> Troy

The patches build, the practical part I can not review, reading the
CHANGELOG I assume it to work this way, but someone else should review
this.

>> From 034a4ac3b1bc85ae574fbe9f79add609cf311cc1 Mon Sep 17 00:00:00 2001
>> From: Troy Sankey <sankeytms@gmail.com>
>> Date: Sun, 7 Aug 2016 13:21:28 -0400
>> Subject: [PATCH 1/3] gnu: notmuch: Update to 0.22.1.
>>
>> This also removes the emacs input.  Quote from the notmuch NEWS file:
>>
>>   Drop dependency on "pkg-config emacs".

I don't feel good about this commit message, I would rather write:

gnu: notmuch: Update to 0.22.1.

* gnu/packages/mail.scm (notmuch): Update to 0.22.1.
(notmuch)[inputs]: Remove emacs.


Or something like this.

What do you think?
Alex Kost Aug. 8, 2016, 8:21 a.m. UTC | #3
> From 0a134eaf40aa9dd6fa5e2e24e3d226203a03da73 Mon Sep 17 00:00:00 2001
> From: Troy Sankey <sankeytms@gmail.com>
> Date: Sun, 7 Aug 2016 13:26:30 -0400
> Subject: [PATCH 2/3] gnu: Add python-notmuch
>
> ---
>  gnu/packages/mail.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 42 insertions(+)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 82e35fb..1634d86 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -517,6 +517,48 @@ ing, and tagging large collections of email messages.")
>  useful for email address completion.")
>      (license license:expat)))
>  
> +(define-public python-notmuch
> +  (package
> +    (name "python-notmuch")
> +    (version "0.22.1")
> +    (source (origin
> +              (method url-fetch)
> +              ;; notmuch python bindings are now unavailable on pypi.  The
> +              ;; bindings are distributed via the notmuch release tarball.
> +              (uri (string-append
> +                    "https://notmuchmail.org/releases/notmuch-"
> +                    version
> +                    ".tar.gz"))
> +              (sha256
> +               (base32
> +                "0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"))))
> +    (build-system python-build-system)
> +    (inputs `(("notmuch" ,notmuch)))
> +    (arguments
> +     `(#:tests? #f  ; no "test" target
> +       #:phases
> +       (modify-phases %standard-phases
> +         ;; this python package lives in a subdirectory of the notmuch source
> +         ;; tree, so chdir into it before building:
> +         (add-before 'build 'chdir
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (chdir "bindings/python")))

I'm going to write it like this:

         (add-after 'unpack 'enter-python-dir
           (lambda _ (chdir "bindings/python") #t))

Although the phase succeeds without this trailing #t, but it is more
accurate to use it.  The thing is: if a build phase succeeds, it should
return non-false value while the value of 'chdir' is unspecified.

> +         ;; make sure the correct notmuch shared library gets loaded:
> +         (add-before
> +           'build 'set-libnotmuch-file-name
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (let ((notmuch (assoc-ref inputs "notmuch")))
> +               (substitute* "notmuch/globals.py"
> +                 (("libnotmuch\\.so\\.")
> +                  (string-append notmuch "/lib/libnotmuch.so.")))
> +               #t))))))
> +    (home-page "http://notmuchmail.org/")
> +    (synopsis "Python bindings of the Notmuch mail indexing library")
> +    (description
> +     "This package provides Python bindings to use the Notmuch mail indexing
> +and search library.")
> +    (license gpl3+)))
> +
>  (define-public python2-notmuch
>    (package
>      (name "python2-notmuch")
> -- 
> 2.1.4

I will commit this patchset in a couple of days if there will be no
other comments, thanks!
And thanks to ng0 for commenting!
Troy Sankey Aug. 8, 2016, 1:31 p.m. UTC | #4
Quoting ng0 (2016-08-08 03:05:46)
> > -     '(#:tests? #f ;; FIXME: 662 tests; 168 fail and 99 are skipped
> > -                   ;; with perl input: 50 fail and 99 are skipped
> > +     '(#:tests? #f ; FIXME: 694 tests; 170 fail and 100 are skipped
> > +                   ; with perl input: 50 fail and 100 are skipped
>
> I think this comment should not be updated in your patch, like I wrote
> before someone should update the comment when either the whole file is
> addressed in stylistic fixes or when the tests are changed from false to
> true or something test related is changed. Your version bump does not do
> this.

This also changes the numbers.  I assume these failing tests won't be
fixed in the immediate term, so I figured it would be best to at least
keep the comment accurate.

Troy
Alex Kost Aug. 11, 2016, 3:18 p.m. UTC | #5
> I will commit this patchset in a couple of days if there will be no
> other comments, thanks!

Committed as 25a78db, 4b6909b and caa6fc8, thanks again.
diff mbox

Patch

From 034a4ac3b1bc85ae574fbe9f79add609cf311cc1 Mon Sep 17 00:00:00 2001
From: Troy Sankey <sankeytms@gmail.com>
Date: Sun, 7 Aug 2016 13:21:28 -0400
Subject: [PATCH 1/3] gnu: notmuch: Update to 0.22.1.

This also removes the emacs input.  Quote from the notmuch NEWS file:

  Drop dependency on "pkg-config emacs".
---
 gnu/packages/mail.scm | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 28978a8..82e35fb 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -436,18 +436,18 @@  attachments, create new maildirs, and so on.")
 (define-public notmuch
   (package
     (name "notmuch")
-    (version "0.21")
+    (version "0.22.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://notmuchmail.org/releases/notmuch-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1cr53rbpkcy3pvrmhbg2gq7sjpwb0c8xd7a4zhzxbiv8s7z8yvyh"))))
+                "0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:tests? #f ;; FIXME: 662 tests; 168 fail and 99 are skipped
-                   ;; with perl input: 50 fail and 99 are skipped
+     '(#:tests? #f ; FIXME: 694 tests; 170 fail and 100 are skipped
+                   ; with perl input: 50 fail and 100 are skipped
        #:phases (modify-phases %standard-phases
                   (replace 'configure
                     (lambda* (#:key outputs #:allow-other-keys)
@@ -464,8 +464,7 @@  attachments, create new maildirs, and so on.")
        ("python-sphinx" ,python2-sphinx)
        ("bash-completion" ,bash-completion)))
     (inputs
-     `(("emacs" ,emacs)
-       ("glib" ,glib)
+     `(("glib" ,glib)
        ("gmime" ,gmime)
        ("talloc" ,talloc)
        ("xapian" ,xapian)
-- 
2.1.4