Release notes
Porting your apps from Django 0.96 to 1.0
Less-common changesHTTP request/response objects
… both GET and POST data were directly available on the HttpRequest object (e.g., you could check for a piece of form data by using if 'some_form_key' in request or by reading request['some_form_key']. This is no longer supported; if you need …
Release notes
Django 1.1 release notes
Backwards-incompatible changes in 1.1
In Django 1.1, BaseModelFormSet now calls ModelForm.save(). This is backwards-incompatible if you were modifying self.initial in a model formset’s __init__, or if you relied on the internal _total_form_count or _initial_form_count attributes of BaseFormSet. Those attributes are now public methods.
Release notes
Django 1.1 release notes
What’s new in Django 1.1New admin features
You can now make fields editable on the admin list views via the new list_editable admin option. These fields will show up as form widgets on the list pages, and can be edited and saved in bulk.
Release notes
Django 1.10.7 release notes
Made admin’s RelatedFieldWidgetWrapper use the wrapped widget’s value_omitted_from_data() method (#27905). Fixed model form default fallback for SelectMultiple (#27993).
Release notes
Django 1.2 release notes
What’s new in Django 1.2
… protection against Cross-Site Request Forgery (CSRF) attacks. This type of attack occurs when a malicious website contains a link, a form button or some JavaScript that is intended to perform some action on your website, using the credentials of a …
Release notes
Django 1.2.1 was released almost immediately after 1.2.0 to correct two small bugs: one was in the documentation packaging script, the other was a bug that affected datetime form field widgets when localization was enabled.
Release notes
Django 1.3 release notes
Backwards-incompatible changes in 1.3
The django.contrib.auth.views.password_reset() view now accepts a from_email parameter, which is passed to the password_reset_form’s save() method as a keyword argument.
Release notes
Django 1.4 release notes
Backwards incompatible changes in 1.4
To avoid conflicts with other common CSS class names (e.g. “button”), we added a prefix (“field-”) to all CSS class names automatically generated from the form field names in the main admin forms, stacked inline forms and tabular inline cells.
Release notes
Django 1.4 release notes
Backwards incompatible changes in 1.4
The password_reset view in django.contrib.auth now accepts a subject_template_name parameter, which is passed to the password save form as a keyword argument.
Release notes
Django 1.4.14 release notes
In older versions of Django it was possible to reveal any field’s data by modifying the “popup” and “to_field” parameters of the query string on an admin change form page.
Release notes
Django 1.5 release notes
Python compatibility
Django 1.5 introduces support for Python 3 - specifically, Python 3.2 and above. This comes in the form of a single codebase; you don’t need to install a different version of Django on Python 3.
Release notes
Django 1.5.9 release notes
In older versions of Django it was possible to reveal any field’s data by modifying the “popup” and “to_field” parameters of the query string on an admin change form page.
Release notes
Django 1.6.6 release notes
In older versions of Django it was possible to reveal any field’s data by modifying the “popup” and “to_field” parameters of the query string on an admin change form page.
Release notes
Django 1.7 release notes
What’s new in Django 1.7Minor features
The enter argument was added to the setting_changed signal. The model signals can be now be connected to using a str of the 'app_label.ModelName' form – just like related fields – to lazily reference their senders.
Release notes
Django 1.8 release notes
What’s new in Django 1.8
There is a corresponding form field. Django now has a DurationField for storing periods of time - modeled in Python by timedelta.
Release notes
Django 1.8 release notes
Features deprecated in 1.8
ModelChoiceField and ModelMultipleChoiceField took an undocumented, untested option cache_choices. This cached querysets between multiple renderings of the same Form object. This option is subject to an accelerated deprecation and will be removed in Django 1.9.
Release notes
Django 1.9 release notes
What’s new in Django 1.9Minor features
ModelForm accepts the new Meta option field_classes to customize the type of the fields. See Overriding the default fields for details.
Release notes
Django 1.9.2 release notes
A regression in Django 1.9 prevented that form submission from raising a “Permission Denied” error for users without the “add” permission.
Release notes
Django 2.0 release notes
What’s new in Django 2.0Minor features
The new date_attrs and time_attrs arguments for SplitDateTimeWidget and SplitHiddenDateTimeWidget allow specifying different HTML attributes for the DateInput and TimeInput (or hidden) subwidgets. The new Form.errors.get_json_data() method returns form errors as a dictionary suitable for including in a JSON response.
Release notes
Django 2.1 release notes
Backwards incompatible changes in 2.1Considerations for the new model “view” permission
With the new “view” permission, existing custom admin forms may raise errors when a user doesn’t have the change permission because the form might access nonexistent fields.