Data validation and settings management using python 3.6 type hinting
Project description
Data validation and settings management using python type hinting.
See documentation for more details.
History
v0.15.0 (2018-11-18)
move codebase to use black, #287 by @samuelcolvin
fix alias use in settings, #286 by @jasonkuhrt and @samuelcolvin
fix datetime parsing in parse_date, #298 by @samuelcolvin
allow dataclass inheritance, fix #293 by @samuelcolvin
fix PyObject = None, fix #305 by @samuelcolvin
allow Pattern type, fix #303 by @samuelcolvin
v0.14.0 (2018-10-02)
dataclasses decorator, #269 by @Gaunt and @samuelcolvin
v0.13.1 (2018-09-21)
fix issue where int_validator doesn’t cast a bool to an int #264 by @nphyatt
add deep copy support for BaseModel.copy() #249, @gangefors
v0.13.0 (2018-08-25)
raise an exception if a field’s name shadows an existing BaseModel attribute #242
add UrlStr and urlstr types #236
timedelta json encoding ISO8601 and total seconds, custom json encoders #247, by @cfkanesan and @samuelcolvin
allow timedelta objects as values for properties of type timedelta (matches datetime etc. behavior) #247
v0.12.1 (2018-07-31)
fix schema generation for fields defined using typing.Any #237
v0.12.0 (2018-07-31)
v0.11.2 (2018-07-05)
v0.11.1 (2018-07-02)
Allow arbitrary types in model #209, thanks @oldPadavan
v0.11.0 (2018-06-28)
v0.10.0 (2018-06-11)
add Config.allow_population_by_alias #160, thanks @bendemaree
breaking change: removed Config.min_number_size and Config.max_number_size #183, thanks @Gr1N
breaking change: correct behaviour of lt and gt arguments to conint etc. #188 for the old behaviour use le and ge #194, thanks @jaheba
added error context and ability to redefine error message templates using Config.error_msg_templates #183, thanks @Gr1N
fix typo in validator exception #150
copy defaults to model values, so different models don’t share objects #154
v0.9.1 (2018-05-10)
v0.9.0 (2018-04-28)
tweak email-validator import error message #145
fix parse error of parse_date() and parse_datetime() when input is 0 #144, thanks @YannLuo
add Config.anystr_strip_whitespace and strip_whitespace kwarg to constr, by default values is False #163, thanks @Gr1N
add ConstrainedFloat, confloat, PositiveFloat and NegativeFloat types #166, thanks @Gr1N
v0.8.0 (2018-03-25)
fix type annotation for inherit_config #139
breaking change: check for invalid field names in validators #140
validate attributes of parent models #141
breaking change: email validation now uses email-validator #142
v0.7.1 (2018-02-07)
fix bug with create_model modifying the base class
v0.7.0 (2018-02-06)
added compatibility with abstract base classes (ABCs) #123
breaking change: rename .config to .__config__ on a model
breaking change: remove deprecated .values() on a model, use .dict() instead
remove use of OrderedDict and use simple dict #126
add Config.use_enum_values #127
add wildcard validators of the form @validate('*') #128
v0.6.4 (2018-02-01)
allow python date and times objects #122
v0.6.3 (2017-11-26)
fix direct install without README.rst present
v0.6.2 (2017-11-13)
errors for invalid validator use
safer check for complex models in Settings
v0.6.1 (2017-11-08)
v0.6.0 (2017-11-07)
v0.5.0 (2017-10-23)
v0.4.0 (2017-07-08)
v0.3.0 (2017-06-21)
immutable models via config.allow_mutation = False, associated cleanup and performance improvement #44
immutable helper methods construct() and copy() #53
allow pickling of models #53
setattr is removed as __setattr__ is now intelligent #44
raise_exception removed, Models now always raise exceptions #44
instance method validators removed
django-restful-framework benchmarks added #47
fix inheritance bug #49
make str type stricter so list, dict etc are not coerced to strings. #52
add StrictStr which only always strings as input #52
v0.2.1 (2017-06-07)
pypi and travis together messed up the deploy of v0.2 this should fix it
v0.2.0 (2017-06-07)
breaking change: values() on a model is now a method not a property, takes include and exclude arguments
allow annotation only fields to support mypy
add pretty to_string(pretty=True) method for models
v0.1.0 (2017-06-03)
add docs
add history
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.