Releases: pallets-eco/wtforms
Releases · pallets-eco/wtforms
3.3.0b1
What's Changed
- Add links to MDN in the documentation by @azmeuk in #893
- chore: Remove obsolete
python-dateutildependency by @mgorny in #899 - ListField use Meta.bind_field instead of the default bind method. by @azmeuk in #891
- Add
test_environmentsupport for the Email validator by @azmeuk in #894 - Reset FieldList index state when calling process by @azmeuk in #895
- Implement RangeInput min and max parameters by @azmeuk in #898
- Do not render 'for' in radio by @azmeuk in #900
- Deprecate DateTimeField by @azmeuk in #897
- FloatField use NumberInput by default by @Demetriex in #679
- Accept uuid.UUID objects in UUID validator by @TurnrDev in #769
- Escape double quotes in HTML attribute values by @azmeuk in #906
html_paramsreturnsMarkupby @azmeuk in #907- Fix False value with Select by @azmeuk in #908
- Clarify how Select choice is processed in the documentation by @azmeuk in #909
- Fix filters documentation by @azmeuk in #896
- Render-time checked kwargs take precedence over field.checked by @azmeuk in #910
- Add a tz parameter to
DateTimeLocalFieldby @azmeuk in #905 - FieldList improvement to handle entries with indices by @azmeuk in #901
- Use consecutive ids in FieldList when using insert and remove by @azmeuk in #912
- Implement ButtonField by @azmeuk in #892
- Re-introduce Choice and SelectChoice dataclasses by @azmeuk in #889
- Improve custom widgets documentation by @azmeuk in #913
- Add a fieldlist of formfield example in the documentation by @azmeuk in #914
- Enum support for SelectField by @azmeuk in #916
- Respect email_validator default values by @azmeuk in #917
- Error messages customization by @azmeuk in #902
- Customize regexp validator match method by @azmeuk in #918
- for Regexp validator set html input tag 'pattern' attribute by @lefty01 in #759
- implement DateRange validator similar to NumberRange by @jkittner in #787
- URL validator: accept user/password, use urllib.urlparse by @ianw in #847
- Restore
sorted(set())instead oflist(dict.fromkeys())to sort keys in FieldList by @azmeuk in #920 - Datalist implementation by @azmeuk in #921
New Contributors
- @mgorny made their first contribution in #899
- @Demetriex made their first contribution in #679
- @TurnrDev made their first contribution in #769
- @lefty01 made their first contribution in #759
- @jkittner made their first contribution in #787
- @ianw made their first contribution in #847
Full Changelog: 3.2.2...3.3.0b1
3.2.2
What's Changed
- remove slsa provenance by @davidism in #879
- fix(validators): Disabled validation with provided formdata by @subnix in #880
- Support Python versions from 3.10 to 3.14 by @azmeuk in #883
- Update FAQ to reflect 3.10+ support by @kurtmckee in #884
- GHA improvements by @azmeuk in #888
New Contributors
- @subnix made their first contribution in #880
- @kurtmckee made their first contribution in #884
Full Changelog: 3.2.1...3.2.2
3.2.1
3.2.0
Released 2024-10-20
- Translations update: korean, chinese (traditional), portugese, russian,
dutch, kazakh, swedish, turkish, slovak, ukranian, spanish, french. - Move the repository to the pallets-eco organization. #854
- Stop supporting Python 3.8 and start supporting Python 3.13 #855
- Removed
requiredflag support fromHiddenWidget,
RangeWidgetandSelectWidgetto
conform to W3C #810 NoneOfandAnyOf
can validate multiple valued fields likeSelectMultipleField
#538 #807- Use GHA and pre-commit workflows inspired from Flask. #856 #860
Warning
Some deprecated code was removed (#859):
Note
If you need to keep the old behavior you can set the _form_error_key parameter of your form to :data:None.
3.1.2
3.1.1
Released 2023-11-01
3.1.0
Released 2023-10-10
- Documentation improvements #726 #733 #749
#767 #788 #789 #793 - Translation improvements #732 #734 #754
- Implement :class:
~fields.ColorField#755 - Delayed import of
email_validator. #727 <option>attributes can be passed by the :class:~fields.SelectField
choicesparameter #692 #738- Use the standard datetime formats by default for
:class:~fields.DateTimeLocalField#761 - Python 3.11 support #763
- Added shorter format to :class:
~fields.DateTimeLocalField
defaults #761 - Stop support for python 3.7 #794
- Added shorter format to :class:
~fields.WeekField
defaults #765 - Move to pyproject.toml #796
- URL validator takes a
allow_ipparameter #800 - Implement :class:
~validators.ReadOnlyand
:class:~validators.Disabled#788
3.0.1
3.0.0
Released 2021-11-07
- Fixed
fields.RadioFieldvalidators. #477 #615 fields.FormField.populate_objalways callssetattr#675- WTForms has a new logo. #569 #689
- Fixed
fields.RadioFieldrender_kwrendering. #490 #628 #688 - Support for optgroups in
fields.SelectFieldandfields.SelectMultipleField. #656 #667 - Minor documentation fix. #701
- Custom separators for
fields.FieldList. #681 #694 fields.DateTimeField,fields.DateFieldandfields.TimeFieldsupport time formats that removes leading zeros. #703- Refactoring: split
fields/core.pyandfields/simple.py#710
3.0.0a1
- Drop support for Python < 3.6. #554
fields.StringFieldsets data to None when form data is empty and an initial value was not provided. Although it previously set an empty string, None is consistent with the behavior of other fields. #355- Specified version of Babel required for setup to avoid errors. #430
- Replaced use of getattr/setattr with regular variable access. #482
ValueErrorraised by a validator are handled like regular exceptions. Validators need to raisevalidators.ValidationErrororvalidators.StopValidationto make a validation fail. #445fields.SelectField,fields.SelectMultipleFieldandfields.RadioFieldchoices parameter can be a callable. #608- Choices shortcut for
fields.core.SelectMultipleField. #603 #605 - Forms can have form-level errors. #55 #595
- Implemented
fields.core.MonthField. #530 #593 - Filters can be inline.
form.BaseForm.processtakes a extra_filters parameter. #128 #592 - Fields can be passed the name argument to use a HTML name different than their Python name. #205, #601
- Render attribute names like for_ and class_ are normalized consistently so later values override those specified earlier. #449, #596
- Flags can take non-boolean values. #406 #467
- Widgets are HTML5 by default. #594 #614
- Fixed a bug when the
fields.core.SelectFieldchoices are list of strings. #598 - Error messages standardization. #613 #620 #626 #627
fields.core.SelectMultipleFieldvalidate_choice bugfix. #606 #642- Fixed SelectMultipleField validation when using choices list shortcut. #612 #661