.. currentmodule:: wtforms Unreleased ------------- Unreleased - Fix :class:`~validators.Disabled` validation with provided formdata. :pr:`880` - End support for Python 3.9, start support for Python 3.14. :pr:`883` Version 3.2.1 ------------- Released 2024-10-21 - Fix :class:`~fields.SelectMultipleBase` import. :issue:`861` :pr:`862` Version 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. :pr:`854` - Stop supporting Python 3.9 and start supporting Python 3.13 :pr:`855` - Removed `required` flag support from :class:`~fields.HiddenWidget`, :class:`~fields.RangeWidget` and :class:`~fields.SelectWidget` to conform to W3C :pr:`810` - :class:`~wtforms.validators.NoneOf` and :class:`~wtforms.validators.AnyOf` can validate multiple valued fields like :class:`~fields.SelectMultipleField` :pr:`538` :pr:`807` - Use GHA and pre-commit workflows inspired from Flask. :pr:`856` :pr:`860` - ⚠️Breaking change⚠️: Some deprecated code was removed (:pr:`859`): - :class:`~wtforms.Flags` can no longer be tuples. :issue:`467` - `iter_choices` needs a tuple of 4 items :issue:`816` - ⚠️Breaking change⚠️: The key for form errors moved from :data:`None` to empty string `""`. :issue:`829` :pr:`858` .. note:: If you need to keep the old behavior you can set the ``_form_error_key`` parameter of your form to :data:`None`. Version 3.1.2 ------------- Released 2024-01-06 - Fix :class:`~fields.SelectMultipleField` value coercion on validation. :issue:`822` :pr:`823` Version 3.1.1 ------------- Released 2023-11-01 - Display :class:`~wtforms.Flags` values in their repr. :pr:`808` - :class:`~fields.SelectField` and :class:`~fields.SelectMultipleField` ``choices`` can be `None` if `validate_choice` is `False` :pr:`809` - Documentation improvements :pr:`812` :pr:`815` :pr:`817` - Unit tests improvements :pr:`813` - Python 3.12 support :pr:`818` - Restored support for 3-items tuple return value from `iter_choices` :pr:`816` Version 3.1.0 ------------- Released 2023-10-10 - Documentation improvements :pr:`726` :pr:`733` :pr:`749` :pr:`767` :pr:`788` :pr:`789` :pr:`793` - Translation improvements :pr:`732` :pr:`734` :pr:`754` - Implement :class:`~fields.ColorField` :pr:`755` - Delayed import of ``email_validator``. :issue:`727` - ``