As the title states I’ve just released https://pypi.org/project/django-model-revisioning/
The intention of the application is similar to that of django-reversion, although it differs by being compatible with django migrations (django-reversion is not since it serializes data).
django-model-reversioning uses an metaclass (inheriting from django.db.models.base.ModelBase
) to create a revisioned model of the model you want to revision. This means that the django migration framework treats the revisioned model the same way and thus creates migrations for it as well!
I’ve dug a lot around in the internal workings of models in django, although I’m unsure if I’m doing stuff all wrong.
So if you have any feedback to the approach, it is highly appreciated