djangodocs.org

155 sections in Django 5.2 Search all versions →

SameSite cookies

Release notes Django 2.1 release notes Backwards incompatible changes in 2.1

The cookies used for django.contrib.sessions, django.contrib.messages, and Django’s CSRF protection now set the SameSite flag to Lax by default. Browsers that respect this flag won’t send these cookies on cross-origin requests.

Miscellaneous

Release notes Django 4.1 release notes Features deprecated in 4.1

CSRF_COOKIE_MASKED transitional setting is deprecated. The name argument of django.utils.functional.cached_property() is deprecated as it’s unnecessary as of Python 3.6. The opclasses argument of django.contrib.postgres.constraints.ExclusionConstraint is deprecated in favor of using OpClass() in ExclusionConstraint.expressions.

One new feature

Release notes Django 1.2.2 release notes

In order to test a bug fix that forms part of the 1.2.2 release, it was necessary to add a feature – the enforce_csrf_checks flag – to the test client.

Release notes Django 1.6 release notes Features deprecated in 1.6

… HTTP header, and this header is being set on a variety of occasions, such as: accessing the session, or using CSRF protection, which is turned on by default, or using a client-side library which sets cookies, like Google Analytics. This …

Bugfixes

Release notes Django 1.7.3 release notes

Fixed a crash in the CSRF middleware when handling non-ASCII referer header (#23815). Fixed a crash in the django.contrib.auth.redirect_to_login view when passing a reverse_lazy() result on Python 3 (#24097). Added correct formats for Greek (el) (#23967).

Bugfixes

Release notes Django 1.8.3 release notes

Corrected HStoreField.has_changed() (#24844). Reverted an optimization to the CSRF template context processor which caused a regression (#24836). Fixed a regression which caused template context processors to overwrite variables set on a RequestContext after it’s created (#24847).

Release notes Django 1.2 release notes Backwards-incompatible changes in 1.2

For example, you would change code from this: to this: or: For those of you who’ve been following the development trunk, this change also applies to other decorators introduced since 1.1, including csrf_protect, cache_control and anything created using decorator_from_middleware.

Overview

Release notes Django 1.4 release notes

Some nice security additions, including improved password hashing (featuring PBKDF2 and bcrypt support), new tools for cryptographic signing, several CSRF improvements, and simple clickjacking protection. An updated default project layout and manage.py that removes the “magic” from prior versions.

Release notes Django 1.4 release notes Backwards incompatible changes in 1.4

CSRF check Note: This is actually a Django 1.1 fallback, not Django 1.2, and it applies only if you’re upgrading from 1.1. Consequences: The user will see a 403 error with any CSRF-protected POST form.

Miscellaneous

Release notes Django 4.0 release notes Features deprecated in 4.0

CsrfViewMiddleware now uses request.META['CSRF_COOKIE_NEEDS_UPDATE'] in place of request.META['CSRF_COOKIE_USED'], request.csrf_cookie_needs_reset, and response.csrf_cookie_set to track whether the CSRF cookie should be sent. This is an undocumented, private API. The undocumented TRANSLATOR_COMMENT_MARK constant is moved from django.template.base to django.utils.translation.template.

Features removed in 5.0

Release notes Django 5.0 release notes

The SitemapIndexItem.__str__() method is removed. The CSRF_COOKIE_MASKED transitional setting is removed. The name argument of django.utils.functional.cached_property() is removed. The opclasses argument of django.contrib.postgres.constraints.ExclusionConstraint is removed. The undocumented ability to pass errors=None to SimpleTestCase.assertFormError() and assertFormsetError() is removed. django.contrib.sessions.serializers.PickleSerializer is removed.