Merge lp:~ricardokirkner/django-adminaudit/going-south into lp:django-adminaudit

Proposed by Ricardo Kirkner
Status: Merged
Approved by: Natalia Bidart
Approved revision: 55
Merged at revision: 51
Proposed branch: lp:~ricardokirkner/django-adminaudit/going-south
Merge into: lp:django-adminaudit
Diff against target: 225 lines (+104/-58)
4 files modified
adminaudit/migrations/0001_initial.py (+44/-0)
django_project/settings.py (+1/-0)
setup.py (+17/-25)
tox.ini (+42/-33)
To merge this branch: bzr merge lp:~ricardokirkner/django-adminaudit/going-south
Reviewer Review Type Date Requested Status
Matias Bordese (community) Approve
Review via email: mp+168145@code.launchpad.net

Commit message

start using south to track database migrations

Description of the change

Start using south to track database migrations.

To post a comment you must log in.
54. By Ricardo Kirkner

remove params unsupported by distutils

55. By Ricardo Kirkner

add south as a dep for tox

Revision history for this message
Matias Bordese (matiasb) wrote :

LGTM

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'adminaudit/migrations'
2=== added file 'adminaudit/migrations/0001_initial.py'
3--- adminaudit/migrations/0001_initial.py 1970-01-01 00:00:00 +0000
4+++ adminaudit/migrations/0001_initial.py 2013-06-07 18:58:23 +0000
5@@ -0,0 +1,44 @@
6+# -*- coding: utf-8 -*-
7+import datetime
8+from south.db import db
9+from south.v2 import SchemaMigration
10+from django.db import models
11+
12+
13+class Migration(SchemaMigration):
14+
15+ def forwards(self, orm):
16+ # Adding model 'AuditLog'
17+ db.create_table(u'adminaudit_auditlog', (
18+ (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
19+ ('username', self.gf('django.db.models.fields.CharField')(max_length=255)),
20+ ('user_id', self.gf('django.db.models.fields.IntegerField')()),
21+ ('model', self.gf('django.db.models.fields.CharField')(max_length=255)),
22+ ('change', self.gf('django.db.models.fields.CharField')(max_length=100)),
23+ ('representation', self.gf('django.db.models.fields.CharField')(max_length=255)),
24+ ('values', self.gf('django.db.models.fields.TextField')()),
25+ ('created_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)),
26+ ))
27+ db.send_create_signal(u'adminaudit', ['AuditLog'])
28+
29+
30+ def backwards(self, orm):
31+ # Deleting model 'AuditLog'
32+ db.delete_table(u'adminaudit_auditlog')
33+
34+
35+ models = {
36+ u'adminaudit.auditlog': {
37+ 'Meta': {'object_name': 'AuditLog'},
38+ 'change': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
39+ 'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
40+ u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
41+ 'model': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
42+ 'representation': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
43+ 'user_id': ('django.db.models.fields.IntegerField', [], {}),
44+ 'username': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
45+ 'values': ('django.db.models.fields.TextField', [], {})
46+ }
47+ }
48+
49+ complete_apps = ['adminaudit']
50\ No newline at end of file
51
52=== added file 'adminaudit/migrations/__init__.py'
53=== modified file 'django_project/settings.py'
54--- django_project/settings.py 2012-01-20 14:19:52 +0000
55+++ django_project/settings.py 2013-06-07 18:58:23 +0000
56@@ -87,6 +87,7 @@
57 'django.contrib.sites',
58 'adminaudit',
59 'django.contrib.admin',
60+ 'south',
61
62 'example_app',
63 )
64
65=== modified file 'setup.py'
66--- setup.py 2012-05-28 12:07:07 +0000
67+++ setup.py 2013-06-07 18:58:23 +0000
68@@ -3,7 +3,6 @@
69 # Copyright 2010-2012 Canonical Ltd. This software is licensed under the
70 # GNU Library General Public License version 3 (see the file LICENSE).
71 import os
72-import sys
73
74 from distutils.core import setup, Command
75
76@@ -17,33 +16,33 @@
77 def finalize_options(self):
78 pass
79
80- def _get_test_runner(self):
81- from django.test import simple
82- if hasattr(simple, 'run_tests'):
83- return simple
84- else:
85- # Handle Django 1.4
86- from django.test.utils import get_runner
87- from django.conf import settings
88- return get_runner(settings)()
89-
90 def run(self):
91 """Run the project tests."""
92 os.environ['DJANGO_SETTINGS_MODULE'] = 'django_project.settings'
93
94- runner = self._get_test_runner()
95- failed = runner.run_tests(['adminaudit'])
96- if failed:
97- sys.exit(1)
98+ from django.core.management import call_command
99+ call_command('test', 'adminaudit')
100
101
102 setup(
103+ # metadata
104 name='django-adminaudit',
105- version='0.3.3',
106+ version='0.3.4',
107 description="Extends Django's admin logging capabilities",
108 url='https://launchpad.net/django-adminaudit',
109 author='Łukasz Czyżykowski',
110 author_email='lukasz.czyzykowski@canonical.com',
111+ license='LGPLv3',
112+ classifiers=[
113+ 'Framework :: Django',
114+ 'License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)',
115+ 'Programming Language :: Python :: 2.6',
116+ 'Programming Language :: Python :: 2.7',
117+ 'Topic :: Software Development :: Libraries',
118+ 'Topic :: Software Development :: Libraries :: Python Modules',
119+ ],
120+
121+ # content
122 packages=[
123 'adminaudit',
124 'adminaudit.management',
125@@ -56,14 +55,7 @@
126 'templates/adminaudit/*.txt',
127 ],
128 },
129- license='LGPLv3',
130+
131+ # tests
132 cmdclass={'test': TestCommand},
133- classifiers=[
134- 'Framework :: Django',
135- 'License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)',
136- 'Programming Language :: Python :: 2.6',
137- 'Programming Language :: Python :: 2.7',
138- 'Topic :: Software Development :: Libraries',
139- 'Topic :: Software Development :: Libraries :: Python Modules',
140- ],
141 )
142
143=== modified file 'tox.ini'
144--- tox.ini 2012-01-20 13:55:09 +0000
145+++ tox.ini 2013-06-07 18:58:23 +0000
146@@ -1,36 +1,45 @@
147 [tox]
148-envlist = py2.6-django1.1.4, py2.6-django1.2.7, py2.6-django1.3.1, py2.6-django1.4-alpha-1, py2.7-django1.1.4, py2.7-django1.2.7, py2.7-django1.3.1, py2.7-django1.4-alpha-1
149+envlist = py2.6-django1.3.7, py2.6-django1.4.5, py2.6-django1.5.1,
150+ py2.7-django1.3.7, py2.7-django1.4.5, py2.7-django1.5.1
151+
152 [testenv]
153 commands = python setup.py test
154-[testenv:py2.6-django1.1.4]
155-basepython = python2.6
156-deps = Django==1.1.4
157- mock
158-[testenv:py2.6-django1.2.7]
159-basepython = python2.6
160-deps = Django==1.2.7
161- mock
162-[testenv:py2.6-django1.3.1]
163-basepython = python2.6
164-deps = Django==1.3.1
165- mock
166-[testenv:py2.6-django1.4-alpha-1]
167-basepython = python2.6
168-deps = http://www.djangoproject.com/download/1.4-alpha-1/tarball/
169- mock
170-[testenv:py2.7-django1.1.4]
171-basepython = python2.7
172-deps = Django==1.1.4
173- mock
174-[testenv:py2.7-django1.2.7]
175-basepython = python2.7
176-deps = Django==1.2.7
177- mock
178-[testenv:py2.7-django1.3.1]
179-basepython = python2.7
180-deps = Django==1.3.1
181- mock
182-[testenv:py2.7-django1.4-alpha-1]
183-basepython = python2.7
184-deps = http://www.djangoproject.com/download/1.4-alpha-1/tarball/
185- mock
186\ No newline at end of file
187+deps =
188+ mock
189+ south
190+
191+[testenv:py2.6-django1.3.7]
192+basepython = python2.6
193+deps =
194+ Django==1.3.7
195+ {[testenv]deps}
196+
197+[testenv:py2.6-django1.4.5]
198+basepython = python2.6
199+deps =
200+ Django==1.4.5
201+ {[testenv]deps}
202+
203+[testenv:py2.6-django1.5.1]
204+basepython = python2.6
205+deps =
206+ Django==1.5.1
207+ {[testenv]deps}
208+
209+[testenv:py2.7-django1.3.7]
210+basepython = python2.7
211+deps =
212+ Django==1.3.7
213+ {[testenv]deps}
214+
215+[testenv:py2.7-django1.4.5]
216+basepython = python2.7
217+deps =
218+ Django==1.4.5
219+ {[testenv]deps}
220+
221+[testenv:py2.7-django1.5.1]
222+basepython = python2.7
223+deps =
224+ Django==1.5.1
225+ {[testenv]deps}

Subscribers

People subscribed via source and target branches