Re: [PATCH v2 00/36] [emacs] Add outline headings and switch to lexical scope

2021-01-13 Thread Jonas Bernoulli
David Bremner  writes:

> I pushed applied the first 22 patches to master.

Thanks!

> "[PATCH v2 23/36] emacs: various cosmetic improvements" leads to some
> test failures. FWIW, I'm using Emacs 27.1 on Debian testing.

Sorry about, it seems I did not rerun the tests after making the
responsible change.  It was a silly one character (well two) bug:

-  (pcase-lambda (`(,regexp ,folder))
+  (pcase-lambda (`(,regexp . ,folder))

I have send v3 of just that one commit (23).

 Jonas
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


Re: [PATCH v2 00/36] [emacs] Add outline headings and switch to lexical scope

2021-01-13 Thread Tomi Ollila
On Wed, Jan 13 2021, David Bremner wrote:

> Jonas Bernoulli  writes:
>
>> This fixes a minor whitespace bug that Tomi notices in (1).
>>
>> This also adds for commits, two of them in response to a concern
>> raised by Tomi, who didn't "see enough point for requiring subr-x
>> just [for string-empty-p]", which I agree with:
>>
>> 2) Changes how `cl-lib' and `pcase' are required.  I did that first
>>because I want to do it the same way as for `subr-x'.
>>
>> 3) Require `subr-x', so that we can use it without having to worry
>>whether we have now reached the threshold where it becomes
>>justified to require an additional library.
>
> I pushed applied the first 22 patches to master.
>
> "[PATCH v2 23/36] emacs: various cosmetic improvements" leads to some
> test failures. FWIW, I'm using Emacs 27.1 on Debian testing.

I got the same.

After some trial and error w/ "educated guesses", reverting this change
in notmuch-maildir-fcc.el (git diff from my tree after revert), 
test passed.

in emacs/notmuch-maildir-fcc.el


@@ -107,13 +107,16 @@ (defun notmuch-fcc-header-setup ()
   ;; Old style - no longer works.
   (error "Invalid `notmuch-fcc-dirs' setting (old style)"))
  ((listp notmuch-fcc-dirs)
-  (or (seq-some (let ((from (message-field-value "From")))
-  (pcase-lambda (`(,regexp ,folder))
-(and (string-match-p regexp from)
- folder)))
-notmuch-fcc-dirs)
-  (progn (message "No Fcc header added.")
- nil)))
+  (let* ((from (message-field-value "From"))
+ (match
+  (catch 'first-match
+(dolist (re-folder notmuch-fcc-dirs)
+  (when (string-match-p (car re-folder) from)
+(throw 'first-match re-folder))
+(if match
+(cdr match)
+  (message "No Fcc header added.")
+  nil)))


>
> T310-emacs: Testing emacs interface
>  FAIL   notmuch-fcc-dirs set to a list (with match)
>   --- T310-emacs.28.EXPECTED  2021-01-13 12:00:57.901428602 +
>   +++ T310-emacs.28.OUTPUT2021-01-13 12:00:57.905428701 +
>   @@ -1,5 +0,0 @@
>   -From: Notmuch Test Suite 
>   -To: 
>   -Subject: 
>   -Fcc: 
> /home/bremner/software/upstream/notmuch/test/tmp.T310-emacs/mail/sent-list-match
>   ---text follows this line--
> *ERROR*: Wrong type argument: listp, "sent-list-match"
>  FAIL   notmuch-fcc-dirs set to a list (catch-all)
>   --- T310-emacs.29.EXPECTED  2021-01-13 12:00:57.933429400 +
>   +++ T310-emacs.29.OUTPUT2021-01-13 12:00:57.933429400 +
>   @@ -1,5 +0,0 @@
>   -From: Notmuch Test Suite 
>   -To: 
>   -Subject: 
>   -Fcc: 
> /home/bremner/software/upstream/notmuch/test/tmp.T310-emacs/mail/sent-list-catch-all
>   ---text follows this line--
> *ERROR*: Wrong type argument: listp, "failure"
>  FAIL   notmuch-fcc-dirs set to a list (no match)
>   --- T310-emacs.30.EXPECTED  2021-01-13 12:00:57.953429900 +
>   +++ T310-emacs.30.OUTPUT2021-01-13 12:00:57.95743 +
>   @@ -1,4 +0,0 @@
>   -From: Notmuch Test Suite 
>   -To: 
>   -Subject: 
>   ---text follows this line--
> *ERROR*: Wrong type argument: listp, "failure"
> ___
> notmuch mailing list -- notmuch@notmuchmail.org
> To unsubscribe send an email to notmuch-le...@notmuchmail.org
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


Re: [PATCH v2 00/36] [emacs] Add outline headings and switch to lexical scope

2021-01-13 Thread David Bremner
Jonas Bernoulli  writes:

> This fixes a minor whitespace bug that Tomi notices in (1).
>
> This also adds for commits, two of them in response to a concern
> raised by Tomi, who didn't "see enough point for requiring subr-x
> just [for string-empty-p]", which I agree with:
>
> 2) Changes how `cl-lib' and `pcase' are required.  I did that first
>because I want to do it the same way as for `subr-x'.
>
> 3) Require `subr-x', so that we can use it without having to worry
>whether we have now reached the threshold where it becomes
>justified to require an additional library.

I pushed applied the first 22 patches to master.

"[PATCH v2 23/36] emacs: various cosmetic improvements" leads to some
test failures. FWIW, I'm using Emacs 27.1 on Debian testing.

T310-emacs: Testing emacs interface
 FAIL   notmuch-fcc-dirs set to a list (with match)
--- T310-emacs.28.EXPECTED  2021-01-13 12:00:57.901428602 +
+++ T310-emacs.28.OUTPUT2021-01-13 12:00:57.905428701 +
@@ -1,5 +0,0 @@
-From: Notmuch Test Suite 
-To: 
-Subject: 
-Fcc: 
/home/bremner/software/upstream/notmuch/test/tmp.T310-emacs/mail/sent-list-match
---text follows this line--
*ERROR*: Wrong type argument: listp, "sent-list-match"
 FAIL   notmuch-fcc-dirs set to a list (catch-all)
--- T310-emacs.29.EXPECTED  2021-01-13 12:00:57.933429400 +
+++ T310-emacs.29.OUTPUT2021-01-13 12:00:57.933429400 +
@@ -1,5 +0,0 @@
-From: Notmuch Test Suite 
-To: 
-Subject: 
-Fcc: 
/home/bremner/software/upstream/notmuch/test/tmp.T310-emacs/mail/sent-list-catch-all
---text follows this line--
*ERROR*: Wrong type argument: listp, "failure"
 FAIL   notmuch-fcc-dirs set to a list (no match)
--- T310-emacs.30.EXPECTED  2021-01-13 12:00:57.953429900 +
+++ T310-emacs.30.OUTPUT2021-01-13 12:00:57.95743 +
@@ -1,4 +0,0 @@
-From: Notmuch Test Suite 
-To: 
-Subject: 
---text follows this line--
*ERROR*: Wrong type argument: listp, "failure"
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


Re: [PATCH v2 00/36] [emacs] Add outline headings and switch to lexical scope

2021-01-13 Thread Tomi Ollila
On Sun, Jan 10 2021, Jonas Bernoulli wrote:

> This fixes a minor whitespace bug that Tomi notices in (1).
>
> This also adds for commits, two of them in response to a concern
> raised by Tomi, who didn't "see enough point for requiring subr-x
> just [for string-empty-p]", which I agree with:
>
> 2) Changes how `cl-lib' and `pcase' are required.  I did that first
>because I want to do it the same way as for `subr-x'.
>
> 3) Require `subr-x', so that we can use it without having to worry
>whether we have now reached the threshold where it becomes
>justified to require an additional library.
>
>Personally I consider this library to be part of core elisp
>libraries, and wish it were autoloaded like, say `subr'.  I am
>not the only one with that opinion and some other package is
>bound to load this very small library anyways, so we might as
>well benefit from the goodies that it provides too.
>
> The remaining two new commits (4,5) I have already submitted earlier
> in a separate thread.  Unfortunately they did not get merged or even
> just discussed so far, so I am including them here again.

Series looks good (also patch 35/36 (*)). It was easy to review, although
took time to browse through all small changes. Marked ready using 
*-notmuch::needs-review in notmuch show buffer. 

I have been using the series for couple of days now (and sending this
email having the changes in use) -- it feels like this starts faster
than previously but that must be just a feeling.

Tomi

(*) I would even suggest "the best thing", but then it would need more
discussion...

>
>  Cheers,
>  Jonas
>
> Jonas Bernoulli (36):
>   emacs: use setq instead of set
>   emacs: sanitize dedicated widget action/notify functions
>   emacs: define new notmuch-search-item widget type
>   emacs: notmuch-start-notmuch: remove backward compatibility code
>   emacs: notmuch-start-notmuch-error-sentinel: assert buffer is alive
>   emacs: notmuch-start-notmuch-sentinel: assert buffer is alive
>   emacs: notmuch-start-notmuch: avoid storing process buffer twice
>   emacs: avoid passing around some redundant information
>   emacs: avoid killing process buffer when process is still alive
>   emacs: make headings outline-minor-mode compatible
>   emacs: use lexical-bindings in all libraries
>   emacs: deal with unused lexical arguments and variables
>   emacs: notmuch-tag--get-formats: silence byte-compiler
>   emacs: inline notmuch-sexp-eof into only caller
>   emacs: notmuch-wash-region-to-button: remove unused MSG argument
>   emacs: silence compiler wrt notmuch-show-insert-part-text/plain
>   emacs: define notmuch-message-queued-tag-changes as buffer-local
>   emacs: notmuch-message-apply-queued-tag-changes: cosmetics
>   emacs: notmuch-wash.el: require diff-mode at beginning of code
>   emacs: notmuch-mua-prompt-for-sender: don't force Ido on users
>   emacs: notmuch-mua.el: move all options into "Options" section
>   emacs: notmuch-crypto-status-button-type: fix potential bug
> 1 emacs: various cosmetic improvements
>   emacs: various comment improvements
>   emacs: various doc-string improvements
>   emacs: remove variable notmuch-search-disjunctive-regexp
>   emacs: define a few variables as automatically buffer-local
>   emacs: notmuch-search-stash-thread-id: use notmuch-search-query-string
>   emacs: reorder notmuch.el a bit
>   emacs: avoid unnecessary let-bindings
> 2 emacs: improve how cl-lib and pcase are required
> 3 emacs: make subr-x available in all libraries
>   emacs: use string-empty-p
>   emacs: notmuch-tree-get-match: No longer define as command
> 4 emacs: allow opting out of notmuch's address completion
> 5 emacs: notmuch-address-expand-name: use the actual initial-input
>
>  emacs/coolj.el   |  14 +-
>  emacs/make-deps.el   |   2 +-
>  emacs/notmuch-address.el | 103 +++---
>  emacs/notmuch-company.el |   3 -
>  emacs/notmuch-compat.el  |   4 +-
>  emacs/notmuch-crypto.el  |  14 +-
>  emacs/notmuch-draft.el   |  27 +++-
>  emacs/notmuch-hello.el   | 229 +++---
>  emacs/notmuch-jump.el|  18 +--
>  emacs/notmuch-lib.el | 199 +-
>  emacs/notmuch-maildir-fcc.el | 114 +++
>  emacs/notmuch-message.el |  25 ++--
>  emacs/notmuch-mua.el | 124 +
>  emacs/notmuch-parser.el  |  22 ++-
>  emacs/notmuch-print.el   |  16 ++-
>  emacs/notmuch-query.el   |  21 ++-
>  emacs/notmuch-show.el| 130 ++---
>  emacs/notmuch-tag.el | 103 --
>  emacs/notmuch-tree.el|  61 
>  emacs/notmuch-wash.el|  54 
>  emacs/notmuch.el | 261 ++-
>  emacs/rstdoc.el  |   2 +-
>  test/test-lib.el |   4 +-
>  23 files changed, 813 insertions(+), 737 deletions(-)
>
> -- 
> 2.29.1
> ___
> 

[PATCH v2 00/36] [emacs] Add outline headings and switch to lexical scope

2021-01-10 Thread Jonas Bernoulli
This fixes a minor whitespace bug that Tomi notices in (1).

This also adds for commits, two of them in response to a concern
raised by Tomi, who didn't "see enough point for requiring subr-x
just [for string-empty-p]", which I agree with:

2) Changes how `cl-lib' and `pcase' are required.  I did that first
   because I want to do it the same way as for `subr-x'.

3) Require `subr-x', so that we can use it without having to worry
   whether we have now reached the threshold where it becomes
   justified to require an additional library.

   Personally I consider this library to be part of core elisp
   libraries, and wish it were autoloaded like, say `subr'.  I am
   not the only one with that opinion and some other package is
   bound to load this very small library anyways, so we might as
   well benefit from the goodies that it provides too.

The remaining two new commits (4,5) I have already submitted earlier
in a separate thread.  Unfortunately they did not get merged or even
just discussed so far, so I am including them here again.

 Cheers,
 Jonas

Jonas Bernoulli (36):
  emacs: use setq instead of set
  emacs: sanitize dedicated widget action/notify functions
  emacs: define new notmuch-search-item widget type
  emacs: notmuch-start-notmuch: remove backward compatibility code
  emacs: notmuch-start-notmuch-error-sentinel: assert buffer is alive
  emacs: notmuch-start-notmuch-sentinel: assert buffer is alive
  emacs: notmuch-start-notmuch: avoid storing process buffer twice
  emacs: avoid passing around some redundant information
  emacs: avoid killing process buffer when process is still alive
  emacs: make headings outline-minor-mode compatible
  emacs: use lexical-bindings in all libraries
  emacs: deal with unused lexical arguments and variables
  emacs: notmuch-tag--get-formats: silence byte-compiler
  emacs: inline notmuch-sexp-eof into only caller
  emacs: notmuch-wash-region-to-button: remove unused MSG argument
  emacs: silence compiler wrt notmuch-show-insert-part-text/plain
  emacs: define notmuch-message-queued-tag-changes as buffer-local
  emacs: notmuch-message-apply-queued-tag-changes: cosmetics
  emacs: notmuch-wash.el: require diff-mode at beginning of code
  emacs: notmuch-mua-prompt-for-sender: don't force Ido on users
  emacs: notmuch-mua.el: move all options into "Options" section
  emacs: notmuch-crypto-status-button-type: fix potential bug
1 emacs: various cosmetic improvements
  emacs: various comment improvements
  emacs: various doc-string improvements
  emacs: remove variable notmuch-search-disjunctive-regexp
  emacs: define a few variables as automatically buffer-local
  emacs: notmuch-search-stash-thread-id: use notmuch-search-query-string
  emacs: reorder notmuch.el a bit
  emacs: avoid unnecessary let-bindings
2 emacs: improve how cl-lib and pcase are required
3 emacs: make subr-x available in all libraries
  emacs: use string-empty-p
  emacs: notmuch-tree-get-match: No longer define as command
4 emacs: allow opting out of notmuch's address completion
5 emacs: notmuch-address-expand-name: use the actual initial-input

 emacs/coolj.el   |  14 +-
 emacs/make-deps.el   |   2 +-
 emacs/notmuch-address.el | 103 +++---
 emacs/notmuch-company.el |   3 -
 emacs/notmuch-compat.el  |   4 +-
 emacs/notmuch-crypto.el  |  14 +-
 emacs/notmuch-draft.el   |  27 +++-
 emacs/notmuch-hello.el   | 229 +++---
 emacs/notmuch-jump.el|  18 +--
 emacs/notmuch-lib.el | 199 +-
 emacs/notmuch-maildir-fcc.el | 114 +++
 emacs/notmuch-message.el |  25 ++--
 emacs/notmuch-mua.el | 124 +
 emacs/notmuch-parser.el  |  22 ++-
 emacs/notmuch-print.el   |  16 ++-
 emacs/notmuch-query.el   |  21 ++-
 emacs/notmuch-show.el| 130 ++---
 emacs/notmuch-tag.el | 103 --
 emacs/notmuch-tree.el|  61 
 emacs/notmuch-wash.el|  54 
 emacs/notmuch.el | 261 ++-
 emacs/rstdoc.el  |   2 +-
 test/test-lib.el |   4 +-
 23 files changed, 813 insertions(+), 737 deletions(-)

-- 
2.29.1
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org