.. _1-0-release-notes: ========= South 1.0 ========= This is the last major release of South, as migrations have been `rolled into Django itself `_ as part of the 1.7 release, and my efforts are now concentrated there. South will continue to receive security updates but no feature updates will be provided. An upgrade path is provided for those moving from South to the new-style migrations; more details are available `in the Django documentation `_. The migrations framework in 1.7 is based on South but with significant design and stability improvements that were only possible after modifying Django itself; the result is a world-class schema migration system. I'd like to thank all the contributors to South over the years for their work in helping me keep everything together, and all the South users for making a small side project I started in 2007 (eight years ago at the time of writing) into one of the most popular Django apps of all time. Backwards incompatible changes ============================== None (it would be a really nasty time to introduce these) Library migration path ====================== As part of providing a migration path for authors of third-party apps and libraries for Django, South will now first look for migrations in the ``south_migrations`` directory, and then fall back to the ``migrations`` directory if this is not found. This is intended to alleviate the namespace clash between South and Django migrations; prior to this, both were looking for a directory called ``migrations``, and so it was impossible to ship a third-party app with support for both South and Django 1.7. The recommendation is that you move your South migrations into the ``south_migrations`` directory (existing users will not notice the change if they upgrade South first), and then start a new set of Django 1.7 migrations in a ``migrations`` directory (the default). If your users are stubborn and refuse to upgrade South, they may instead change the ``SOUTH_MIGRATION_MODULES`` setting for your app to point to the new ``south_migrations`` directory. This does obviously entail keeping two sets of migrations around, but the two systems have some fundamental differences that mean it was impossible to have one solution that would work across both codebases. At the end of the day, this allows you to interact with each migrations system on its own level, rather than some third abstraction layer that would probably be the worst of both worlds.