| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-09-30 | [4.0.x] Fixed #33155 -- Made ModelChoiceIteratorValue instances hashable. | Aljaž Košir | |
| Backport of 7b8beeee3d45cafd7bec7ff3ee0e4371e142c36d from main | |||
| 2021-09-29 | [4.0.x] Fixed #33134 -- Fixed recursion depth error when rendering Form with ↵ | David Smith | |
| BoundFields. Regression in 456466d932830b096d39806e291fe23ec5ed38d5. Backport of 4884a87e022056eda10534c13d74e49b8cdda632 from main | |||
| 2021-09-24 | [4.0.x] Fixed #33130 -- Restored form errors to be a dict. | Jaap Roes | |
| Regression in 456466d932830b096d39806e291fe23ec5ed38d5. Backport of 7fe9b6f6df16fa875fe360a1c7d0ac53fcf08a53 from main | |||
| 2021-09-20 | Fixed #31026 -- Switched form rendering to template engine. | David Smith | |
| Thanks Carlton Gibson, Keryn Knight, Mariusz Felisiak, and Nick Pope for reviews. Co-authored-by: Johannes Hoppe <info@johanneshoppe.com> | |||
| 2021-09-03 | Fixed #32975 -- Fixed admin system check for inlines with foreign keys to ↵ | taulant | |
| proxy models. | |||
| 2021-08-27 | Refs #32338 -- Made RadioSelect/CheckboxSelectMultiple render in <div> tags. | David Smith | |
| This improves accessibility for screen reader users. | |||
| 2021-08-04 | Fixed #29205 -- Corrected rendering of required attributes for ↵ | Jacob Walls | |
| MultiValueField subfields. | |||
| 2021-08-04 | Fixed #32855 -- Corrected BoundWidget.id_for_label() with custom auto_id. | Jacob Rief | |
| 2021-08-03 | Fixed #32984 -- Allowed customizing a deletion field widget in formsets. | Ties Jan Hefting | |
| 2021-07-21 | Fixed #32949 -- Restored invalid number handling in DecimalField.validate(). | yakimka | |
| DecimalField must itself validate() values, such as NaN, which cannot be passed to validators, such as MaxValueValidator, during the run_validators() phase. Regression in cc3d24d7d577f174937a0744d886c4c7123cfa85. | |||
| 2021-07-16 | Fixed #32924 -- Changed BaseForm.get_initial_for_field() to remove ↵ | Chris Jerdonek | |
| microseconds when needed. | |||
| 2021-07-15 | Refs #32920 -- Added BoundField._has_changed() for use in ↵ | Chris Jerdonek | |
| BaseForm.changed_data(). | |||
| 2021-07-15 | Fixed #32920 -- Changed BaseForm to access its values through bound fields. | Chris Jerdonek | |
| 2021-07-15 | Fixed #32905 -- Added CSS class for non-form errors of formsets. | Ties Jan Hefting | |
| 2021-07-13 | Fixed #32917 -- Added BaseForm._widget_data_value()/_field_data_value(). | Chris Jerdonek | |
| 2021-07-05 | Fixed #32901 -- Optimized BaseForm.__getitem__(). | Chris Jerdonek | |
| 2021-06-28 | Fixed #32807 -- Fixed JSONField crash when redisplaying None values. | Dan Strokirk | |
| Thanks to Alex Hill for the initial patch. | |||
| 2021-06-22 | Refs #32338 -- Removed 'for ="..."' from RadioSelect's <label>. | David Smith | |
| This improves accessibility for screen reader users. Co-authored-by: Thibaud Colas <thibaudcolas@gmail.com> | |||
| 2021-06-07 | Fixed #32821 -- Updated os.scandir() uses to use a context manager. | Chris Jerdonek | |
| 2021-05-12 | Refs #32738 -- Added sanitize_strftime_format() to replace datetime_safe. | Nick Pope | |
| 2021-04-01 | Fixed #32316 -- Deferred accessing __file__. | William Schwartz | |
| Deferred accessing the module-global variable __file__ because the Python import API does not guarantee it always exists—in particular, it does not exist in certain "frozen" environments. The following changes advanced this goal. Thanks to Carlton Gibson, Tom Forbes, Mariusz Felisiak, and Shreyas Ravi for review and feedback. | |||
| 2021-01-27 | Improved performance of django.forms.ChoiceWidget.optgroups(). | David Smith | |
| 2021-01-26 | Fixed #32347 -- Made ModelChoiceField include the value in ValidationError ↵ | Jerin Peter George | |
| for invalid_choice. | |||
| 2021-01-19 | Refs #32365 -- Allowed use of non-pytz timezone implementations. | Paul Ganssle | |
| 2021-01-19 | Removed unnecessary empty dict creation in ChoiceWidget.create_option(). | David Smith | |
| build_atttrs() already creates an empty dict if extra_attrs is None. | |||
| 2021-01-16 | Improved performance of DecimalField. | David Smith | |
| strip() is unnecessary because decimal.Decimal() strips the input value. | |||
| 2021-01-14 | Refs #8760 -- Removed "list" message for ModelMultipleChoiceField per ↵ | Mariusz Felisiak | |
| deprecation timeline. | |||
| 2020-11-05 | Fixed #22276 -- Fixed crash when formset management form is invalid. | Jon Dufresne | |
| Co-authored-by: Patryk Zawadzki <patrys@room-303.com> | |||
| 2020-11-03 | Refs #29113 -- Simplified formset validation. | Claude Paroz | |
| Thanks Nick Pope for review and complement. | |||
| 2020-11-02 | Simplified DeclarativeFieldsMetaclass.__new__() a bit. | Vitaliy Yelnik | |
| 2020-10-27 | Fixed #1891, Fixed #11707 -- Prevented duplicates with limit_choices_to on ↵ | alvinshaita | |
| multi-value relations. | |||
| 2020-10-26 | Simplifed formset iteration using enumerate(). | Jon Dufresne | |
| 2020-10-21 | Fixed #13060 -- Improved error message when ManagementForm data is missing. | manav014 | |
| 2020-10-09 | Fixed #32080 -- Fixed displaying Unicode chars in forms.JSONField and ↵ | Qi Zhao | |
| read-only JSONField values in admin. | |||
| 2020-09-28 | Fixed #32042 -- Improved error messages for the number of submitted forms in ↵ | meghanabhange | |
| formsets. | |||
| 2020-09-24 | Fixed #30563 -- Optimized form Media by removing duplicated assets when adding. | David Smith | |
| 2020-09-22 | Corrected docstring quotes in various code. | Mariusz Felisiak | |
| 2020-09-22 | Made jinja2 import lazy in django.forms. | Adam Johnson | |
| Benchmarking shows that about 22% of the startup time for a simple django project was spent importing jinja2, which the project doesn't use. It's reasonable to make this import lazy. This will only affect projects where jinja2 is installed but not used, but given the prevalence of jinja2 that's likely to be many environments (e.g. if Ansible is installed, or the global Python install is used). | |||
| 2020-07-30 | Bumped minimum isort version to 5.1.0. | David Smith | |
| Fixed inner imports per isort 5. isort 5.0.0 to 5.1.0 was unstable. | |||
| 2020-07-27 | Removed redundant forms.DecimalField.validate() in favor of DecimalValidator. | Jon Dufresne | |
| 2020-07-10 | Refs #30578 -- Made SelectDateWidget.format_value() independent of USE_L10N. | Claude Paroz | |
| 2020-06-24 | Fixed #9061 -- Allowed FormSets to disable deleting extra forms. | David Smith | |
| Thanks to Dan Ward for the initial patch. | |||
| 2020-06-05 | Fixed #20347 -- Allowed customizing the maximum number of instantiated forms ↵ | David Smith | |
| in formsets. Co-authored-by: ethurgood <ethurgood@gmail.com> | |||
| 2020-06-01 | Fixed #31536 -- Fixed rendering of disabled AdminFileWidget and ↵ | Carles Pina | |
| ClearableFileInput. | |||
| 2020-05-12 | Fixed E128, E741 flake8 warnings. | Mariusz Felisiak | |
| 2020-05-08 | Fixed #12990, Refs #27694 -- Added JSONField model field. | sage | |
| Thanks to Adam Johnson, Carlton Gibson, Mariusz Felisiak, and Raphael Michel for mentoring this Google Summer of Code 2019 project and everyone else who helped with the patch. Special thanks to Mads Jensen, Nick Pope, and Simon Charette for extensive reviews. Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com> | |||
| 2020-05-06 | Simplified Widget.get_context() a bit. | Jon Dufresne | |
| 2020-04-10 | Fixed #13009 -- Added BoundField.widget_type property. | David Smith | |
| 2020-03-24 | Fixed #7664 -- Allowed customizing suffixes of MultiWidget.widgets' names. | David Smith | |
| 2020-03-12 | Fixed #8760 -- Changed ModelMultipleChoiceField to use invalid_list as a ↵ | David Smith | |
| error message key. | |||
