Version 2.2.X seems to introduce quite a lot of (possibly non-compatible) changes, so keep that for later.
django-autocomplete-light supports Django 1.8 starting from version 2.1.1: https://github.com/yourlabs/django-autocomplete-light/blob/master/CHANGELOG
Version 2.2.X seems to introduce quite a lot of (possibly non-compatible) changes, so keep that for later.
Versions 0.4+ seem to introduce some API changes, so keep that for later.
django-netfields supports Django 1.8 from version 0.3.1: https://github.com/jimfunk/django-postgresql-netfields/blob/master/CHANGELOG
Versions 0.4+ seem to introduce some API changes, so keep that for later.
Changes in Django itself that could affect us:
* https://docs.djangoproject.com/en/1.8/releases/1.8/#default-emailfield-max-length-increased-to-254
* https://docs.djangoproject.com/en/1.8/releases/1.8/#related-object-operations-are-run-in-a-transaction
* https://docs.djangoproject.com/en/1.8/releases/1.8/#abstractuser-last-login-allows-null-values
There is an issue with Django 1.8.7, when applying migrations from an empty database (traceback below).
It seems related to an existing migration, in which we moved the "comment" field from VPNConfiguration to Configuration. See coin/configuration/migrations/0003_configuration_comment.py and coin/vpn/migrations/0002_remove_vpnconfiguration_comment.py.
$ ./manage.py migrate
Operations to perform:
Synchronize unmigrated apps: coin, staticfiles, messages, autocomplete_light, activelink, ldapdb, polymorphic
Apply all migrations: simple_dsl, vpn, billing, sessions, admin, sites, auth, reverse_dns, contenttypes, offers, isp_database, members, configuration, resources
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
Running migrations:
Rendering model states...Traceback (most recent call last):
File "./manage.py", line 10, in
execute_from_command_line(sys.argv)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute_from_command_line
utility.execute()
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/__init__.py", line 346, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/base.py", line 394, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/base.py", line 445, in execute
output = self.handle(*args, **options)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 222, in handle
executor.migrate(targets, plan, fake=fake, fake_initial=fake_initial)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/executor.py", line 104, in migrate
state = migration.mutate_state(state, preserve=do_run)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/migration.py", line 83, in mutate_state
operation.state_forwards(self.app_label, new_state)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/operations/models.py", line 53, in state_forwards
list(self.managers),
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 81, in add_model
self.reload_model(app_label, model_name)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 152, in reload_model
self.apps.render_multiple(states_to_be_rendered)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 262, in render_multiple
model.render(self)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 546, in render
body,
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/models/base.py", line 254, in __new__
'base class %r' % (field.name, name, base.__name__)
django.core.exceptions.FieldError: Local field u'comment' in class 'VPNConfiguration' clashes with field of similar name from base class 'Configuration'
There is an issue with Django 1.8.7, when applying migrations from an empty database (traceback below).
It seems related to an existing migration, in which we moved the "comment" field from VPNConfiguration to Configuration. See `coin/configuration/migrations/0003_configuration_comment.py` and `coin/vpn/migrations/0002_remove_vpnconfiguration_comment.py`.
Relevant Django bug report: https://code.djangoproject.com/ticket/21890
<pre>
$ ./manage.py migrate
Operations to perform:
Synchronize unmigrated apps: coin, staticfiles, messages, autocomplete_light, activelink, ldapdb, polymorphic
Apply all migrations: simple_dsl, vpn, billing, sessions, admin, sites, auth, reverse_dns, contenttypes, offers, isp_database, members, configuration, resources
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
Running migrations:
Rendering model states...Traceback (most recent call last):
File "./manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/__init__.py", line 354, in execute_from_command_line
utility.execute()
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/__init__.py", line 346, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/base.py", line 394, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/base.py", line 445, in execute
output = self.handle(*args, **options)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 222, in handle
executor.migrate(targets, plan, fake=fake, fake_initial=fake_initial)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/executor.py", line 104, in migrate
state = migration.mutate_state(state, preserve=do_run)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/migration.py", line 83, in mutate_state
operation.state_forwards(self.app_label, new_state)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/operations/models.py", line 53, in state_forwards
list(self.managers),
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 81, in add_model
self.reload_model(app_label, model_name)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 152, in reload_model
self.apps.render_multiple(states_to_be_rendered)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 262, in render_multiple
model.render(self)
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/migrations/state.py", line 546, in render
body,
File "/home/zorun/tmp/venv2-coin/lib/python2.7/site-packages/django/db/models/base.py", line 254, in __new__
'base class %r' % (field.name, name, base.__name__)
django.core.exceptions.FieldError: Local field u'comment' in class 'VPNConfiguration' clashes with field of similar name from base class 'Configuration'
</pre>
https://www.illyse.org/issues/236
django-autocomplete-light supports Django 1.8 starting from version 2.1.1: https://github.com/yourlabs/django-autocomplete-light/blob/master/CHANGELOG
Version 2.2.X seems to introduce quite a lot of (possibly non-compatible) changes, so keep that for later.
django-netfields supports Django 1.8 from version 0.3.1: https://github.com/jimfunk/django-postgresql-netfields/blob/master/CHANGELOG
Versions 0.4+ seem to introduce some API changes, so keep that for later.
Django-polymorphic should be updated to 0.7.2: https://django-polymorphic.readthedocs.org/en/latest/changelog.html
Django-sendfile should be updated to 0.3.10: https://github.com/johnsensible/django-sendfile/commits/master
Django-ldapdb should be upgraded to 0.4.0: https://github.com/jlaine/django-ldapdb/issues/79
Changes in Django itself that could affect us:
There is an issue with Django 1.8.7, when applying migrations from an empty database (traceback below).
It seems related to an existing migration, in which we moved the "comment" field from VPNConfiguration to Configuration. See
coin/configuration/migrations/0003_configuration_comment.py
andcoin/vpn/migrations/0002_remove_vpnconfiguration_comment.py
.Relevant Django bug report: https://code.djangoproject.com/ticket/21890
With Django 1.7.11, the same situation (applying all migrations on an empty database) works fine.
Django 1.7 is no longer supported since December 2015: https://www.djangoproject.com/download/#supported-versions