===========================
Django 1.11.1 release notes
===========================
*Under development*
Django 1.11.1 fixes several bugs in 1.11.
Bugfixes
========
* Made migrations respect ``Index``’s ``name`` argument. If you created a
named index with Django 1.11, ``makemigrations`` will create a migration to
recreate the index with the correct name (:ticket:`28051`).
* Fixed a crash when using a ``__icontains`` lookup on a ``ArrayField``
(:ticket:`28038`).
* Fixed a crash when using a two-tuple in ``EmailMessage``’s ``attachments``
argument (:ticket:`28042`).
* Fixed ``QuerySet.filter()`` crash when it references the name of a
``OneToOneField`` primary key (:ticket:`28047`).
* Fixed empty POST data table appearing instead of "No POST data" in HTML debug
page (:ticket:`28079`).
* Restored ``BoundField``\s without any ``choices`` evaluating to ``True``
(:ticket:`28058`).
* Prevented ``SessionBase.cycle_key()`` from losing session data if
``_session_cache`` isn't populated (:ticket:`28066`).
* Fixed layout of ``ReadOnlyPasswordHashWidget`` (used in the admin's user
change page) (:ticket:`28097`).
* Allowed prefetch calls on managers with custom ``ModelIterable`` subclasses
(:ticket:`28096`).
* Fixed change password link in the ``contrib.auth`` admin for ``el``,
``es_MX``, and ``pt`` translations (:ticket:`28100`).
* Restored the output of the ``class`` attribute in the ``
`` of widgets
that use the ``multiple_input.html`` template. This fixes
``ModelAdmin.radio_fields`` with ``admin.HORIZONTAL`` (:ticket:`28059`).
* Fixed crash in ``BaseGeometryWidget.subwidgets()`` (:ticket:`28039`).
* Fixed exception reraising in ORM query execution when ``cursor.execute()``
fails and the subsequent ``cursor.close()`` also fails (:ticket:`28091`).
* Fixed a regression where ``CheckboxSelectMultiple``, ``NullBooleanSelect``,
``RadioSelect``, ``SelectMultiple``, and ``Select`` localized option values
(:ticket:`28075`).
* Corrected the stack level of unordered queryset pagination warnings
(:ticket:`28109`).
* Fixed a regression causing incorrect queries for ``__in`` subquery lookups
when models use ``ForeignKey.to_field`` (:ticket:`28101`).
* Fixed crash when overriding the template of
``django.views.static.directory_index()`` (:ticket:`28122`).
* Fixed a regression in formset ``min_num`` validation with unchanged forms
that have initial data (:ticket:`28130`).
* Prepared for ``cx_Oracle`` 6.0 support (:ticket:`28138`).
* Updated the ``contrib.postgres`` ``SplitArrayWidget`` to use template-based
widget rendering (:ticket:`28040`).
* Fixed crash in ``BaseGeometryWidget.get_context()`` when overriding existing
``attrs`` (:ticket:`28105`).
* Prevented ``AddIndex`` and ``RemoveIndex`` from mutating model state
(:ticket:`28043`).
* Prevented migrations from dropping database indexes from ``Meta.indexes``
when changing ``Field.db_index`` to ``False`` (:ticket:`28052`).
* Fixed a regression in choice ordering in form fields with grouped and
non-grouped options (:ticket:`28157`).
* Fixed crash in ``BaseInlineFormSet._construct_form()`` when using
``save_as_new`` (:ticket:`28159`).
* Fixed a regression where ``Model._state.db`` wasn't set correctly on
multi-table inheritance parent models after saving a child model
(:ticket:`28166`).
* Corrected the return type of ``ArrayField(CITextField())`` values retrieved
from the database (:ticket:`28161`).
* Fixed ``QuerySet.prefetch_related()`` crash when fetching relations in nested
``Prefetch`` objects (:ticket:`27554`).
* Prevented hiding GDAL errors if it's not installed when using ``contrib.gis``
(:ticket:`28160`). (It's a required dependency as of Django 1.11.)