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.17.0 (unreleased)
prevent validators being called repeatedly after inheritance, #327 by @samuelcolvin
prevent duplicate validator check in ipython, fix #312 by @samuelcolvin
add “Using Pydantic” section to docs, #323 by @tiangolo & #326 by @samuelcolvin
fix schema generation for fields annotated as : dict, : list, : tuple and : set, #330 & #335 by @nkonin
add support for constrained strings as dict keys in schema, #332 by @tiangolo
support for passing Config class in dataclasses decorator, #276 by @jarekkar (breaking change: this supersedes the validate_assignment argument with config)
support for nested dataclasses, #334 by @samuelcolvin
better errors when getting an ImportError with PyObject, #309 by @samuelcolvin
rename get_validators to __get_validators__, deprecation warning on use of old name, #338 by @samuelcolvin
support ClassVar by excluding such attributes from fields, #184 by @samuelcolvin
v0.16.1 (2018-12-10)
fix create_model to correctly use the passed __config__, #320 by @hugoduncan
v0.16.0 (2018-12-03)
breaking change: refactor schema generation to be compatible with JSON Schema and OpenAPI specs, #308 by @tiangolo
add schema to schema module to generate top-level schemas from base models, #308 by @tiangolo
add additional fields to Schema class to declare validation for str and numeric values, #311 by @tiangolo
rename _schema to schema on fields, #318 by @samuelcolvin
add case_insensitive option to BaseSettings Config, #277 by @jasonkuhrt
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.
Source Distribution
Built Distribution
File details
Details for the file pydantic-0.17.tar.gz
.
File metadata
- Download URL: pydantic-0.17.tar.gz
- Upload date:
- Size: 33.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2ae265d717a9f117c5f89b1e5c5cb1565ac7e9b329207fd191cb4ac7a9ed79a9 |
|
MD5 | 2c6e8098cbc2a457e68cffb221159fc0 |
|
BLAKE2b-256 | bfe16f5f50fafdde0158f4e646ee778fe8313f299fcf9210f949950c076cc954 |
File details
Details for the file pydantic-0.17-py36-none-any.whl
.
File metadata
- Download URL: pydantic-0.17-py36-none-any.whl
- Upload date:
- Size: 38.7 kB
- Tags: Python 3.6
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae6c3013d430bcbcbbc9f971cdd1870ce3b599873f14b2b525044e0d335fd55e |
|
MD5 | 94da9e09ea40a3d7b4ce8d380824d6b8 |
|
BLAKE2b-256 | f600626c711ce35472ef35f57215372606ab1978511a290b04e086febdba4b12 |