Atomic transaction aware signals for Django 1.6+
Don’t Use This Library
This library uses django-atomic-signals. Unfortunately that library is deprecated, and is a bit too hacky. There is plenty of extra description why on django-atomic-signals’ README, and also on the similar library django-transaction-signals, by Django core developer Aymeric.
If you want a supported method of executing a signal dispatch only when the current transaction commits, then:
- on Django >= 1.9, use the built-in on_commit hook
- on Django < 1.9, use django-transaction-hooks (the original source of 1.9’s on_commit)
Both give examples so you are in good hands. In most cases you will just need to use a regular signal and make its send() happen inside a lambda that is passed to on_commit.
If your project is still using this library, please migrate. You will need to remove django-atomic-signals as well as django-atomic-dispatch.
The current version of django-atomic-dispatch, 2.0.0, simply errors upon import, directing you here.