On the Options -> Preferences screen, there's an option called "From When Replying" that now has 4 options:
- Best Personality
- Best Personality (no Bcc)
- Always Original
- Always default folder/main
This perference controls what Personality/From address is used when you Reply or Reply All to an email. It does not control what happens when you Forward an email, or just compose a new email. In those two cases, it's much simpler. We use the personality attached to the current folder you're in, or if none is set, the default personality.
For the Reply/Reply All case, the algorithm can be quite complex, but a general overview is as follows.
In the email you're replying to, we look at all the To/Cc addresses in the email. We also look at the X-Delivered-to header and any "for <xyz>" sections present in any Received headers. Using those email addresses, we see if any personality matches the email address and full name, or if not, if any personality matches the email address alone.
If multiple personalities use the same email address/full name combination, or same email address, we prefer the default personality first, and the personality of the folder second over any other conflicting personalities. If there's no matches, we look again for plus addressing and subdomain addressing matches (see below). If multiple personalities match, we prefer the folder personality first if it was one of the matches, the default personality second if it was one of the matches, and any personality where both name and email address matched over ones where the email address matched alone.
Plus addressing and subdomain address matches work as follows. If there's firstname.lastname@example.org present as a To address, and there's a personality with the email address email@example.com, we consider that a match. If it's a plus addressing or subdomain match, then rather than using the matching personality explicitly, we instead set a custom From address to the given matched email address, and then set the Save Sent items option, Signature option, and Bcc field to the same as the matched personalities values.
This is the default value, and works for most people in most cases.
Best Personality (no Bcc)
Similer to Best Personality, but we ignore any X-Delivered-to or "for <xyz>" in Received headers. This avoids ever matching a personality if you were only bcc'd to a particular address that would have been the only personality match, we fall back to the folder/default personality instead.
This can be useful for people that use forwarding systems to forward to FastMail. When forwarding occurs, the X-Delivered-to address is always the email address you set at the forwarding service to send the email to at fastmail. In most cases you never want to consider that address as a candidate for a personality match.
Always use the email address present in the X-Delivered-to header or "for <xyz>" in Received headers, even if no personality matches. One exception, don't use the address if it's not in the To/Cc fields. We never want to expose Bcc'd addresses unless their explicitly visible in the To/Cc fields.
This can be useful for people that have their own domain, and use many different addresses at that domain for different systems (eg you signup at flickr with firstname.lastname@example.org, at paypal with email@example.com, etc). In that case, you probably don't want to
setup a personality for every system you signup to, but if you do reply to an email from such a system, you want to use the From address the email was sent to.
Always default folder/main
Don't match any of the To/Cc/X-Delivered-to/" for <xyz>" fields for personalities, instead always use the folder personality if present, or the default personality otherwise. This is the same as forwarding or composing a new email.
Sometimes the above algorithms are all too complex and smart, and you just want to use the default personality in most cases, except for certain folders, where you want to use an explicit personality. This gives you that control without the complex matching and guessing attempts.