Release notes
Django 2.0.1 release notes
Fixed a regression in Django 1.11 that added newlines between MultiWidget’s subwidgets (#28890). Fixed incorrect class-based model index name generation for models with quoted db_table (#28876). Fixed incorrect foreign key constraint name for models with quoted db_table (#28876).
Release notes
Django 2.2.8 release notes
Fixed a data loss possibility in the admin changelist view when a custom formset’s prefix contains regular expression special characters, e.g. '$' (#31031).
Release notes
Django 3.1 release notes
What’s new in Django 3.1
Django now supports a fully asynchronous request path, including: Asynchronous views Asynchronous middleware Asynchronous tests and test client To get started with async views, you need to declare a view using async def: All asynchronous features are supported whether you …
Release notes
Django 4.0 release notes
What’s new in Django 4.0Minor features
New QuerySet.contains(obj) method returns whether the queryset contains the given object. This tries to perform the query in the simplest and fastest way possible.
Release notes
Django 4.2.6 release notes
Fixed a regression in Django 4.2.5 where overriding the deprecated DEFAULT_FILE_STORAGE and STATICFILES_STORAGE settings in tests caused the main STORAGES to mutate (#34821).
Release notes
Django 1.10 release notes
Features deprecated in 1.10
The repr() of a QuerySet is wrapped in <QuerySet > to disambiguate it from a plain list when debugging. utils.version.get_version() returns PEP 440 compliant release candidate versions (e.g. ‘1.10rc1’ instead of ‘1.10c1’).
Release notes
Django 1.11.3 release notes
Removed an incorrect deprecation warning about a missing renderer argument if a Widget.render() method accepts **kwargs (#28265). Fixed a regression causing Model.__init__() to crash if a field has an instance only descriptor (#28269).
Release notes
Django 1.4 release notes
What’s new in Django 1.4
Django 1.4 also includes several smaller improvements worth noting: A more usable stacktrace in the technical 500 page. Frames in the stack trace that reference Django’s framework code are dimmed out, while frames in application code are slightly emphasized.
Release notes
Django 1.7 release notes
What’s new in Django 1.7Minor features
The <label> and <input> tags rendered by RadioSelect and CheckboxSelectMultiple when looping over the radio buttons or checkboxes now include for and id attributes, respectively. Each radio button or checkbox includes an id_for_label attribute to output the element’s ID.
Release notes
Django 1.8 release notes
These features have reached the end of their deprecation cycle and are removed in Django 1.8. See Features deprecated in 1.6 for details, including how to remove usage of these features. django.contrib.comments is removed.
Release notes
Django 2.0 release notes
Features deprecated in 2.0
The SessionAuthenticationMiddleware class is removed. It provided no functionality since session authentication is unconditionally enabled in Django 1.10. The default HTTP error handlers (handler404, etc.) are now callables instead of dotted Python path strings.
Reference
Settings
Sessions
Default: 'default' If you’re using cache-based session storage, this selects the cache to use.
Topic guide
Django’s cache framework
Setting up the cache
Here’s an example configuration for a redis based backend that selects database 10 (by default Redis ships with 16 logical databases), specifies a parser class (redis.connection.HiredisParser will be used by default if the hiredis-py package is installed), and sets a …
Topic guide
Making queries
Retrieving objectsRetrieving specific objects with filters
Each time you refine a QuerySet, you get a brand-new QuerySet that is in no way bound to the previous QuerySet. Each refinement creates a separate and distinct QuerySet that can be stored, used and reused.
Topic guide
Time zones
Concepts
The current time zone is the equivalent of the current locale for translations. However, there’s no equivalent of the Accept-Language HTTP header that Django could use to determine the user’s time zone automatically. Instead, Django provides time zone selection functions.
Topic guide
Translation
Miscellaneous
set_language(request) As a convenience, Django comes with a view, django.views.i18n.set_language(), that sets a user’s language preference and redirects to a given URL or, by default, back to the previous page.
Release notes
Django 2.0 release notes
What’s new in Django 2.0Minor features
The new ModelAdmin.autocomplete_fields attribute and ModelAdmin.get_autocomplete_fields() method allow using a Select2 search widget for ForeignKey and ManyToManyField.
Release notes
Django 2.1.9 release notes
jQuery before 3.4.0, mishandles jQuery.extend(true, {}, ...) because of Object.prototype pollution. If an unsanitized source object contained an enumerable __proto__ property, it could extend the native Object.prototype.
Release notes
Django 2.2.2 release notes
jQuery before 3.4.0, mishandles jQuery.extend(true, {}, ...) because of Object.prototype pollution. If an unsanitized source object contained an enumerable __proto__ property, it could extend the native Object.prototype.
Release notes
Django 3.0 release notes
Backwards incompatible changes in 3.0
Added support for the admin_order_field attribute on properties in ModelAdmin.list_display. The new ModelAdmin.get_inlines() method allows specifying the inlines based on the request or model instance. Select2 library is upgraded from version 4.0.3 to 4.0.7.