Примечания к выпуску Django 4.2.2¶
5 июня 2023 г.
В Django 4.2.2 исправлено несколько ошибок, допущенных в 4.2.1.
Исправления¶
- Исправлена регрессия в Django 4.2, приводившая к ненужной обертке
DBMS_LOB.SUBSTR()в поиске__isnullи__exact=NoneдляTextField()/BinaryField()на Oracle (#34544). - Восстановлен, после регрессии в Django 4.2, вызов
get_prep_value()в подклассахJSONField(#34539). - Исправлена регрессия в Django 4.2, приводившая к аварийному завершению работы
QuerySet.defer()при передаче ссылкиManyToManyFieldилиGenericForeignKey. Хотя это запрещено, в старой версии (#34570) это было разрешено. - В Django 4.2 исправлена регрессия, приводившая к аварийному завершению работы
QuerySet.only()при передаче обратной ссылкиOneToOneField(#34612). - В Django 4.2 исправлена ошибка, при которой
makemigrations --updateне соблюдалась опция--name(#34568). - Исправлено падение производительности в Django 4.2 при компиляции запросов без упорядочивания (#34580).
- Исправлена ошибка в Django 4.2, когда на странице «Поздравляем!» (#34588) ссылалась несуществующая таблица стилей.
- Исправлена регрессия в Django 4.2, приводившая к аварийному завершению работы
QuerySet.aggregate()с выражениями, ссылающимися на другие агрегаты (#34551). - Исправлена регрессия в Django 4.2, приводившая к аварийному завершению работы
QuerySet.aggregate()с агрегатами, ссылающимися на подзапросы (#34551). - В Django 4.2 исправлена регрессия, приводившая к аварийному завершению работы кверисетов на SQLite при фильтрации по
DecimalFieldпротив значений, выходящих за пределы заданного диапазона (#34590). - В Django 4.2 исправлена регрессия, приводившая к сбою сериализации
ManyToManyFieldбез естественного ключа, когда в егоManagerв основеQuerySetиспользовалсяselect_related()(#34620).