Django Evolution 0.7.7
Release date: May 25, 2017
New Features
Added a note about backing up the database and not cancelling before executing an evolution.
The confirmation prompt for executing an evolution now suggests backing up the database first. This is only shown in interactive mode.
After the user has confirmed, they’re told it may take time and to not cancel the upgrade.
Added more output when performing evolutions for apps.
When evolving the database, a message is now outputted to the console for each app being evolved. This gives a sense of progress for larger evolutions.
If the evolution fails, an error message will be shown listing the app that failed evolution, the specific SQL statement that failed, and the database error. This can help when diagnosing and recovering from the problem.
Added an option for writing hinted evolution files.
There’s now an
evolve -w
/--write
option that can be used withevolve --hint
that writes the hinted evolution to the appropriate directories in the tree. This takes the name that should be used for the evolution file.This will not update the
evolutions/__init__.py
file.
Bug Fixes
Fixed issues with evolution optimizations when renaming models.
Django Evolution’s evolution optimization code had issues when applying a series of evolutions that add a
ForeignKey
field to a newly-introduced model that is then renamed in the same batch. The resulting field would still point to the original model, resulting in aKeyError
.
Contributors
Christian Hammond