Upgrading to version 3
Version 3.0.0 introduces breaking changes. Please review the migration guide below before upgrading. If you’re new to django-auditlog, you can ignore this part.
The major change in the version is that we’re finally storing changes as json instead of json-text. To convert the existing records, this version has a database migration that does just that. However, this migration will take a long time if you have a huge amount of records, causing your database and application to be out of sync until the migration is complete.
To avoid this, follow these steps:
Before upgrading the package, add these two variables to
settings.py
:AUDITLOG_TWO_STEP_MIGRATION = True
AUDITLOG_USE_TEXT_CHANGES_IF_JSON_IS_NOT_PRESENT = True
Upgrade the package. Your app will now start storing new records as JSON, but the old records will accessible via
LogEntry.changes_text
.Use the newly added
auditlogmigratejson
command to migrate your records. Rundjango-admin auditlogmigratejson --help
to get more information.Once all records are migrated, remove the variables listed above, or set their values to
False
.