Django-anymail

Latest version: v12.0

Safety actively analyzes 682404 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 7 of 10

1.2.1

Not secure
------

*2018-02-02*

Security
~~~~~~~~

* Fix a **moderate severity** security issue affecting Anymail v0.2–v1.2:
prevent timing attack on WEBHOOK_AUTHORIZATION secret.
(`CVE-2018-6596 <https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6596>`__)

*More information*

If you are using Anymail's tracking webhooks, you should upgrade to this release,
and you may want to rotate to a new WEBHOOK_AUTHORIZATION shared secret (see
`docs <https://anymail.dev/en/stable/tips/securing_webhooks/#use-a-shared-authorization-secret>`__).
You should definitely change your webhook auth if your logs indicate attempted exploit.

(If you are only sending email using an Anymail EmailBackend, and have not set up
Anymail's event tracking webhooks, this issue does not affect you.)

Anymail's webhook validation was vulnerable to a timing attack. A remote attacker
could use this to obtain your WEBHOOK_AUTHORIZATION shared secret, potentially allowing
them to post fabricated or malicious email tracking events to your app.

There have not been any reports of attempted exploit. (The vulnerability was discovered
through code review.) Attempts would be visible in HTTP logs as a very large number of
400 responses on Anymail's webhook urls (by default "/anymail/*esp_name*/tracking/"),
and in Python error monitoring as a very large number of
AnymailWebhookValidationFailure exceptions.

1.2

Not secure
----

*2017-11-02*

Features
~~~~~~~~

* **Postmark:** Support new click webhook in normalized tracking events

1.1

Not secure
----

*2017-10-28*

Fixes
~~~~~

* **Mailgun:** Support metadata in opened/clicked/unsubscribed tracking webhooks,
and fix potential problems if metadata keys collided with Mailgun event parameter
names. (See `76`_, `77`_)

Other
~~~~~

* Rework Anymail's ParsedEmail class and rename to EmailAddress to align it with
similar functionality in the Python 3.6 email package, in preparation for future
inbound support. ParsedEmail was not documented for use outside Anymail's internals
(so this change does not bump the semver major version), but if you were using
it in an undocumented way you will need to update your code.

1.0

Not secure
----

*2017-09-18*

It's official: Anymail is no longer "pre-1.0." The API has been stable
for many months, and there's no reason not to use Anymail in production.

Breaking changes
~~~~~~~~~~~~~~~~

* There are no *new* breaking changes in the 1.0 release, but a breaking change
introduced several months ago in v0.8 is now strictly enforced. If you still have
an EMAIL_BACKEND setting that looks like
"anymail.backends.*espname*.\ *EspName*\ Backend", you'll need to change it to just
"anymail.backends.*espname*.EmailBackend". (Earlier versions had issued a
DeprecationWarning. See the `v0.8`_ release notes.)

Features
~~~~~~~~

* Clean up and document Anymail's
`Test EmailBackend <https://anymail.dev/en/stable/tips/test_backend/>`__
* Add notes on
`handling transient ESP errors <https://anymail.dev/en/stable/tips/transient_errors/>`__
and improving
`batch send performance <https://anymail.dev/en/stable/tips/performance/>`__
* **SendGrid:** handle Python 2 `long` integers in metadata and extra headers

1.0.rc0

--------

*2017-09-09*

Breaking changes
~~~~~~~~~~~~~~~~

* **All backends:** The old *EspName*\ Backend names that were deprecated in v0.8 have
been removed. Attempting to use the old names will now fail, rather than issue a
DeprecationWarning. See the `v0.8`_ release notes.

Features
~~~~~~~~

* Anymail's Test EmailBackend is now
`documented <https://anymail.dev/en/stable/tips/test_backend/>`__
(and cleaned up)

0.11.1

Not secure
-------

*2017-07-24*

Fixes
~~~~~

* **Mailjet:** Correct settings docs.

Page 7 of 10

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.