Django-mailer

Latest version: v2.3.1

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

Scan your dependencies

Page 2 of 3

2.0

----------------

* Django 3.0 support
* Dropped support for old Django versions (before 1.11)
* Changed DB ``priority`` field to an integer, instead of text field container an integer
* Multi-process safety for sending emails via database row-level locking.

Previously, there was a file-system based lock to ensure that multiple
processes were not attempting to send the mail queue, to stop multiple sending
of the same email. However, this mechanism only works if all processes that
might be attempting to do this are on the same machine with access to the same
file-system.

Now, in addition to this file lock, we use transactions and row-level locking
in the database when attempting to send a message, which guarantees that only
one process can send the message. In addition, for databases that support
``NOWAIT`` with ``SELECT FOR UPDATE``, such as PostgreSQL, if multiple
processes attempt to send the mail queue at the same time, the work should be
distributed between them (rather than being done by only one process).

A negative consequence is that **SQLite support is degraded**: due to the way
it implements locking and our use of transactions when sending the email
queue, you can get exceptions in other processes that are trying to add items
to the queue. Use of SQLite with django-mailer is **not recommended**.

* ``retry_deferred`` command has also been updated to be simpler and work
correctly for multiple processes.

* Dropped some backwards compat support for Django < 1.8. If you are upgrading
from a version of Django before 1.8, you should install a version of
django-mailer < 2.0, do ``send_all`` to flush the queue, then upgrade
django-mailer to 2.0 or later.

1.2.6

------------------

* Official Django 2.1 and 2.2 support.
* Don't close DB connection in management commands.
This is unnecessary with modern Django.

1.2.5

-----

* Fixed packaging file permission problems.
* Added Japanese locale (thanks msk7777)

1.2.4

-----

* Django 2.0 support.

1.2.3

-----

* Fixed crasher with models ``__str__``

1.2.2

-----

* Django 1.10 support.
* Fixed reprs for Message and MessageLog.

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.