Django 1.8.6 release notes

November 4, 2015

Django 1.8.6 adds official support for Python 3.5 and fixes several bugs in 1.8.5.

Bugfixes

  • Fixed a regression causing ModelChoiceField to ignore prefetch_related() on its queryset (#%s25496).
  • Allowed “mode=memory” in SQLite test database name if supported (#%s12118).
  • Fixed system check crash on ForeignKey to abstract model (#%s25503).
  • Fixed incorrect queries when you have multiple ManyToManyFields on different models that have the same field name, point to the same model, and have their reverse relations disabled (#%s25545).
  • Allowed filtering over a RawSQL annotation (#%s25506).
  • Made the Concat database function idempotent on SQLite (#%s25517).
  • Avoided a confusing stack trace when starting runserver with an invalid INSTALLED_APPS setting (#%s25510). This regression appeared in 1.8.5 as a side effect of fixing #%s24704.
  • Made deferred models use their proxied model’s _meta.apps for caching and retrieval (#%s25563). This prevents any models generated in data migrations using QuerySet.defer() from leaking to test and application code.
  • Fixed a typo in the name of the strictly_above PostGIS lookup (#%s25592).
  • Fixed crash with contrib.postgres.forms.SplitArrayField and IntegerField on invalid value (#%s25597).
  • Added a helpful error message when Django and South migrations exist in the same directory (#%s25618).
  • Fixed a regression in URLValidator that allowed URLs with consecutive dots in the domain section (like http://example..com/) to pass (#%s25620).
  • Fixed a crash with GenericRelation and BaseModelAdmin.to_field_allowed (#%s25622).