Примечания к выпуску Django 1.11.5

5 сентября 2017

Django 1.11.5 исправляет проблему безопасности и несколько ошибок в 1.11.4.

CVE-2017-12794: Возможный XSS в разделе трассировки отладочной страницы Technical 500

В старых версиях автозавершение HTML было отключено в части шаблона для отладочной страницы Technical 500. При удачном стечении обстоятельств это позволяло провести межсайтовую скриптинг-атаку. Эта уязвимость не должна повлиять на большинство производственных сайтов, поскольку вы не должны использовать DEBUG = True (что делает эту страницу доступной) в производственных настройках.

Исправления

  • Исправлен разбор версии GEOS, если версия имеет хэш фиксации в конце (новое в GEOS 3.6.2) (#28441).
  • Добавлена совместимость с cx_Oracle 6 (#28498).
  • Исправлено отображение виджета выбора, когда значения опций являются кортежами (#28502).
  • Django 1.11 непреднамеренно изменил схему именования последовательностей и триггеров в Oracle. Это вызывает ошибки при INSERT для некоторых таблиц, если 'use_returning_into': False находится в OPTIONS части DATABASES. Теперь восстановлена схема именования, существовавшая до версии 1.11. К сожалению, это обязательно требует обновления таблиц Oracle, созданных в Django 1.11.[1-4]. Используйте скрипт обновления в комментарии 8 в #28451, чтобы обновить имена последовательностей и триггеров для использования схемы именования, существовавшей до версии 1.11.
  • Добавлена поддержка POST-запросов в LogoutView, для эквивалентности с основанным на функциях представлением logout() (#28513).
  • Пропущено pages_per_range из BrinIndex.deconstruct(), если это None (#25809).
  • Исправлена ошибка, при которой SelectDateWidget локализовывал годы в поле выбора (#28530).
  • Исправлена регрессия в версии 1.11.4, когда runserver при использовании системных кодировок не-Unicode на Python 2 + Windows (#28487) происходил сбой.
  • Исправлена регрессия в Django 1.10, когда изменения ManyToManyField не регистрировались в истории изменений администратора (#27998) и не позволяли ManyToManyField начальным данным в формах модели быть затронутыми последующими изменениями модели (#28543).
  • Исправлены недетерминированные результаты или сбой AssertionError в некоторых запросах с множественными соединениями (#26522).
  • Исправлена регрессия в представлениях contrib.auth login() и logout(), когда они игнорировали позиционные аргументы (#28550).
Вернуться на верх