Changelog
All notable changes to this project will be documented in this file.
[0.5.3] - 2025-04-28
Changed
Migrated methods from camel to snake case
[0.5.2] - 2025-04-27
Changed
Moved multiple internal methods to own
FieldMixin
-applyFilters
-applySteps
-checkConditions
-checkForRequired
-validateField
[0.5.1] - 2025-04-26
Added
Added .whl for musllinux_aarch64 to the release process.
[0.5.0] - 2025-04-26
Changed
Moved components to subfolders to improve readability and maintainability. The following components have been moved: -
Condition
=>conditions
-Enum
=>enums
-Exception
=>exceptions
-Filter
=>filters
-Mixin
=>mixins
-Model
=>models
-Validator
=>validators
But the old import paths are still available for backward compatibility, but because the old path will be abandoned in the future, it is recommended to use the new paths.
Renamed files into snake_case to follow the PEP8 standard. This requires a migration if you are importing the files directly. e.g.
from flask_inputfilter.filters import Base64ImageResizeFilter
tofrom flask_inputfilter.filters.base64_image_resize_filter import Base64ImageResizeFilter
.
[0.4.3a1] - 2025-04-26
Added
whl generation for linux too.
[0.4.2] - 2025-04-25
Added
whl generation for all major versions and envs.
[0.4.1] - 2025-04-24
Changed
Introduced first c++ vector in
InputFilter
to improve performance.Updated required
cython
version to 3.0 or higher for python 3.7 - 3.11.Moved static methods outside of pure InputFilter class.
[0.4.0] - 2025-04-20
Added
Added possibility to use
cython
for performance improvements. View the guide for more information.
[0.4.0a2] - 2025-04-17
Changed
Added fallback for
cython
to usepython
if no c++ compiler is installed.super().__init__() is now ONLY optional, if you are using the cython version.
[0.4.0a1] - 2025-04-17
Changed
InputFilter now uses cython for performance improvements.
Made super().__init__() call optional. You will only need to call it, if you are wanting to limit the allowed methods.
[0.3.1] - 2025-04-14
Changed
Updated error handling and changed broad
Exception
to specific errors.Smaller performance improvements
[0.3.0] - 2025-04-10
Added
IsDateTimeValidator
IsDateValidator
Changed
Updated
IsTypedDictValidator` and ``IsDataclassValidator
to require a specific model and checks if the input json is in the defined format.Introduced Mixins for parts of InputFilter
ConditionMixin
DataMixin
ErrorHandlingMixin
ExternalApiMixin
FieldMixin
FilterMixin
ModelMixin
ValidationMixin
Removed
RemoveEmojisFilter
ToPascaleCaseFilter
SlugifyFilter
[0.2.0] - 2025-04-07
Added
getErrorMessages
Changed
Updated error handling: The first error for each field is now returned in a combined format, enabling more detailed and flexible error handling on the frontend. Check it out
Errors received through external_api request get logged.
[0.1.2] - 2025-03-29
Added
getConditions
getGlobalFilters
getGlobalValidators
clear
Changed
Fixed
merge
method to fit expected behavior.
[0.1.1] - 2025-03-29
Changed
Fixed unexpected message in error message of
IsIntegerValidator
[0.1.0] - 2025-03-26
Added
Multiple functions to allow a broader usage aside as decorator
getErrorMessage
getRawValue
getRawValues
getUnfilteredData
getValue
getValues
hasUnknown
isValid
merge
remove
replace
setData
setUnfilteredData
Removed
IsMimeTypeValidator
[0.0.10] - 2025-03-06
Added
Added python 3.14 support.
Changed
Use
FieldModel
for field definition. (Only internal change, no impact on usage)
[0.0.9.1] - 2025-02-09
Changed
Updated
InputFilter
to fix the issue with route params.
[0.0.9] - 2025-01-29
Added
New
copy
functionality to copy the value of another field. Check it out
Filter
New
ToDataclassFilter
to convert a dictionary to a dataclass.New
ToTypedDictFilter
to convert a dictionary to a TypedDict.
Validator
New
CustomJsonValidator
to check if a value is the format of a specific json.New
IsDataclassValidator
to check if a value is a dataclass.New
IsTypedDictValidator
to check if a value is a TypedDict.
Changed
Moved external API call before the filter and validation process. Before, filters and validators the the external API field where useless, because the value of the field where replaced by the API result.
Updated
SlugifyFilter
to remove accents and other special characters.
[0.0.8] - 2025-01-20
Added
New functionality to define steps for a field to have more control over the order of the validation and filtering process.
Documentary
Filter
New
Base64ImageDownscaleFilter
to reduce the size of an image.New
Base64ImageResizeFilter
to reduce the file size of an image.
Validator
New
IsHorizontalImageValidator
to check if an image is horizontal.New
IsVerticalImageValidator
to check if an image is vertical.
Changed
Added
UnicodeFormEnum
to show possible config values forToNormalizedUnicodeFilter
. Old config is still supported, but will be removed in a later version.
[0.0.7.1] - 2025-01-16
Changed
Updated
setup.py
to fix the issue with the missing subfolders.
[0.0.7] - 2025-01-14
Added
Workflow to run tests on all supported Python versions.
Added more test coverage for validators and filters.
Added tracking of coverage in tests. Check it out
New functionality for global filters and validators in
InputFilters
.New functionality to define custom supported methods.
Validator
New
NotInArrayValidator
to check if a value is not in a list.New
NotValidator
to invert the result of another validator.
[0.0.6] - 2025-01-12
Added
New date validators and filters.
Removed
Dropped support for Python 3.6.
[0.0.5] - 2025-01-12
Added
New
condition
functionality between fields. Check it out
Changed
Switched
external_api
config from dict to class. Check it out
[0.0.4] - 2025-01-09
Added
New external API functionality. Check it out