Django 4.2.2 release notes¶
June 5, 2023
Django 4.2.2 fixes several bugs in 4.2.1.
Bugfixes¶
- Fixed a regression in Django 4.2 that caused an unnecessary
DBMS_LOB.SUBSTR()
wrapping in the__isnull
and__exact=None
lookups forTextField()
/BinaryField()
on Oracle (#34544). - Restored, following a regression in Django 4.2,
get_prep_value()
call inJSONField
subclasses (#34539). - Fixed a regression in Django 4.2 that caused a crash of
QuerySet.defer()
when passing aManyToManyField
orGenericForeignKey
reference. While doing so is a no-op, it was allowed in older version (#34570). - Fixed a regression in Django 4.2 that caused a crash of
QuerySet.only()
when passing a reverseOneToOneField
reference (#34612). - Fixed a bug in Django 4.2 where
makemigrations --update
didn’t respect the--name
option (#34568). - Fixed a performance regression in Django 4.2 when compiling queries without ordering (#34580).
- Fixed a regression in Django 4.2 where nonexistent stylesheet was linked on a “Congratulations!” page (#34588).
- Fixed a regression in Django 4.2 that caused a crash of
QuerySet.aggregate()
with expressions referencing other aggregates (#34551). - Fixed a regression in Django 4.2 that caused a crash of
QuerySet.aggregate()
with aggregates referencing subqueries (#34551). - Fixed a regression in Django 4.2 that caused a crash of querysets on SQLite
when filtering on
DecimalField
against values outside of the defined range (#34590). - Fixed a regression in Django 4.2 that caused a serialization crash on a
ManyToManyField
without a natural key when itsManager
’s baseQuerySet
usedselect_related()
(#34620).