Django 5.2.1 release notes¶
Expected May 7, 2025
Django 5.2.1 fixes several bugs in 5.2.
Bugfixes¶
- Fixed a regression in Django 5.2 that caused a crash when annotating aggregate expressions over query that uses explicit grouping by transforms followed by field references (#36292).
- Fixed a regression in Django 5.2 that caused unnecessary queries when prefetching nullable foreign key relationships (#36290).
- Fixed a regression in Django 5.2 that caused a crash of
QuerySet.bulk_create()with nullable geometry fields on PostGIS (#36289). - Fixed a regression in Django 5.2 that caused fields to be incorrectly
selected when using
QuerySet.alias()aftervalues()(#36299). - Fixed a data corruption possibility in
file_move_safe()whenallow_overwrite=True, where leftover content from a previously larger file could remain after overwriting with a smaller one due to lack of truncation (#36298). - Fixed a regression in Django 5.2 that caused a crash when using
QuerySet.select_for_update(of=(…))withvalues()/values_list()including expressions (#36301). - Fixed a regression in Django 5.2 that caused improper values to be returned
from
QuerySet.values_list()when duplicate field names were specified (#36288). - Fixed a regression in Django 5.2 where the password validation error message
from
MinimumLengthValidatorwas not translated when using non-English locales (#36314). - Fixed a regression in Django 5.2 that caused the
object-toolsblock to be rendered twice when using custom admin templates with overridden blocks due to changes in the base admin page block structure (#36331). - Fixed a regression in Django 5.2, introduced when fixing CVE-2025-26699,
where the
wordwraptemplate filter did not preserve empty lines between paragraphs after wrapping text (#36341).