IIRC, adding the header made some different mail software behave correctly. The history should be on Meta somewhere.
I’ve had a quick look. It seems that this is the genesis of the List-Post header: Emails are not threaded in Outlook 2013 - #5 by codinghorror
I’m not sure that it was fully thought through or that it was relevant to the problem being solved there (but again I’m still learning here myself).
Looks correct to me. What’s incorrect is mail software that ignores the Reply-To
address … it’d be like you introducing yourself to me as Jonathan, but no, I insist on calling you Edward instead.
It sounds like Thunderbird uses the List-Post header for “Reply to List”, and the From header for “Reply” (ignoring Reply-To, which here is the same as List-Post). This makes some sense on some potential settings of a mailing list (e.g. the Reply-To might have been set by the mailing list rather than the original sender) as it would allow “Reply to List” to go to the list and “Reply” to go to the original sender (where otherwise it would also go to the list).
The absence of List-Post should remove the “Reply to List” button (Thunderbird 3 for users - Mozilla | MDN).
I guess that without the “Reply to List” option, the “Reply” button would send email to the address in the Reply-To header as expected.
I’ve got two related questions:
- Why does Discourse use the List-Post header (as you only ever want an email to go to the Reply-To address)?
- Does Thunderbird respect Reply-To when List-Post is not set?
Good question! In my installation I didn’t check the mailing list feature, but now all post where send as mailinglist (with List-Post Header). In my opinion is this a bug.
Yes, before this change (discourse/lib/email/sender.rb at 8da9a3f82f341c081b340d0c0be3358eb0f2d348 · discourse/discourse · GitHub) mail doesn’t have List-Post Header and I could answer to disourse with reply-to function.
Unfortunately, that extension no longer works in the latest version of Mozilla Thunderbird. Is there a more up-to-date version of that extension?
I don’t know. I don’t use Thunderbird and only came across it as I was researching the issue.
I’m attempting to get into contact with the Thunderbird team. They should be able to offer further assistance and determine if this really is an issue with their software or not.
Thank you for trying to get their attention! I hope that other people get involved too.
Good news! I finally received a response!
Oh fantastic! I hope they really did change it recently! Thank you for following up.
Would an alternative be for Discourse to stop using List-Post (and continue just to use Reply-To)?
(I think List-Post was added blindly/irrelevantly while solving another problem and caused this problem.)
Well, there’s only one way to find out!
I ran into this problem and after some digging found that the culprit for Thunderbird’s behaviour is the ‘mail.override_list_reply_to’ configuration variable. At least in recent versions of TB it ships with a default boolean value of True. Setting this variable to False allows a simple reply to respect the value Discourse sets in the ‘Reply-to’ header. You can test this by accessing the Config editor from the Thunderbird preferences menu and searching for the ‘mail.override_list_reply_to’ variable and toggling the value False.
I don’t think it is practical to ask all users to change their Thunderbird configuration, but referring to this variable might be helpful in talks with Mozilla about this issue.
Update: seems like TB actually introduced this since release 52.4.0
And this is the bug report where someone decided this was a good idea.
Yes, it seems to be a combination of that and Discourse’s unnecessary use of the List-Post header.
Was also struggling with this behavior and found out, that they might actually have put some thinking into it, when implementing it in Thunderbird: Thunderbird:Help Documentation:Mail-Followup-To and Mail-Reply-To - MozillaWiki
- If you reply-to-author and Mail-Reply-To is set in the original message, Thunderbird uses it instead of Reply-To or From. This works since Thunderbird-1.5.
The difference I found explained at Mail Headers (GNU Emacs Manual) :
‘Mail-Reply-To’: This field takes precedence over ‘Reply-To’. It is used because some mailing lists set the ‘Reply-To’ field for their own purposes (a somewhat controversial practice).
Now I tried injecting this header via “email custom headers”, but unfortunately reply_key does not get expanded properly. Am I doing something wrong?
Mail-Reply-To: sender-name+%{reply_key}@domain.net
It isn’t a bug? It was a change that was implemented on purpose?
The underlying problem is that Discourse unnecessarily sets the List-Post header, which makes Thunderbird think it’s a mailing list, which affects the replying options presented by Thunderbird.
Discourse started to use List-Post almost by accident. It was added when fixing another problem, but wasn’t necessary to solve that other problem, and at the same time caused this problem.
Filed a but for this: Reply-key variable doesn't get expanded in email custom headers
What would you suggest we do to solve the initial problem instead of using List-Post
headers?