Django 6.0.1 release notes

January 6, 2026

Django 6.0.1 fixes one data loss bug introduced in Django 5.2 as well as several other bugs in Django 6.0.

Bugfixes

  • Fixed a bug in Django 5.2 where data exceeding max_length was silently truncated by QuerySet.bulk_create() on PostgreSQL (#33647).

  • Fixed a regression in Django 6.0 where querystring mishandled multi-value QueryDict keys, both by only preserving the last value and by incorrectly handling None values (#36783).

  • Fixed a regression in Django 6.0 that prevented changing the name of a ManyToManyField from taking effect when applying migrations (#36800).

  • Fixed a bug where management command colorized help (introduced in Python 3.14) ignored the --no-color option and the DJANGO_COLORS setting (#36376).

  • Fixed a regression in Django 6.0 that caused bulk_create() to crash when introspecting the connection on SQLite (#36818).

  • Fixed a visual regression in Django 6.0 for admin form fields grouped under a <fieldset> in Safari (#36807).

  • Fixed a crash in Django 6.0 caused by infinite recursion when calling repr() on an unevaluated django.utils.csp.LazyNonce instance (#36810).

  • Fixed a regression in Django 6.0 where path() routes defined using gettext_lazy() failed to resolve correctly (#36796).

  • Fixed a regression in Django 6.0 where the Widget.use_fieldset attribute of ClearableFileInput was flipped from False to True (#36829).

  • Reverted an undocumented optimization in Django 6.0 that modified permission name and codename values when renaming models via a migration. This change could affect unrelated Permission objects (#36843) and did not report conflicts (#36793).