Примечания к выпуску 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).
Вернуться на верх