Release notes
Django 5.2 release notes
What’s new in Django 5.2
Django now supports specifying the following attributes to customize form rendering: BaseRenderer.bound_field_class at the project level, Form.bound_field_class at the form level, and Field.bound_field_class at the field level.
Release notes
Django 5.2.2 release notes
Fixed a regression in Django 5.2 where admin’s filter_horizontal buttons lacked type="button", causing them to intercept form submission when pressing the Enter key (#36423).
Release notes
Django 5.2.17 release notes
A maximum depth of 198 GEOMETRYCOLLECTIONs is now enforced for the well-known text (WKT) format, and a maximum number of 198 GEOMETRYCOLLECTIONs in total (breadth and depth) is enforced for well-known binary (WKB).
Release notes
Django 1.10 release notes
django.template.resolve_variable is removed. The following private APIs are removed from django.db.models.options.Options (Model._meta): get_field_by_name() get_all_field_names() get_fields_with_model() get_concrete_fields_with_model() get_m2m_with_model() get_all_related_objects() get_all_related_objects_with_model() get_all_related_many_to_many_objects() get_all_related_m2m_objects_with_model() The error_message argument of django.forms.RegexField is removed. The unordered_list filter no longer supports old style lists.
Release notes
Django 1.7 release notes
What’s new in Django 1.7Minor features
You can specify a descending ordering for a ModelAdmin.list_display value by prefixing the admin_order_field value with a hyphen. The ModelAdmin.get_changeform_initial_data() method may be overridden to define custom behavior for setting initial change form data.
Release notes
Django 1.8 release notes
Backwards incompatible changes in 1.8
This behavior could affect performance on IE7 and later. It was removed. URLField.to_python no longer adds a trailing slash to pathless URLs. The length template filter now returns 0 for an undefined variable, rather than an empty string.
Release notes
Django 1.9 release notes
What’s new in Django 1.9Minor features
Added jQuery events when an inline form is added or removed on the change form page. The time picker widget includes a ‘6 p.m’ option for consistency of having predefined options every 6 hours.
Release notes
Django 3.1 release notes
What’s new in Django 3.1Minor features
django.forms.DateTimeField now accepts dates in a subset of ISO 8601 datetime formats, including optional timezone, e.g. 2019-10-10T06:47, 2019-10-10T06:47:23+04:00, or 2019-10-10T06:47:23Z. The timezone will always be retained if provided, with timezone-aware datetimes being returned even when USE_TZ is False.
Release notes
Django 3.1.3 release notes
Fixed displaying Unicode characters in forms.JSONField and read-only models.JSONField values in the admin (#32080). Fixed a regression in Django 3.1 that caused a crash of ArrayAgg and StringAgg with ordering on key transforms for JSONField (#32096).
Release notes
Django 3.2 release notes
Features deprecated in 3.2
makemessages command no longer processes invalid locales specified using makemessages --locale option, when they contain hyphens ('-'). The django.contrib.auth.forms.ReadOnlyPasswordHashField form field is now disabled by default. Therefore UserChangeForm.clean_password() is no longer required to return the initial value.
Release notes
Django 4.0 release notes
Features deprecated in 4.0
Use ModelAdmin and GISModelAdmin instead. Since form rendering now uses the template engine, the undocumented BaseForm._html_output() helper method is deprecated. The ability to return a str from ErrorList and ErrorDict is deprecated. It is expected these methods return a SafeString.
Release notes
Django 4.1 release notes
Features deprecated in 4.1
Move the generated operations into the state_operations argument of SeparateDatabaseAndState. For example: The undocumented ability to pass errors=None to SimpleTestCase.assertFormError() and assertFormsetError() is deprecated. Use errors=[] instead. django.contrib.sessions.serializers.PickleSerializer is deprecated due to the risk of remote code execution.
Release notes
Django 5.0 release notes
Features deprecated in 5.0
The instance argument of the undocumented BaseModelFormSet.save_existing() method is renamed to obj. The undocumented django.contrib.admin.helpers.checkbox is removed. Integer fields are now validated as 64-bit integers on SQLite to match the behavior of sqlite3.
Release notes
Django 5.0 release notes
The undocumented BaseForm._html_output() method is removed. The ability to return a str, rather than a SafeString, when rendering an ErrorDict and ErrorList is removed.