New features
- Postmark: Support Postmark's new message delivery event in Anymail normalized tracking webhook. (Update your Postmark config to enable the new event. See docs.)
- Handle virtually all uses of Django lazy translation strings as EmailMessage properties. (In earlier releases, these could sometimes lead to obscure exceptions or unexpected behavior with some ESPs. See #34.)
Other changes
- [possibly-breaking] Fix a long-standing bug validating email addresses. If an address has a display name containing a comma or parentheses, RFC-5322 requires double-quotes around the display name (
'"Widgets, Inc." <widgets@example.com>'
). Anymail now raises a newAnymailInvalidAddress
error for misquoted display names and other malformed addresses. (Previously, it silently truncated the address, leading to obscure exceptions or unexpected behavior. See #44.) In general, it's safest to always use double-quotes around all display names. - Mandrill: Simplify and document two-phase process for setting up Mandrill webhooks. (docs)