Release notes
Django 1.5 release notes
Backwards incompatible changes in 1.5
django.forms.ModelMultipleChoiceField now returns an empty QuerySet as the empty value instead of an empty list. int_to_base36() properly raises a TypeError instead of ValueError for non-integer inputs. The slugify template filter is now available as a standard Python function at django.utils.text.slugify().
Release notes
Django 1.5 release notes
Features deprecated in 1.5
The depth keyword argument in select_related() has been deprecated. You should use field names instead.
Release notes
Django 1.7 release notes
What’s new in Django 1.7
The new Prefetch object allows customizing prefetch operations. You can specify the QuerySet used to traverse a given relation or customize the storage location of prefetch results.
Release notes
Django 1.8.6 release notes
Fixed a regression causing ModelChoiceField to ignore prefetch_related() on its queryset (#25496). Allowed “mode=memory” in SQLite test database name if supported (#12118). Fixed system check crash on ForeignKey to abstract model (#25503).
Release notes
Django 2.0.4 release notes
Fixed a crash when filtering with an Exists() annotation of a queryset containing a single field (#29195). Fixed admin autocomplete widget’s translations for zh-hans and zh-hant languages (#29213). Corrected admin’s autocomplete widget to add a space after custom classes (#29221).
Release notes
Django 2.1.13 release notes
Fixed a crash when filtering with a Subquery() annotation of a queryset containing django.contrib.postgres.fields.JSONField or HStoreField (#30769).
Release notes
Django 2.1.15 release notes
Fixed a data loss possibility in the select_for_update(). When using 'self' in the of argument with multi-table inheritance, a parent model was locked instead of the queryset’s model (#30953).
Release notes
Django 2.2.11 release notes
Fixed a data loss possibility in the select_for_update(). When using related fields or parent link fields with Multi-table inheritance in the of argument, the corresponding models were not locked (#31246).
Release notes
Django 2.2.16 release notes
Fixed a data loss possibility in the select_for_update(). When using related fields pointing to a proxy model in the of argument, the corresponding model was not locked (#31866).
Release notes
Django 3.0.10 release notes
Fixed a data loss possibility in the select_for_update(). When using related fields pointing to a proxy model in the of argument, the corresponding model was not locked (#31866).
Release notes
Django 3.2.5 release notes
Fixed a regression in Django 3.2 that caused a crash of QuerySet.values_list(…, named=True) after prefetch_related() (#32812). Fixed a bug in Django 3.2 that caused a migration crash on MySQL 8.0.13+ when altering BinaryField, JSONField, or TextField to non-nullable (#32503).
Release notes
Django 4.2.1 release notes
Fixed a regression in Django 4.2 that caused a crash of QuerySet.defer() when deferring fields by attribute names (#34458). Fixed a regression in Django 4.2 that caused a crash of SearchVector function with % characters (#34459).
Release notes
Django 4.2.4 release notes
Fixed a regression in Django 4.2 that caused a crash of QuerySet.aggregate() with aggregates referencing window functions (#34717). Fixed a regression in Django 4.2 that caused a crash when grouping by a reference in a subquery (#34748).
Release notes
Django 4.2.7 release notes
Fixed a regression in Django 4.2 that caused a crash of QuerySet.aggregate() with aggregates referencing expressions containing subqueries (#34798). Restored, following a regression in Django 4.2, creating varchar/text_pattern_ops indexes on CharField and TextField with deterministic collations on PostgreSQL (#34932).
Release notes
Django 1.11.12 release notes
Fixed a regression in Django 1.11.8 where combining two annotated values_list() querysets with union(), difference(), or intersection() crashed due to mismatching columns (#29229).
Release notes
Django 2.2.3 release notes
CVE-2019-12781: Incorrect HTTP detection with reverse-proxy connecting via HTTPS
Fixed a regression in Django 2.2 where Avg, StdDev, and Variance crash with filter argument (#30542). Fixed a regression in Django 2.2.2 where auto-reloader crashes with AttributeError, e.g. when using ipdb (#30588).
Release notes
Django 1.6 release notes
What’s new in Django 1.6
The support for time zones introduced in Django 1.4 didn’t work well with QuerySet.dates(): aggregation was always performed in UTC. This limitation was lifted in Django 1.6. Use QuerySet.datetimes() to perform time zone aware aggregation on a DateTimeField.
Release notes
Django 1.6.3 release notes
Historically, queries that use select_for_update() could be executed in autocommit mode, outside of a transaction. Before Django 1.6, Django’s automatic transactions mode allowed this to be used to lock records until the next write operation.
Release notes
Django 1.7 release notes
Backwards incompatible changes in 1.7
Historically, queries that use select_for_update() could be executed in autocommit mode, outside of a transaction. Before Django 1.6, Django’s automatic transactions mode allowed this to be used to lock records until the next write operation.
Release notes
Django 3.0 release notes
What’s new in Django 3.0
Expressions that output BooleanField may now be used directly in QuerySet filters, without having to first annotate and then filter against the annotation.