• 3.1
  • 3.2
  • 5.0
  • Версия документации: 6.1

Примечания к выпуску 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 находится в части OPTIONS DATABASES. Схема именования, существовавшая до версии 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).

Back to Top