----
*2016-04-30*
Breaking changes
~~~~~~~~~~~~~~~~
* **Mailgun:** eliminate automatic JSON encoding of complex metadata values like lists
and dicts. (Was based on misreading of Mailgun docs; behavior now matches metadata
handling for all other ESPs.)
* **Mandrill:** remove obsolete wehook views and signal inherited from Djrill. See
`Djrill migration notes <https://anymail.dev/en/stable/esps/mandrill/#changes-to-webhooks>`__
if you were relying on that code.
Features
~~~~~~~~
* Add support for ESP event-tracking webhooks, including normalized
AnymailTrackingEvent.
(`docs <https://anymail.dev/en/stable/sending/tracking/>`__)
* Allow get_connection kwargs overrides of most settings for individual backend
instances. Can be useful for, e.g., working with multiple SendGrid subusers.
(`docs <https://anymail.dev/en/stable/installation/#anymail-settings-reference>`__)
* **SendGrid:** Add SENDGRID_GENERATE_MESSAGE_ID setting to control workarounds for
ensuring unique tracking ID on SendGrid messages/events (default enabled).
`docs <https://anymail.dev/en/stable/esps/sendgrid/#sendgrid-message-id>`__
* **SendGrid:** improve handling of 'filters' in esp_extra, making it easier to mix
custom SendGrid app filter settings with Anymail normalized message options.
Other
~~~~~
* Drop pre-Django 1.8 test code. (Wasn't being used, as Anymail requires Django 1.8+.)
* **Mandrill:** note limited support in docs (because integration tests no
longer available).