djangodocs.org

728 sections in Django 5.2 Search all versions →

Bugfixes

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).

Bugfixes

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.

Filter expressions

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.

Bugfixes

Release notes Django 3.0.6 release notes

Fixed a regression in Django 3.0 that caused a crash when filtering a Subquery() annotation of a queryset containing a single related field against a SimpleLazyObject (#31420).

Bugfixes

Release notes Django 5.2.10 release notes

Fixed a bug in Django 5.2 where data exceeding max_length was silently truncated by QuerySet.bulk_create() on PostgreSQL (#33647). Fixed a bug where management command colorized help (introduced in Python 3.14) ignored the --no-color option and the DJANGO_COLORS setting (#36376).

Bugfixes

Release notes Django 5.2.5 release notes

Fixed a regression in Django 5.2.1 that prevented the usage of UNNEST PostgreSQL strategy of QuerySet.bulk_create() with foreign keys (#36502). Fixed a crash in Django 5.2 when filtering against a composite primary key using a tuple containing expressions (#36522).

Bugfixes

Release notes Django 5.2.8 release notes

Added compatibility for oracledb 3.4.0 (#36646). Fixed a bug in Django 5.2 where QuerySet.first() and QuerySet.last() raised an error on querysets performing aggregation that selected all fields of a composite primary key (#36648).

Window expressions

Release notes Django 2.0 release notes What’s new in Django 2.0

The new Window expression allows adding an OVER clause to querysets. You can use window functions and aggregate functions in the expression.

Database backends

Release notes Django 1.10 release notes What’s new in Django 1.10Minor features

Temporal data subtraction was unified on all backends. If the database supports it, backends can set DatabaseFeatures.can_return_ids_from_bulk_insert=True and implement DatabaseOperations.fetch_returned_insert_ids() to set primary keys on objects created using QuerySet.bulk_create().

Models

Release notes Django 1.10 release notes What’s new in Django 1.10Minor features

The reverse relation attached by a ForeignKey pointing to a proxy model is now accessible as a descriptor on the proxied model class and may be referenced in queryset filtering.

Subquery expressions

Release notes Django 1.11 release notes What’s new in Django 1.11

The new Subquery and Exists database expressions allow creating explicit subqueries. Subqueries may refer to fields from the outer queryset using the OuterRef class.

Bugfixes

Release notes Django 1.11.4 release notes

Fixed QuerySet.union() and difference() when combining with a queryset raising EmptyResultSet (#28378). Fixed a regression in pickling of LazyObject on Python 2 when the wrapped object doesn’t have __reduce__() (#28389).

Bugfixes

Release notes Django 1.11.7 release notes

Prevented cache.get_or_set() from caching None if the default argument is a callable that returns None (#28601). Fixed the Basque DATE_FORMAT string (#28710). Made QuerySet.reverse() affect nulls_first and nulls_last (#28722). Fixed unquoted table names in Subquery SQL when using OuterRef (#28689).

Bugfixes

Release notes Django 1.11.8 release notes

Added support for QuerySet.values() and values_list() for union(), difference(), and intersection() queries (#28781). Fixed incorrect index name truncation when using a namespaced db_table (#28792). Made QuerySet.iterator() use server-side cursors on PostgreSQL after values() and values_list() (#28817).

Release notes Django 1.2 release notes What’s new in Django 1.2

Queries can be issued at a specific database with the using() method on QuerySet objects. Individual objects can be saved to a specific database by providing a using argument when you call save().

Bugfixes

Release notes Django 1.5.5 release notes

Fixed a Python 3 incompatibility in django.utils.text.unescape_entities() (#21185). Fixed a couple data corruption issues with QuerySet edge cases under Oracle and MySQL (#21203, #21126). Fixed crashes when using combinations of annotate(), select_related(), and only() (#16436).