South 0.4 Released

After far too many months of quiet feature development and bug fixing, we're happy to finally announce South 0.4, which has a whole host of new features to satiate your every migration need.

The list of new features alone really is quite long; you can see it at http://south.aeracode.org/wiki/ReleaseNotes/0.4, but I'll go through a few of them quickly:

Firstly, there's alter_column, which you just pass a new Field instance into and it will deal with changing the column type, nullity and default value for you. --add-field is also a new option to startmigration, which simplifies the common use case of adding one or more new fields as a migration.

Model inheritance and ManyToMany relationships are both now fully supported, and there's a glut of database support with MySQL being fully matured and SQLite almost there. Even SQL Server has a tiny amount of creation-only support.

So, go check it out, and let us know what you think. If you're in or near London, as well, come along to DJUGL; I'll be talking about South there.

Posted 12th January 2009 in Python, Django, and South, with 6 comments

comments

  1. James

    Wow! It looks great! I'm looking into it... I'm really happy there are some tutorials.

    I'll digg in the wiki for a while. :)

    Thanks Andrew!

  2. Lee

    South? Guys... no offense, but seriously, if you want your project to take off, give it a unique name that people can find when they google. Even if you make it up with pwgen, it'll be better than "south".

  3. Andrew Godwin

    Lee, I must point out that a lot of projects have non-unique names (see: Cairo, Kid, etc.).

    Also, if you google for "django south", guess what comes top.

  4. Alex

    Oops... Trac is still broken for me (I reported it yesterday in the "Panic Button" article).

    Trac detected an internal error: RuntimeError: instance.__dict__ not accessible in restricted mode

  5. Alex

    And like magic it's working again...

  6. Alex

    South also comes up top when you search for "migrations south", but not when you search for "django migrations".

    I'd prefer a name like "south" than "noemata" for example. "South" is also shorter than "Montgomery", and a name like "Pass" would be better suited to a test framework. Cabezón requires typing an accented character (which apparently many USA-ians find hard to do).

    Then again, "Kress" changed his playing style during his career so perhaps in keeping with the Django theme, call the migration system "Kress"?

    But I'm just wasting time that I could be spending programming :)


  7. (optional)