Django 1.8.5 release notes

October 3, 2015

Django 1.8.5 fixes several bugs in 1.8.4.

Bugfixes

  • Made the development server’s autoreload more robust (#24704).

  • Fixed AssertionError in some delete queries with a model containing a field that is both a foreign and primary key (#24951).

  • Fixed AssertionError in some complex queries (#24525).

  • Fixed a migrations crash with GenericForeignKey (#25040).

  • Made translation.override() clear the overridden language when a translation isn’t initially active (#25295).

  • Fixed crash when using a value in ModelAdmin.list_display that clashed with a reverse field on the model (#25299).

  • Fixed autocompletion for options of non-argparse management commands (#25372).

  • Alphabetized ordering of imports in from django.db import migrations, models statement in newly created migrations (#25384).

  • Fixed migrations crash on MySQL when adding a text or a blob field with an unhashable default (#25393).

  • Changed Count queries to execute COUNT(*) instead of COUNT('*') as versions of Django before 1.8 did (#25377). This may fix a performance regression on some databases.

  • Fixed custom queryset chaining with values() and values_list() (#20625).

  • Moved the unsaved model instance assignment data loss check on reverse relations to Model.save() (#25160).

  • Readded inline foreign keys to form instances when validating model formsets (#25431).

  • Allowed using ORM write methods after disabling autocommit with set_autocommit(False) (#24921).

  • Fixed the manage.py test --keepdb option on Oracle (#25421).

  • Fixed incorrect queries with multiple many-to-many fields on a model with the same ‘to’ model and with related_name set to ‘+’ (#24505, #25486).

  • Fixed pickling a SimpleLazyObject wrapping a model (#25389).