113 lines
4.3 KiB
Plaintext
113 lines
4.3 KiB
Plaintext
===========================
|
||
Django 1.11.1 release notes
|
||
===========================
|
||
|
||
*May 6, 2017*
|
||
|
||
Django 1.11.1 adds a minor feature and fixes several bugs in 1.11.
|
||
|
||
Allowed disabling server-side cursors on PostgreSQL
|
||
===================================================
|
||
|
||
The change in Django 1.11 to make :meth:`.QuerySet.iterator()` use server-side
|
||
cursors on PostgreSQL prevents running Django with `pgBouncer` in transaction
|
||
pooling mode. To reallow that, use the :setting:`DISABLE_SERVER_SIDE_CURSORS
|
||
<DATABASE-DISABLE_SERVER_SIDE_CURSORS>` setting in :setting:`DATABASES`.
|
||
|
||
See :ref:`transaction-pooling-server-side-cursors` for more discussion.
|
||
|
||
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 ``<ul>`` 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.)
|
||
|
||
* Fixed a regression causing ``__in`` lookups on a foreign key to fail when
|
||
using the foreign key's parent model as the lookup value (:ticket:`28175`).
|