- support Python 3.7 #216, thanks @layday
- Allow arbitrary types in model #209, thanks @oldPadavan
- make
list
,tuple
andset
types stricter #86 - breaking change: remove msgpack parsing #201
- add
FilePath
andDirectoryPath
types #10 - model schema generation #190
- JSON serialisation of models and schemas #133
- add
Config.allow_population_by_alias
#160, thanks @bendemaree - breaking change: new errors format #179, thanks @Gr1N
- breaking change: removed
Config.min_number_size
andConfig.max_number_size
#183, thanks @Gr1N - breaking change: correct behaviour of
lt
andgt
arguments toconint
etc. #188 for the old behaviour usele
andge
#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
- allow custom
get_field_config
on config classes #159 - add
UUID1
,UUID3
,UUID4
andUUID5
types #167, thanks @Gr1N - modify some inconsistent docstrings and annotations #173, thanks @YannLuo
- fix type annotations for exotic types #171, thanks @Gr1N
- re-use type validators in exotic types #171
- scheduled monthly requirements updates #168
- add
Decimal
,ConstrainedDecimal
andcondecimal
types #170, thanks @Gr1N
- tweak email-validator import error message #145
- fix parse error of
parse_date()
andparse_datetime()
when input is 0 #144, thanks @YannLuo - add
Config.anystr_strip_whitespace
andstrip_whitespace
kwarg toconstr
, by default values isFalse
#163, thanks @Gr1N - add
ConstrainedFloat
,confloat
,PositiveFloat
andNegativeFloat
types #166, thanks @Gr1N
- 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
- fix bug with
create_model
modifying the base class
- added compatibility with abstract base classes (ABCs) #123
- add
create_model
method #113 #125 - 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
- allow python date and times objects #122
- fix direct install without
README.rst
present
- errors for invalid validator use
- safer check for complex models in
Settings
- prevent duplicate validators, #101
- add
always
kwarg to validators, #102
- assignment validation #94, thanks petroswork!
- JSON in environment variables for complex types, #96
- add
validator
decorators for complex validation, #97 - depreciate
values(...)
and replace with.dict(...)
, #99
- add
UUID
validation #89 - remove
index
andtrack
from error object (json) if they're null #90 - improve the error text when a list is provided rather than a dict #90
- add benchmarks table to docs #91
- show length in string validation error
- fix aliases in config during inheritance #55
- simplify error display
- use unicode ellipsis in
truncate
- add
parse_obj
,parse_raw
andparse_file
helper functions #58 - switch annotation only fields to come first in fields list not last
- immutable models via
config.allow_mutation = False
, associated cleanup and performance improvement #44 - immutable helper methods
construct()
andcopy()
#53 - allow pickling of models #53
setattr
is removed as__setattr__
is now intelligent #44raise_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
- pypi and travis together messed up the deploy of
v0.2
this should fix it
- breaking change:
values()
on a model is now a method not a property, takesinclude
andexclude
arguments - allow annotation only fields to support mypy
- add pretty
to_string(pretty=True)
method for models
- add docs
- add history