| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2019-11-21 | [3.0.x] Fixed #31012 -- Reverted "Fixed #29056 -- Fixed HTML5 validation of ↵ | Carlton Gibson | |
| required SelectDateWidget." This reverts commit f038214d917c982613f5a15db8dfe325b1f7479b. The initial issue was incorrect. Django 2.2, and before, did not generate invalid HTML as reported. With f03821 in place invalid HTML was generated. Thanks to Kevin Brown for follow-up report and investigation. Backport of ee4a19053a32d41cdd79e087b1968980804ce658 from master | |||
| 2019-10-11 | [3.0.x] Fixed #30014 -- Fixed ModelChoiceField validation when initial value ↵ | Etienne Chové | |
| is a model instance. Thanks Carlton Gibson for reviews. Backport of e7cdb0cd7eb5eb677af8dae7bfc6845186f861b0 from master | |||
| 2019-10-08 | [3.0.x] Fixed #30839 -- Fixed Field.__deepcopy__() so forms don't share ↵ | Hasan Ramezani | |
| error messages. Backport of a28d1b38e55cf588cfaae97de6a575d5c9f90a96 from master | |||
| 2019-07-23 | Improved error message when index in __getitem__() is invalid. | Jon Dufresne | |
| 2019-06-28 | Fixed #30400 -- Improved typography of user facing strings. | Jon Dufresne | |
| Thanks Claude Paroz for assistance with translations. | |||
| 2019-06-26 | Fixed #30578 - Made SelectDateWidget respect a custom date format when ↵ | Shubham Bhagat | |
| USE_L10N is disabled. | |||
| 2019-06-20 | Added missing form argument in modelform_factory() docstring. | Tobias Kunze | |
| 2019-06-04 | Fixed #30534 -- Fixed overriding a field's default in ModelForm.cleaned_data(). | RobertAKARobin | |
| 2019-05-08 | Fixed #29056 -- Fixed HTML5 validation of required SelectDateWidget. | Hasan Ramezani | |
| placeholder is required for "select" with "required" attribute. | |||
| 2019-04-24 | Removed unnecessary assignments in various code. | Jon Dufresne | |
| 2019-04-18 | Fixed typos in docs, comments, and exception messages. | Ville Skyttä | |
| 2019-04-03 | Fixed #30302 -- Fixed forms.model_to_dict() result if empty list of fields ↵ | belegnar | |
| is passed. | |||
| 2019-03-21 | Fixed #29956 -- Allowed overriding an order field widget in formsets. | Hasan Ramezani | |
| 2019-03-05 | Fixed #29459 -- Initialized form data/files with empty MultiValueDicts. | Andra Denis Ionescu | |
| 2019-02-27 | Fixed #30179 -- Fixed form Media merging when pairwise merging is insufficient. | Matthias Kestenholz | |
| Thanks gasman for the tests, and codingjoe and timgraham for the review. | |||
| 2019-02-09 | Fixed #30153 -- Fixed incorrect form Media asset ordering after three way merge. | Matthias Kestenholz | |
| Delaying merging assets as long as possible avoids introducing incorrect relative orderings that cause a broken final result. | |||
| 2019-02-09 | Removed uneeded generator expressions and list comprehensions. | Sergey Fedoseev | |
| 2019-02-06 | Fixed #30159 -- Removed unneeded use of OrderedDict. | Nick Pope | |
| Dicts preserve order since Python 3.6. | |||
| 2019-01-02 | Used 4 space hanging indent for dictionaries. | Tim Graham | |
| Thanks Mariusz Felisiak for auditing. | |||
| 2019-01-01 | Fixed #29981 -- Fixed inline formsets with a OnetoOneField primary key that ↵ | Patrik Sletmo | |
| uses to_field. | |||
| 2018-11-14 | Fixed #17210 -- Made NullBooleanSelect use unknown/true/false as query data. | Basil Dubyk | |
| 2018-08-29 | Refs #29689 -- Moved FilePathField choices sorting outside the loop. | Sergey Fedoseev | |
| 2018-08-21 | Fixed #29696 -- Prevented BaseModelFormSet.initial_form_count()'s from ↵ | Jon Dufresne | |
| treating data={} as unbound. | |||
| 2018-08-20 | Fixed #29689 -- Improved performance of FileSystemStorage.listdir() and ↵ | Federico Bond | |
| FilePathField with os.scandir(). | |||
| 2018-08-18 | Refs #29426 -- Made UUIDField render values with dashes. | Tim Graham | |
| 2018-08-08 | Fixed #29623 -- Fixed translation failure of DurationField's "overflow" ↵ | Tim Graham | |
| error message. | |||
| 2018-07-30 | Fixed #26819 -- Fixed BaseModelFormSet.validate_unique() "unhashable type: ↵ | Demur Nodia | |
| list" crash. | |||
| 2018-06-07 | Fixed #29474 -- Simplified BaseInlineFormset.save_new(). | Tim Graham | |
| 2018-04-23 | Refs #28312 -- Added an optimized __bool__() to ModelChoiceIterator. | François Freitag | |
| COUNT is more expensive than EXISTS; use the latter when possible. | |||
| 2018-04-23 | Fixed #28312 -- Made ModelChoiceIterator.__len__() more memory-efficient. | François Freitag | |
| Instead of loading all QuerySet results in memory, count the number of entries. This adds an extra query when list() or tuple() is called on the choices (because both call __len__() then __iter__()) but uses less memory since the QuerySet results won't be cached. In most cases, the choices will only be iterated on, meaning that __len__() won't be called and only one query will be executed. | |||
| 2018-04-19 | Ref #23919 -- Replaced some os.path usage with pathlib.Path. | Tom | |
| 2018-04-04 | Fixed #29284 -- Made ImageField render with accept="image/*"' HTML attribute. | safu9 | |
| 2018-04-02 | Fixed #29273 -- Prevented initial selection of empty choice in multiple ↵ | Claude Paroz | |
| choice widgets. Regression in b52c73008a9d67e9ddbb841872dc15cdd3d6ee01. | |||
| 2018-03-31 | Fixed #29279 -- Added renderer argument to ModelForm. | Dan Watson | |
| 2018-03-16 | Fixed hanging indentation in various code. | Mariusz Felisiak | |
| 2018-03-15 | Fixed #29200 -- Fixed label rendering when using RadioSelect and ↵ | Tim Graham | |
| CheckboxSelectMultiple with MultiWidget. | |||
| 2018-03-03 | Condensed some widgets code. | Daniel Hahler | |
| 2018-03-01 | Fixed #29159 -- Made ModelChoiceIterator reuse QuerySet result cache. | François Freitag | |
| When __len__() is called (e.g. when casting to list or tuple), the QuerySet is evaluated and the result cache populated. iterator() shouldn't be called on the QuerySet after that, as it would reset the result cache and trigger a second query. | |||
| 2018-03-01 | Fixed #29158 -- Fixed len(choices) crash if ModelChoiceField's queryset is a ↵ | François Freitag | |
| manager. Removing all() in __iter__() prevents a duplicate query when choices are cast to a list and there's a prefetch_related(). | |||
| 2018-02-26 | Refs #28909 -- Simplifed code using unpacking generalizations. | Mariusz Felisiak | |
| 2018-02-15 | Fixed #28171 -- Added an exception if Form's empty_permitted and ↵ | Herbert Parentes Fortes Neto | |
| use_required_attribute arguments conflict. | |||
| 2018-02-05 | Fixed #29113 -- Simplified django.forms.formsets.all_valid() and clarified ↵ | Tim Graham | |
| docstring. | |||
| 2018-01-30 | Fixed #29036 -- Fixed HTML5 required validation on SelectDateWidget if the ↵ | Vlastimil Zíma | |
| attribute is added by JavaScript. Thanks Tim Graham for the initial patch. | |||
| 2018-01-30 | Fixed #29089 -- Avoided redundant date parsing in ↵ | Tim Graham | |
| SelectDateWidget.format_value(). | |||
| 2018-01-21 | Fixed #29038 -- Removed closing slash from HTML void tags. | Jon Dufresne | |
| 2018-01-20 | Fixed #29041 -- Changed SelectMultiple's multiple attribute to HTML5 boolean ↵ | Jon Dufresne | |
| syntax. | |||
| 2018-01-18 | Removed unnecessary microsecond truncation in SplitDateTimeWidget. | Jon Dufresne | |
| The microseconds are already truncated by the TimeInput subwidget. | |||
| 2018-01-18 | Refs #23668 -- Removed passing default argument of current TZ to ↵ | Jon Dufresne | |
| make_aware()/naive. | |||
| 2018-01-12 | Fixed #28996 -- Simplified some boolean constructs and removed trivial ↵ | Дилян Палаузов | |
| continue statements. | |||
| 2018-01-11 | Refs #29006 -- Simplified handling of SNaN values in DecimalField.validate(). | Sergey Fedoseev | |
