Should South be used to rename files and/or instances of a keyword in code?
In a scale of one to madness, I think it's a terrible idea. Your version control system would commit suicide as soon as you tried to update the code further since your VCS would only have the old values while your migration would change the existing files.
I think it's reasonable to have the migration rename uploaded files, but not source files.
Why treat this any different from any other change to your source? Why put this particular source change in a migration? This is madness :)
I recently found out that, during my coding, I inadvertently named one of the Models of a Django app as a subtly mispelled version of an English word. This was not too long ago, but now there are exactly 300 occurrences of the same mispelled word across models, views, tests and my old grandmother's last will and testament.
I'll surely use South to handle the changes in the models, but what about filenames and other changes in the code? Should I have the forward() migration change everything, including finding-replacing all instances of the word and renaming a couple of files?
In a scale of one to madness, how bad is this idea?