Re: [PATCH] lib: consider all instances of Delivered-To header

2021-06-23 Thread Hannu Hartikainen
On Wed, 23 Jun 2021 12:58:33 +0200, Michael J Gruber  wrote:
> Is an address from a received header (still) preferred over one from a
> delivered-to, or does the order of headers in the mail envelope play a
> role?

In my understanding the From: address is looked up in the following
steps (each step may have their own internal priorizing logic):

1. To, Cc, Bcc, Reply-To, From
2. Envelope-To
3. X-Original-To
4. Delivered-To
5. Received (for)
6. Received (by)
7. configured primary address

Obviously the patch doesn't touch this logic; it only affects the
handling of multiple Delivered-To headers.

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


Re: [PATCH] lib: consider all instances of Delivered-To header

2021-06-23 Thread Michael J Gruber
Hannu Hartikainen venit, vidit, dixit 2021-06-23 12:29:06:
> When using notmuch-reply and guessing the From: address from
> Delivered-To headers, I had the wrong address chosen today. This was
> because the messages from the notmuch list contain these headers in this
> order:
> 
> Delivered-To: hannu.hartikai...@gmail.com
> ...
> Delivered-To: ha...@hrtk.in
> 
> In my .notmuch-config I have the following configuration:
> 
> primary_email=ha...@hrtk.in
> other_email=hannu.hartikai...@gmail.com;...
> 
> Before this change, notmuch-reply would guess From: @gmail.com because
> that is the first Delivered-To header present. After the change, the
> primary address is chosen as I would expect.
> ---
>  lib/message-file.c | 12 
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/message-file.c b/lib/message-file.c
> index 647ccf3a..7e8ea09c 100644
> --- a/lib/message-file.c
> +++ b/lib/message-file.c
> @@ -291,11 +291,15 @@ _notmuch_message_file_get_header 
> (notmuch_message_file_t *message,
>  if (value)
> return value;
>  
> -if (strcasecmp (header, "received") == 0) {
> +if (strcasecmp (header, "received") == 0 ||
> +strcasecmp (header, "delivered-to") == 0) {
> /*
> -* The Received: header is special. We concatenate all
> -* instances of the header as we use this when analyzing the
> -* path the mail has taken from sender to recipient.
> +* The Received: header is special. We concatenate all instances of 
> the
> +* header as we use this when analyzing the path the mail has taken
> +* from sender to recipient.
> +*
> +* Similarly, multiple instances of Delivered-To may be present. We
> +* concatenate them so the one with highest priority may be picked.
>  */
> decoded = _notmuch_message_file_get_combined_header (message, header);
>  } else {
> -- 
> 2.32.0

Without looking at the surrounding code I'm wondering:

Is an address from a received header (still) preferred over one from a
delivered-to, or does the order of headers in the mail envelope play a
role?

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


[PATCH] lib: consider all instances of Delivered-To header

2021-06-23 Thread Hannu Hartikainen
When using notmuch-reply and guessing the From: address from
Delivered-To headers, I had the wrong address chosen today. This was
because the messages from the notmuch list contain these headers in this
order:

Delivered-To: hannu.hartikai...@gmail.com
...
Delivered-To: ha...@hrtk.in

In my .notmuch-config I have the following configuration:

primary_email=ha...@hrtk.in
other_email=hannu.hartikai...@gmail.com;...

Before this change, notmuch-reply would guess From: @gmail.com because
that is the first Delivered-To header present. After the change, the
primary address is chosen as I would expect.
---
 lib/message-file.c | 12 
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/lib/message-file.c b/lib/message-file.c
index 647ccf3a..7e8ea09c 100644
--- a/lib/message-file.c
+++ b/lib/message-file.c
@@ -291,11 +291,15 @@ _notmuch_message_file_get_header (notmuch_message_file_t 
*message,
 if (value)
return value;
 
-if (strcasecmp (header, "received") == 0) {
+if (strcasecmp (header, "received") == 0 ||
+strcasecmp (header, "delivered-to") == 0) {
/*
-* The Received: header is special. We concatenate all
-* instances of the header as we use this when analyzing the
-* path the mail has taken from sender to recipient.
+* The Received: header is special. We concatenate all instances of the
+* header as we use this when analyzing the path the mail has taken
+* from sender to recipient.
+*
+* Similarly, multiple instances of Delivered-To may be present. We
+* concatenate them so the one with highest priority may be picked.
 */
decoded = _notmuch_message_file_get_combined_header (message, header);
 } else {
-- 
2.32.0
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org


Re: [PATCH] emacs: Add compatibility for org-msg.el

2021-06-23 Thread David Edmondson
On Tuesday, 2021-06-22 at 17:48:50 -04, Ori wrote:

> See https://github.com/jeremy-compostella/org-msg/issues/53

It would be nice to have an inline description of the change, as the
github repository might disappear at some point, but the fix looks
reasonable.

Reviewed-by: David Edmondson 

> ---
>  NEWS | 2 ++
>  emacs/notmuch-company.el | 3 ++-
>  2 files changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/NEWS b/NEWS
> index 09456f60..c167c9a2 100644
> --- a/NEWS
> +++ b/NEWS
> @@ -8,6 +8,8 @@ Emacs
>  previous behaviour of using notmuch to send mail by default, customize
>  `mail-user-agent` to `notmuch-user-agent`.
>  
> +`notmuch-company` now works in `org-msg`.
> +
>  Vim
>  ---
>  
> diff --git a/emacs/notmuch-company.el b/emacs/notmuch-company.el
> index c6a004ae..7e05dc8f 100644
> --- a/emacs/notmuch-company.el
> +++ b/emacs/notmuch-company.el
> @@ -70,7 +70,8 @@
>   (completion-ignore-case t))
>  (cl-case command
>(interactive (company-begin-backend 'notmuch-company))
> -  (prefix (and (derived-mode-p 'message-mode)
> +  (prefix (and (or (derived-mode-p 'message-mode)
> +(derived-mode-p 'org-msg-edit-mode))
>  (looking-back
>   (concat notmuch-address-completion-headers-regexp ".*")
>   (line-beginning-position))
> -- 
> 2.25.1
> ___
> notmuch mailing list -- notmuch@notmuchmail.org
> To unsubscribe send an email to notmuch-le...@notmuchmail.org

dme.
-- 
There's someone in my head but it's not me.
___
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-le...@notmuchmail.org