djangodocs.org

766 sections in Django dev Search all versions →

Bugfixes

Release notes Django 1.11.13 release notes

Fixed a regression in Django 1.11.12 where QuerySet.values() or values_list() after combining an annotated and unannotated queryset with union(), difference(), or intersection() crashed due to mismatching columns (#29286).

Bugfixes

Release notes Django 1.11.2 release notes

Relaxed the validation added in Django 1.11 of the fields in the defaults argument of QuerySet.get_or_create() and update_or_create() to reallow settable model properties (#28222). Fixed MultipleObjectMixin.paginate_queryset() crash on Python 2 if the InvalidPage message contains non-ASCII (#28204).

Bugfixes

Release notes Django 1.11.3 release notes

Fixed admin’s FieldListFilter.get_queryset() crash on invalid input (#28202). Fixed invalid HTML for a required AdminFileWidget (#28278). Fixed model initialization to set the name of class-based model indexes for models that only inherit models.Model (#28282).

Overview

Release notes Django 1.4 release notes

… number of ORM improvements, including SELECT FOR UPDATE support, the ability to bulk insert large datasets for improved performance, and QuerySet.prefetch_related, a method to batch-load related objects in areas where select_related() doesn’t work. Some nice security additions, including improved password …

MySQL typecasting

Release notes Django 1.4.11 release notes

The MySQL database is known to “typecast” on certain queries; for example, when querying a table which contains string values, but using a query which filters based on an integer value, MySQL will first silently coerce the strings to integers …

Minor features

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

QuerySet.bulk_create() now has a batch_size argument. By default the batch_size is unlimited except for SQLite where single batch is limited so that 999 parameters per query isn’t exceeded.

MySQL typecasting

Release notes Django 1.5.6 release notes

The MySQL database is known to “typecast” on certain queries; for example, when querying a table which contains string values, but using a query which filters based on an integer value, MySQL will first silently coerce the strings to integers …

Minor features

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

The assertQuerysetEqual() now checks for undefined order and raises ValueError if undefined order is spotted. The order is seen as undefined if the given QuerySet isn’t ordered and there is more than one ordered value to compare against.

Minor features

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

Added QuerySet methods first() and last() which are convenience methods returning the first or last object matching the filters. Returns None if there are no objects matching. View and RedirectView now support HTTP PATCH method.

Release notes Django 1.6 release notes Backwards incompatible changes in 1.6

For example, some queries will now generate different table aliases. This can affect QuerySet.extra(). In addition some queries will now produce different results. An example is exclude(condition) where the condition is a complex one (referencing multijoins inside Q objects).

MySQL typecasting

Release notes Django 1.6.3 release notes

The MySQL database is known to “typecast” on certain queries; for example, when querying a table which contains string values, but using a query which filters based on an integer value, MySQL will first silently coerce the strings to integers …

Release notes Django 1.7 release notes Backwards incompatible changes in 1.7

Some operations ran multiple data modifying queries without wrapping them in a transaction, and some operations didn’t respect default filtering when it was present (i.e. when the default manager on the related model implemented a custom get_queryset()).

Miscellaneous

Release notes Django 1.7 release notes Backwards incompatible changes in 1.7

Rationale behind this is removal of dependency of non-contrib code on contrib applications. The old cache URI syntax (e.g. "locmem://") is no longer supported. It still worked, even though it was not documented or officially supported.

Features removed in 1.7

Release notes Django 1.7 release notes

These features have reached the end of their deprecation cycle and are removed in Django 1.7. See Features deprecated in 1.5 for details, including how to remove usage of these features. django.utils.simplejson is removed. django.utils.itercompat.product is removed.

Features removed in 1.8

Release notes Django 1.8 release notes

The SEND_BROKEN_LINK_EMAILS setting is removed. django.middleware.doc.XViewMiddleware is removed. The Model._meta.module_name alias is removed. The backward compatible shims introduced to rename get_query_set and similar queryset methods are removed. This affects the following classes: BaseModelAdmin, ChangeList, BaseCommentNode, GenericForeignKey, Manager, SingleRelatedObjectDescriptor and ReverseSingleRelatedObjectDescriptor.

Bugfixes

Release notes Django 1.8.1 release notes

Fixed a crash with QuerySet.update() on foreign keys to one-to-one fields (#24578). Fixed a regression in the model detail view of admindocs when a model has a reverse foreign key relation (#24624). Prevented arbitrary file inclusions in admindocs (#24625).

Bugfixes

Release notes Django 1.8.5 release notes

Fixed custom queryset chaining with values() and values_list() (#20625). Moved the unsaved model instance assignment data loss check on reverse relations to Model.save() (#25160). Readded inline foreign keys to form instances when validating model formsets (#25431).