1. ===========================
    
  2. Django 1.11.3 release notes
    
  3. ===========================
    
  4. 
    
  5. *July 1, 2017*
    
  6. 
    
  7. Django 1.11.3 fixes several bugs in 1.11.2.
    
  8. 
    
  9. Bugfixes
    
  10. ========
    
  11. 
    
  12. * Removed an incorrect deprecation warning about a missing ``renderer``
    
  13.   argument if a ``Widget.render()`` method accepts ``**kwargs``
    
  14.   (:ticket:`28265`).
    
  15. 
    
  16. * Fixed a regression causing ``Model.__init__()`` to crash if a field has an
    
  17.   instance only descriptor (:ticket:`28269`).
    
  18. 
    
  19. * Fixed an incorrect ``DisallowedModelAdminLookup`` exception when using
    
  20.   a nested reverse relation in ``list_filter`` (:ticket:`28262`).
    
  21. 
    
  22. * Fixed admin's ``FieldListFilter.get_queryset()`` crash on invalid input
    
  23.   (:ticket:`28202`).
    
  24. 
    
  25. * Fixed invalid HTML for a required ``AdminFileWidget`` (:ticket:`28278`).
    
  26. 
    
  27. * Fixed model initialization to set the name of class-based model indexes
    
  28.   for models that only inherit ``models.Model`` (:ticket:`28282`).
    
  29. 
    
  30. * Fixed crash in admin's inlines when a model has an inherited non-editable
    
  31.   primary key (:ticket:`27967`).
    
  32. 
    
  33. * Fixed ``QuerySet.union()``, ``intersection()``, and ``difference()`` when
    
  34.   combining with an ``EmptyQuerySet`` (:ticket:`28293`).
    
  35. 
    
  36. * Prevented ``Paginator``’s unordered object list warning from evaluating a
    
  37.   ``QuerySet`` (:ticket:`28284`).
    
  38. 
    
  39. * Fixed the value of ``redirect_field_name`` in ``LoginView``’s template
    
  40.   context. It's now an empty string (as it is for the original function-based
    
  41.   ``login()`` view) if the corresponding parameter isn't sent in a request (in
    
  42.   particular, when the login page is accessed directly) (:ticket:`28229`).
    
  43. 
    
  44. * Prevented attribute values in the ``django/forms/widgets/attrs.html``
    
  45.   template from being localized so that numeric attributes (e.g. ``max`` and
    
  46.   ``min``) of ``NumberInput`` work correctly (:ticket:`28303`).
    
  47. 
    
  48. * Removed casting of the option value to a string in the template context of
    
  49.   the ``CheckboxSelectMultiple``, ``NullBooleanSelect``, ``RadioSelect``,
    
  50.   ``SelectMultiple``, and ``Select`` widgets (:ticket:`28176`). In Django
    
  51.   1.11.1, casting was added in Python to avoid localization of numeric values
    
  52.   in Django templates, but this made some use cases more difficult. Casting is
    
  53.   now done in the template using the ``|stringformat:'s'`` filter.
    
  54. 
    
  55. * Prevented a primary key alteration from adding a foreign key constraint if
    
  56.   ``db_constraint=False`` (:ticket:`28298`).
    
  57. 
    
  58. * Fixed ``UnboundLocalError`` crash in ``RenameField`` with nonexistent field
    
  59.   (:ticket:`28350`).
    
  60. 
    
  61. * Fixed a regression preventing a model field's ``limit_choices_to`` from being
    
  62.   evaluated when a ``ModelForm`` is instantiated (:ticket:`28345`).