new_contents: 
  from south.db import db
  from django.db import models
  from mysite.search.models import *
  
  class Migration:
      no_dry_run = True
      
      def forwards(self, orm):
          "Write your forwards migration here"
          number_found = 0
          for project in orm.Project.objects.all():
              if project.name == 'Python':
                  print "Changing a project:", project
                  project.name = 'Python (project)'
                  project.save()
                  number_found += 1
          print "Total changed:", number_found
      
      def backwards(self, orm):
          "Write your backwards migration here"
      
      
      models = {
          'search.bug': {
              'bize_size_tag_name': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
              'canonical_bug_link': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
              'concerns_just_documentation': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
              'date_reported': ('django.db.models.fields.DateTimeField', [], {}),
              'description': ('django.db.models.fields.TextField', [], {}),
              'good_for_newcomers': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
              'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
              'importance': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
              'last_polled': ('django.db.models.fields.DateTimeField', [], {}),
              'last_touched': ('django.db.models.fields.DateTimeField', [], {}),
              'looks_closed': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
              'people_involved': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
              'project': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['search.Project']"}),
              'status': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
              'submitter_realname': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True'}),
              'submitter_username': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
              'title': ('django.db.models.fields.CharField', [], {'max_length': '200'})
          },
          'search.hitcountcache': {
              'hashed_query': ('django.db.models.fields.CharField', [], {'max_length': '40', 'primary_key': 'True'}),
              'hit_count': ('django.db.models.fields.IntegerField', [], {})
          },
          'search.project': {
              'date_icon_was_fetched_from_ohloh': ('django.db.models.fields.DateTimeField', [], {'default': 'None', 'null': 'True'}),
              'icon_for_profile': ('django.db.models.fields.files.ImageField', [], {'default': 'None', 'max_length': '100', 'null': 'True'}),
              'icon_for_search_result': ('django.db.models.fields.files.ImageField', [], {'default': 'None', 'max_length': '100', 'null': 'True'}),
              'icon_raw': ('django.db.models.fields.files.ImageField', [], {'default': 'None', 'max_length': '100', 'null': 'True'}),
              'icon_smaller_for_badge': ('django.db.models.fields.files.ImageField', [], {'default': 'None', 'max_length': '100', 'null': 'True'}),
              'icon_url': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
              'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
              'language': ('django.db.models.fields.CharField', [], {'max_length': '200'}),
              'logo_contains_name': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
              'name': ('django.db.models.fields.CharField', [], {'max_length': '200', 'unique': 'True'})
          }
      }
      
      complete_apps = ['search']
  
subject: Add a migration to cause Python to rename itself.