- Update to 1.10.2:
* Prevent long (length > 4_300) strings/bytes as input to int fields, see
python/cpython#95778 and CVE-2020-10735
* fix: dataclass wrapper was not always called
* Use tomllib on Python 3.11 when parsing mypy configuration
* Basic fix of GenericModel cache to detect order of arguments in Union models
* Fix mypy plugin when using bare types like list and dict as default_factory
* Add __hash__ method to pydancic.color.Color class
* Refactor the whole pydantic dataclass decorator to really act like its
standard lib equivalent. It hence keeps __eq__, __hash__, ... and makes
comparison with its non-validated version possible.
* Now that Config.extra is supported, dataclass ignores by default extra
arguments (like BaseModel)
* Fix PEP487 __set_name__ protocol in BaseModel for PrivateAttrs
* Allow for custom parsing of environment variables via parse_env_var in
Config
* Fix StrictStr does not raise ValidationError when max_length is present
in Field
* Make SecretStr and SecretBytes hashable
* Fix StrictBytes does not raise ValidationError when max_length is present
in Field
* Add support for bare type
* Support Python 3.11, including binaries for 3.11 in PyPI
* Add support for re.Pattern
* Fix __post_init_post_parse__ is incorrectly passed keyword arguments when
no __post_init__ is defined
* Fix implicitly importing ForwardRef and Callable from pydantic.typing
instead of typing and also expose MappingIntStrAny
* remove Any types from the dataclass decorator so it can be used with the
disallow_any_expr mypy option
OBS-URL: https://build.opensuse.org/request/show/1002215
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pydantic?expand=0&rev=14
* Prevent long (length > 4_300) strings/bytes as input to int fields, see
python/cpython#95778 and CVE-2020-10735
* fix: dataclass wrapper was not always called
* Use tomllib on Python 3.11 when parsing mypy configuration
* Basic fix of GenericModel cache to detect order of arguments in Union models
* Fix mypy plugin when using bare types like list and dict as default_factory
* Add __hash__ method to pydancic.color.Color class
* Refactor the whole pydantic dataclass decorator to really act like its
standard lib equivalent. It hence keeps __eq__, __hash__, ... and makes
comparison with its non-validated version possible.
* Now that Config.extra is supported, dataclass ignores by default extra
arguments (like BaseModel)
* Fix PEP487 __set_name__ protocol in BaseModel for PrivateAttrs
* Allow for custom parsing of environment variables via parse_env_var in
Config
* Fix StrictStr does not raise ValidationError when max_length is present
in Field
* Make SecretStr and SecretBytes hashable
* Fix StrictBytes does not raise ValidationError when max_length is present
in Field
* Add support for bare type
* Support Python 3.11, including binaries for 3.11 in PyPI
* Add support for re.Pattern
* Fix __post_init_post_parse__ is incorrectly passed keyword arguments when
no __post_init__ is defined
* Fix implicitly importing ForwardRef and Callable from pydantic.typing
instead of typing and also expose MappingIntStrAny
* remove Any types from the dataclass decorator so it can be used with the
disallow_any_expr mypy option
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pydantic?expand=0&rev=26
- Update to 1.8.2 (bsc#1186019, CVE-2021-29510)
* Security fix: Fix date and datetime parsing so passing either 'infinity'
or float('inf') (or their negative values) does not cause an infinite loop
* Allow passing json_encoders in class kwargs
* support arbitrary types with custom __eq__
* Hypothesis plugin for testing
* support for NamedTuple and TypedDict
* Support Annotated hints on model fields
* frozen parameter on Config to allow models to be hashed
* Breaking Change, remove old deprecation aliases from v1
* Breaking Change: always validate only first sublevel items with each_item
* many more changes, see upstream changelog
OBS-URL: https://build.opensuse.org/request/show/892675
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pydantic?expand=0&rev=18
- Update to version 1.5
* Make includes/excludes arguments for .dict(), ._iter(), ...,
immutable
* Always use a field's real name with includes/excludes in
model._iter(), regardless of by_alias, #1397 by @AlexECX
* Update constr regex example to include start and end lines,
* Confirm that shallow model.copy() does make a shallow copy of
attributes
* Renaming model_name argument of main.create_model()
to __model_name to allow using model_name as a field name
* Replace raising of exception to silent passing for non-Var
attributes in mypy plugin
* Remove typing_extensions dependency for python 3.8
* Make SecretStr and SecretBytes initialization idempotent
* document making secret types dumpable using the json method
* fix card number length check in PaymentCardNumber,
PaymentCardBrand now inherits from str
* Have BaseModel inherit from Representation to make mypy happy
when overriding __str__
* Allow None as input to all optional list fields
* Add datetime field to default_factory example
* Allow subclasses of known types to be encoded with superclass
encoder
* Exclude exported fields from all elements of a list/tuple of
submodels/dicts with '__all__', #1286 by @masalim2
* Add pydantic.color.Color objects as available input for Color
fields
* In examples, type nullable fields as Optional, so that these
are valid mypy annotations
* Make pattern_validator() accept pre-compiled Pattern objects.
OBS-URL: https://build.opensuse.org/request/show/795387
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pydantic?expand=0&rev=6
- Update to version 1.4
* rename Schema to Field, make it a function to placate mypy
* Implement root_validator and rename root errors from __obj__ to __root__
* Added initvars support to post_init_post_parse
* complete rewrite of URL parsing logic
* BaseSettings now uses the special env settings to define which
environment variables to read, not aliases
* add support for assert statements inside validators
* Change the precedence of aliases so child model aliases override
parent aliases, including using alias_generator
* Add a mypy plugin for type checking BaseModel.__init__ and more
* Add support for typing.Literal for Python 3.8
* Add a ByteSize type for converting byte string (1GB) to plain bytes
* Add support for required Optional with name: Optional[AnyType] = Field(...)
and refactor ModelField creation to preserve required parameter value
* Add __eq__ to SecretStr and SecretBytes to allow "value equals"
* Add support for nested generic models
* alias precedence logic changed so aliases on a field always take
priority over an alias from alias_generator
* many more fixes and improvements
OBS-URL: https://build.opensuse.org/request/show/786480
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pydantic?expand=0&rev=4