wiki:ReleaseNotes/0.6

Version 8 (modified by andrew, 5 years ago) (diff)

--

South 0.6

This is the 0.6 release of South, which is mostly full of architectural changes and fixes for a few bad design decisions. Nevertheless, there are also a few end-user changes.

You might want to ''Download South 0.6''

Major changes in this release:

  • Introspection of models is now the default behaviour, falling back to parsing for unknown custom fields. This allows South to work with dynamically-created models. Please see the information on dynamic custom fields if your project uses custom fields.
  • South commands should now run perceivably faster on large projects, mostly thanks to some great patches and ideas from Juan and Simon at Akoha.
  • The verbosity of South commands has changed to omit printing the SQL it runs by default; you can re-enable it by passing --verbosity=2.
  • There is a new convert_to_south command, for one-shot conversion of a pre-existing application to use South.
  • Fields are now stored in a full path format, rather than as they are imported in models.py; this should allow for better future-proofing.

Minor changes include:

  • Full compatibility with Django 1.1, including unmanaged and proxy models
  • The start of better SQLite support, including rename_column
  • Improved PyODBC support
  • A new --stdout option to startmigration, to allow migration files to be previewed.
  • Working with migrations that reference apps that have since been removed
  • All Django monkeypatching and internals fiddling moved into a separate module.
  • New pre_migrate and post_migrate signals

There have also been many bugfixes for various edge cases or odd fields; for the full lowdown, we invite you to read through the commit history, or see the list of closed tickets.

Known issues:

  • The automigrator will not correctly detect alterations of normal columns into ForeignKeys? and vice-versa; you will need to add a db.rename_column command into both methods of the generated migration.