Примечания к выпуску Django 1.11.5¶
5 сентября 2017 г.
Django 1.11.5 исправляет проблему безопасности и несколько ошибок в версии 1.11.4.
CVE-2017-12794: возможен XSS в разделе трассировки на странице отладки технической 500.¶
В более старых версиях автоматическое экранирование HTML было отключено в части шаблона технической страницы отладки 500. При определенных обстоятельствах это позволило провести атаку с использованием межсайтовых сценариев. Эта уязвимость не должна затрагивать большинство производственных сайтов, поскольку в производственных настройках не следует запускать DEBUG = True (что делает эту страницу доступной).
Исправления¶
Исправлен анализ версии GEOS, если в конце версии есть хеш фиксации (новое в GEOS 3.6.2) (#28441).
Добавлена совместимость с cx_Oracle 6 (#28498).
Исправлен рендеринг виджета выбора, когда значения параметров представляют собой кортежи (#28502).
Django 1.11 случайно изменил последовательность и схему именования триггеров в Oracle. Это вызывает ошибки при INSERT для некоторых таблиц, если
'use_returning_into': Falseнаходится в частиOPTIONSDATABASES. Схема именования, существовавшая до версии 1.11, теперь восстановлена. К сожалению, это обязательно требует обновления таблиц Oracle, созданных с помощью Django 1.11.[1-4]. Используйте сценарий обновления в #28451, комментарий 8, чтобы обновить последовательность и имена триггеров, чтобы использовать схему именования до версии 1.11.В LogoutView добавлена поддержка запросов POST для эквивалентности представлению 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).
Исправлена регрессия в представлениях
login()иlogout()contrib.auth``, где они игнорировали позиционные аргументы (#28550).