Примечания к выпуску Django 2.2.1¶
Май 1, 2019
Django 2.2.1 исправляет несколько ошибок в версии 2.2.
Исправления¶
- Исправлена регрессия в Django 2.1, которая приводила к неправильному цитированию пароля пользователя базы данных при использовании
dbshell
на Oracle (#30307). - Добавлена совместимость с
psycopg2
2.8 (#30331). - Исправлена регрессия в Django 2.2, которая приводила к сбою при загрузке шаблона для отладочной страницы Technical 500 (#30324).
- Исправлено падение аргумента
ordering
вArrayAgg
иStringAgg
, когда он содержит выражение с параметрами (#30332). - Исправлена регрессия в Django 2.2, из-за которой при быстром удалении одного экземпляра первичный ключ не устанавливался в значение
None
(#30330). - Предотвращена возможность
makemigrations
генерировать бесконечные миграции для проверочных ограничений и частичных индексов, когдаcondition
содержит объектrange
(#30350). - Исправлена оптимизация в Django 2.2 (#29725), которая вызывала непоследовательное поведение
count()
иexists()
в обратных отношениях «многие ко многим» с пользовательским менеджером (#30325). - Исправлена регрессия в Django 2.2, когда
Paginator
аварийно завершается, еслиobject_list
является кверисетом, упорядоченным или агрегированным над вложеннымJSONField
ключевым преобразованием (#30335). - Исправлена регрессия в Django 2.2, при которой
IntegerField
валидация границ базы данных аварийно завершалась, еслиlimit_value
атрибут в пользовательском валидаторе является вызываемым (#30328). - Исправлена ошибка в Django 2.2, когда
SearchVector
генерировал SQL, который не является индексируемым (#30385). - Исправлена регрессия в Django 2.2, которая приводила к возникновению исключения, когда пользовательский обработчик ошибок не мог быть импортирован (#30318).
- Ослаблена системная проверка, добавленная в Django 2.2 для зависимостей приложения администратора, чтобы разрешить использование подклассов
SessionMiddleware
, а не требовать, чтобыdjango.contrib.sessions
был вINSTALLED_APPS
(#30312). - Увеличили таймаут по умолчанию при использовании
Watchman
до 5 секунд, чтобы предотвратить возврат кStatReloader
в больших проектах, и сделали его настраиваемым с помощью переменной окруженияDJANGO_WATCHMAN_TIMEOUT
(#30361). - Исправлена регрессия в Django 2.2, которая приводила к сбою при миграции разрешений для прокси-моделей, если целевые разрешения уже существовали. Например, когда разрешение было создано вручную или модель была перенесена из concrete в proxy (#30351).
- Исправлена регрессия в Django 2.2, которая приводила к сбою
runserver
, когда модули URLConf вызывали исключения (#30323). - Исправлена регрессия в Django 2.2, когда изменения ненадежно определялись автозагрузчиком при использовании
StatReloader
(#30323). - Исправлена ошибка миграции на Oracle и PostgreSQL при добавлении проверочного ограничения с поиском
contains
,startswith
илиendswith
(или их вариант без учета регистра) (#30408). - Исправлена ошибка миграции на Oracle и SQLite при добавлении проверочного ограничения с
condition
содержит|
(OR
) оператор (#30412).