Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update pydantic to 2.7.1 #7271

Closed
wants to merge 1 commit into from

Conversation

pyup-bot
Copy link
Collaborator

This PR updates pydantic from 2.5.2 to 2.7.1.

Changelog

2.7.1

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.7.1)

What's Changed

Packaging

* Bump `pydantic-core` to `v2.18.2` by sydney-runkle in [9307](https://github.com/pydantic/pydantic/pull/9307)

New Features

* Ftp and Websocket connection strings support by CherrySuryp in [9205](https://github.com/pydantic/pydantic/pull/9205)

Changes

* Use field description for RootModel schema description when there is `…` by LouisGobert in [9214](https://github.com/pydantic/pydantic/pull/9214)

Fixes

* Fix `validation_alias` behavior with `model_construct` for `AliasChoices` and `AliasPath` by sydney-runkle in [9223](https://github.com/pydantic/pydantic/pull/9223)
* Revert `typing.Literal` and import it outside the TYPE_CHECKING block by frost-nzcr4 in [9232](https://github.com/pydantic/pydantic/pull/9232)
* Fix `Secret` serialization schema, applicable for unions by sydney-runkle in [9240](https://github.com/pydantic/pydantic/pull/9240)
* Fix `strict` application to `function-after` with `use_enum_values` by sydney-runkle in [9279](https://github.com/pydantic/pydantic/pull/9279)
* Address case where `model_construct` on a class which defines `model_post_init` fails with `AttributeError` by babygrimes in [9168](https://github.com/pydantic/pydantic/pull/9168)
* Fix `model_json_schema` with config types by NeevCohen in [9287](https://github.com/pydantic/pydantic/pull/9287)
* Support multiple zeros as an `int` by samuelcolvin in [pydantic/pydantic-core1269](https://github.com/pydantic/pydantic-core/pull/1269)
* Fix validation of `int`s with leading unary plus by cknv in [pydantic/pydantic-core1272](https://github.com/pydantic/pydantic-core/pull/1272)
* Fix interaction between `extra != 'ignore'` and `from_attributes=True` by davidhewitt in [pydantic/pydantic-core1276](https://github.com/pydantic/pydantic-core/pull/1276)
* Handle error from `Enum`'s `missing` function as `ValidationError` by sydney-runkle in [pydantic/pydantic-core1274](https://github.com/pydantic/pydantic-core/pull/1754)
* Fix memory leak with `Iterable` validation by davidhewitt in [pydantic/pydantic-core1271](https://github.com/pydantic/pydantic-core/pull/1751)

New Contributors

* zzstoatzz made their first contribution in [9219](https://github.com/pydantic/pydantic/pull/9219)
* frost-nzcr4 made their first contribution in [9232](https://github.com/pydantic/pydantic/pull/9232)
* CherrySuryp made their first contribution in [9205](https://github.com/pydantic/pydantic/pull/9205)
* vagenas made their first contribution in [9268](https://github.com/pydantic/pydantic/pull/9268)
* ollz272 made their first contribution in [9262](https://github.com/pydantic/pydantic/pull/9262)
* babygrimes made their first contribution in [9168](https://github.com/pydantic/pydantic/pull/9168)
* swelborn made their first contribution in [9296](https://github.com/pydantic/pydantic/pull/9296)
* kf-novi made their first contribution in [9236](https://github.com/pydantic/pydantic/pull/9236)
* lgeiger made their first contribution in [9288](https://github.com/pydantic/pydantic/pull/9288)

2.7.0

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.7.0)

The code released in v2.7.0 is practically identical to that of v2.7.0b1.

What's Changed

Packaging

* Reorganize `pyproject.toml` sections by Viicos in [8899](https://github.com/pydantic/pydantic/pull/8899)
* Bump `pydantic-core` to `v2.18.1` by sydney-runkle in [9211](https://github.com/pydantic/pydantic/pull/9211)
* Adopt `jiter` `v0.2.0` by samuelcolvin in [pydantic/pydantic-core1250](https://github.com/pydantic/pydantic-core/pull/1250)

New Features

* Extract attribute docstrings from `FieldInfo.description` by Viicos in [6563](https://github.com/pydantic/pydantic/pull/6563)
* Add a `with_config` decorator to comply with typing spec by Viicos in [8611](https://github.com/pydantic/pydantic/pull/8611)
* Allow an optional separator splitting the value and unit of the result of `ByteSize.human_readable` by jks15satoshi in [8706](https://github.com/pydantic/pydantic/pull/8706)
* Add generic `Secret` base type by conradogarciaberrotaran in [8519](https://github.com/pydantic/pydantic/pull/8519)
* Make use of `Sphinx` inventories for cross references in docs by Viicos in [8682](https://github.com/pydantic/pydantic/pull/8682)
* Add environment variable to disable plugins by geospackle in [8767](https://github.com/pydantic/pydantic/pull/8767)
* Add support for `deprecated` fields by Viicos in [8237](https://github.com/pydantic/pydantic/pull/8237)
* Allow `field_serializer('*')` by ornariece in [9001](https://github.com/pydantic/pydantic/pull/9001)
* Handle a case when `model_config` is defined as a model property by alexeyt101 in [9004](https://github.com/pydantic/pydantic/pull/9004)
* Update `create_model()` to support `typing.Annotated` as input by wannieman98 in [8947](https://github.com/pydantic/pydantic/pull/8947)
* Add `ClickhouseDsn` support by solidguy7 in [9062](https://github.com/pydantic/pydantic/pull/9062)
* Add support for `re.Pattern[str]` to `pattern` field by jag-k in [9053](https://github.com/pydantic/pydantic/pull/9053)
* Support for `serialize_as_any` runtime setting by sydney-runkle in [8830](https://github.com/pydantic/pydantic/pull/8830)
* Add support for `typing.Self` by Youssefares in [9023](https://github.com/pydantic/pydantic/pull/9023)
* Ability to pass `context` to serialization by ornariece in [8965](https://github.com/pydantic/pydantic/pull/8965)
* Add feedback widget to docs with flarelytics integration by sydney-runkle in [9129](https://github.com/pydantic/pydantic/pull/9129)
* Support for parsing partial JSON strings in Python by samuelcolvin in [pydantic/jiter66](https://github.com/pydantic/jiter/pull/66)

2.7.0b1

Pre-release, see [the GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.7.0b1) for details.

2.6.4

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.6.4)

What's Changed

Fixes

* Fix usage of `AliasGenerator` with `computed_field` decorator by sydney-runkle in [8806](https://github.com/pydantic/pydantic/pull/8806)
* Fix nested discriminated union schema gen, pt 2 by sydney-runkle in [8932](https://github.com/pydantic/pydantic/pull/8932)
* Fix bug with no_strict_optional=True caused by API deferral by dmontagu in [8826](https://github.com/pydantic/pydantic/pull/8826)

2.6.3

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.6.3)

What's Changed

Packaging

* Update `pydantic-settings` version in the docs by hramezani in [8906](https://github.com/pydantic/pydantic/pull/8906)

Fixes

* Fix discriminated union schema gen bug by sydney-runkle in [8904](https://github.com/pydantic/pydantic/pull/8904)

2.6.2

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.6.2)

What's Changed

Packaging

* Upgrade to `pydantic-core` 2.16.3 by sydney-runkle in [8879](https://github.com/pydantic/pydantic/pull/8879)

Fixes

* 'YYYY-MM-DD' date string coerced to datetime shouldn't infer timezone by sydney-runkle in [pydantic/pydantic-core1193](https://github.com/pydantic/pydantic-core/pull/1193)

2.6.1

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.6.1)

What's Changed

Packaging

* Upgrade to `pydantic-core` 2.16.2 by sydney-runkle in [8717](https://github.com/pydantic/pydantic/pull/8717)

Fixes

* Fix bug with `mypy` plugin and `no_strict_optional = True` by dmontagu in [8666](https://github.com/pydantic/pydantic/pull/8666)
* Fix `ByteSize` error `type` change by sydney-runkle in [8681](https://github.com/pydantic/pydantic/pull/8681)
* Fix inheriting `Field` annotations in dataclasses by sydney-runkle in [8679](https://github.com/pydantic/pydantic/pull/8679)
* Fix regression in core schema generation for indirect definition references by dmontagu in [8702](https://github.com/pydantic/pydantic/pull/8702)
* Fix unsupported types bug with `PlainValidator` by sydney-runkle in [8710](https://github.com/pydantic/pydantic/pull/8710)
* Reverting problematic fix from 2.6 release, fixing schema building bug by sydney-runkle in [8718](https://github.com/pydantic/pydantic/pull/8718)
* Fix warning for tuple of wrong size in `Union` by davidhewitt in [pydantic/pydantic-core1174](https://github.com/pydantic/pydantic-core/pull/1174)
* Fix `computed_field` JSON serializer `exclude_none` behavior by sydney-runkle in [pydantic/pydantic-core1187](https://github.com/pydantic/pydantic-core/pull/1187)

2.6.0

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.6.0)

The code released in v2.6.0 is practically identical to that of v2.6.0b1.

What's Changed

Packaging

* Check for `email-validator` version >= 2.0 by commonism in [6033](https://github.com/pydantic/pydantic/pull/6033)
* Upgrade `ruff`` target version to Python 3.8 by Elkiwa in [8341](https://github.com/pydantic/pydantic/pull/8341)
* Update to `pydantic-extra-types==2.4.1` by yezz123 in [8478](https://github.com/pydantic/pydantic/pull/8478)
* Update to `pyright==1.1.345` by Viicos in [8453](https://github.com/pydantic/pydantic/pull/8453)
* Update pydantic-core from 2.14.6 to 2.16.1, significant changes from these updates are described below, full changelog [here](https://github.com/pydantic/pydantic-core/compare/v2.14.6...v2.16.1)

New Features

* Add `NatsDsn` by ekeew in [6874](https://github.com/pydantic/pydantic/pull/6874)
* Add `ConfigDict.ser_json_inf_nan` by davidhewitt in [8159](https://github.com/pydantic/pydantic/pull/8159)
* Add `types.OnErrorOmit` by adriangb in [8222](https://github.com/pydantic/pydantic/pull/8222)
* Support `AliasGenerator` usage by sydney-runkle in [8282](https://github.com/pydantic/pydantic/pull/8282)
* Add Pydantic People Page to docs by sydney-runkle in [8345](https://github.com/pydantic/pydantic/pull/8345)
* Support `yyyy-MM-DD` datetime parsing by sydney-runkle in [8404](https://github.com/pydantic/pydantic/pull/8404)
* Added bits conversions to the `ByteSize` class 8415 by luca-matei in [8507](https://github.com/pydantic/pydantic/pull/8507)
* Enable json schema creation with type `ByteSize` by geospackle in [8537](https://github.com/pydantic/pydantic/pull/8537)
* Add `eval_type_backport` to handle union operator and builtin generic subscripting in older Pythons by alexmojaki in [8209](https://github.com/pydantic/pydantic/pull/8209)
* Add support for `dataclass` fields `init` by dmontagu in [8552](https://github.com/pydantic/pydantic/pull/8552)
* Implement pickling for `ValidationError` by davidhewitt in [pydantic/pydantic-core1119](https://github.com/pydantic/pydantic-core/pull/1119)
* Add unified tuple validator that can handle "variadic" tuples via PEP-646 by dmontagu in [pydantic/pydantic-core865](https://github.com/pydantic/pydantic-core/pull/865)

Changes

* Drop Python3.7 support by hramezani in [7188](https://github.com/pydantic/pydantic/pull/7188)
* Drop Python 3.7, and PyPy 3.7 and 3.8 by davidhewitt in [pydantic/pydantic-core1129](https://github.com/pydantic/pydantic-core/pull/1129)
* Use positional-only `self` in `BaseModel` constructor, so no field name can ever conflict with it by ariebovenberg in [8072](https://github.com/pydantic/pydantic/pull/8072)
* Make `validate_call` return a function instead of a custom descriptor - fixes binding issue with inheritance and adds `self/cls` argument to validation errors by alexmojaki in [8268](https://github.com/pydantic/pydantic/pull/8268)
* Exclude `BaseModel` docstring from JSON schema description by sydney-runkle in [8352](https://github.com/pydantic/pydantic/pull/8352)
* Introducing `classproperty` decorator for `model_computed_fields` by Jocelyn-Gas in [8437](https://github.com/pydantic/pydantic/pull/8437)
* Explicitly raise an error if field names clashes with types by Viicos in [8243](https://github.com/pydantic/pydantic/pull/8243)
* Use stricter serializer for unions of simple types by alexdrydew [pydantic/pydantic-core1132](https://github.com/pydantic/pydantic-core/pull/1132)

Performance

* Add Codspeed profiling Actions workflow  by lambertsbennett in [8054](https://github.com/pydantic/pydantic/pull/8054)
* Improve `int` extraction by samuelcolvin in [pydantic/pydantic-core1155](https://github.com/pydantic/pydantic-core/pull/1155)
* Improve performance of recursion guard by samuelcolvin in [pydantic/pydantic-core1156](https://github.com/pydantic/pydantic-core/pull/1156)
* `dataclass` serialization speedups by samuelcolvin in [pydantic/pydantic-core1162](https://github.com/pydantic/pydantic-core/pull/1162)
* Avoid `HashMap` creation when looking up small JSON objects in `LazyIndexMaps` by samuelcolvin in [pydantic/jiter55](https://github.com/pydantic/jiter/pull/55)
* use hashbrown to speedup python string caching by davidhewitt in [pydantic/jiter51](https://github.com/pydantic/jiter/pull/51)
* Replace `Peak` with more efficient `Peek` by davidhewitt in [pydantic/jiter48](https://github.com/pydantic/jiter/pull/48)

Fixes

* Move `getattr` warning in deprecated `BaseConfig` by tlambert03 in [7183](https://github.com/pydantic/pydantic/pull/7183)
* Only hash `model_fields`, not whole `__dict__` by alexmojaki in [7786](https://github.com/pydantic/pydantic/pull/7786)
* Fix mishandling of unions while freezing types in the `mypy` plugin by dmontagu in [7411](https://github.com/pydantic/pydantic/pull/7411)
* Fix `mypy` error on untyped `ClassVar` by vincent-hachin-wmx in [8138](https://github.com/pydantic/pydantic/pull/8138)
* Only compare pydantic fields in `BaseModel.__eq__` instead of whole `__dict__` by QuentinSoubeyranAqemia in [7825](https://github.com/pydantic/pydantic/pull/7825)
* Update `strict` docstring in `model_validate` method. by LukeTonin in [8223](https://github.com/pydantic/pydantic/pull/8223)
* Fix overload position of `computed_field` by Viicos in [8227](https://github.com/pydantic/pydantic/pull/8227)
* Fix custom type type casting used in multiple attributes by ianhfc in [8066](https://github.com/pydantic/pydantic/pull/8066)
* Fix issue not allowing `validate_call` decorator to be dynamically assigned to a class method by jusexton in [8249](https://github.com/pydantic/pydantic/pull/8249)
* Fix issue `unittest.mock` deprecation warnings  by ibleedicare in [8262](https://github.com/pydantic/pydantic/pull/8262)
* Added tests for the case `JsonValue` contains subclassed primitive values by jusexton in [8286](https://github.com/pydantic/pydantic/pull/8286)
* Fix `mypy` error on free before validator (classmethod) by sydney-runkle in [8285](https://github.com/pydantic/pydantic/pull/8285)
* Fix `to_snake` conversion by jevins09 in [8316](https://github.com/pydantic/pydantic/pull/8316)
* Fix type annotation of `ModelMetaclass.__prepare__` by slanzmich in [8305](https://github.com/pydantic/pydantic/pull/8305)
* Disallow `config` specification when initializing a `TypeAdapter` when the annotated type has config already by sydney-runkle in [8365](https://github.com/pydantic/pydantic/pull/8365)
* Fix a naming issue with JSON schema for generics parametrized by recursive type aliases by dmontagu in [8389](https://github.com/pydantic/pydantic/pull/8389)
* Fix type annotation in pydantic people script by shenxiangzhuang in [8402](https://github.com/pydantic/pydantic/pull/8402)
* Add support for field `alias` in `dataclass` signature by NeevCohen in [8387](https://github.com/pydantic/pydantic/pull/8387)
* Fix bug with schema generation with `Field(...)` in a forward ref by dmontagu in [8494](https://github.com/pydantic/pydantic/pull/8494)
* Fix ordering of keys in `__dict__` with `model_construct` call by sydney-runkle in [8500](https://github.com/pydantic/pydantic/pull/8500)
* Fix module `path_type` creation when globals does not contain `__name__` by hramezani in [8470](https://github.com/pydantic/pydantic/pull/8470)
* Fix for namespace issue with dataclasses with `from __future__ import annotations` by sydney-runkle in [8513](https://github.com/pydantic/pydantic/pull/8513)
* Fix: make function validator types positional-only by pmmmwh in [8479](https://github.com/pydantic/pydantic/pull/8479)
* Fix usage of `deprecated` by Viicos in [8294](https://github.com/pydantic/pydantic/pull/8294)
* Add more support for private attributes in `model_construct` call by sydney-runkle in [8525](https://github.com/pydantic/pydantic/pull/8525)
* Use a stack for the types namespace by dmontagu in [8378](https://github.com/pydantic/pydantic/pull/8378)
* Fix schema-building bug with `TypeAliasType` for types with refs by dmontagu in [8526](https://github.com/pydantic/pydantic/pull/8526)
* Support `pydantic.Field(repr=False)` in dataclasses by tigeryy2 in [8511](https://github.com/pydantic/pydantic/pull/8511)
* Override `dataclass_transform` behavior for `RootModel` by Viicos in [8163](https://github.com/pydantic/pydantic/pull/8163)
* Refactor signature generation for simplicity by sydney-runkle in [8572](https://github.com/pydantic/pydantic/pull/8572)
* Fix ordering bug of PlainValidator annotation by Anvil in [8567](https://github.com/pydantic/pydantic/pull/8567)
* Fix `exclude_none` for json serialization of `computed_field`s by sydney-runkle in [pydantic/pydantic-core1098](https://github.com/pydantic/pydantic-core/pull/1098)
* Support yyyy-MM-DD string for datetimes by sydney-runkle in [pydantic/pydantic-core1124](https://github.com/pydantic/pydantic-core/pull/1124)
* Tweak ordering of definitions in generated schemas by StrawHatDrag0n in [8583](https://github.com/pydantic/pydantic/pull/8583)


New Contributors

`pydantic`
* ekeew made their first contribution in [6874](https://github.com/pydantic/pydantic/pull/6874)
* lambertsbennett made their first contribution in [8054](https://github.com/pydantic/pydantic/pull/8054)
* vincent-hachin-wmx made their first contribution in [8138](https://github.com/pydantic/pydantic/pull/8138)
* QuentinSoubeyranAqemia made their first contribution in [7825](https://github.com/pydantic/pydantic/pull/7825)
* ariebovenberg made their first contribution in [8072](https://github.com/pydantic/pydantic/pull/8072)
* LukeTonin made their first contribution in [8223](https://github.com/pydantic/pydantic/pull/8223)
* denisart made their first contribution in [8231](https://github.com/pydantic/pydantic/pull/8231)
* ianhfc made their first contribution in [8066](https://github.com/pydantic/pydantic/pull/8066)
* eonu made their first contribution in [8255](https://github.com/pydantic/pydantic/pull/8255)
* amandahla made their first contribution in [8263](https://github.com/pydantic/pydantic/pull/8263)
* ibleedicare made their first contribution in [8262](https://github.com/pydantic/pydantic/pull/8262)
* jevins09 made their first contribution in [8316](https://github.com/pydantic/pydantic/pull/8316)
* cuu508 made their first contribution in [8322](https://github.com/pydantic/pydantic/pull/8322)
* slanzmich made their first contribution in [8305](https://github.com/pydantic/pydantic/pull/8305)
* jensenbox made their first contribution in [8331](https://github.com/pydantic/pydantic/pull/8331)
* szepeviktor made their first contribution in [8356](https://github.com/pydantic/pydantic/pull/8356)
* Elkiwa made their first contribution in [8341](https://github.com/pydantic/pydantic/pull/8341)
* parhamfh made their first contribution in [8395](https://github.com/pydantic/pydantic/pull/8395)
* shenxiangzhuang made their first contribution in [8402](https://github.com/pydantic/pydantic/pull/8402)
* NeevCohen made their first contribution in [8387](https://github.com/pydantic/pydantic/pull/8387)
* zby made their first contribution in [8497](https://github.com/pydantic/pydantic/pull/8497)
* patelnets made their first contribution in [8491](https://github.com/pydantic/pydantic/pull/8491)
* edwardwli made their first contribution in [8503](https://github.com/pydantic/pydantic/pull/8503)
* luca-matei made their first contribution in [8507](https://github.com/pydantic/pydantic/pull/8507)
* Jocelyn-Gas made their first contribution in [8437](https://github.com/pydantic/pydantic/pull/8437)
* bL34cHig0 made their first contribution in [8501](https://github.com/pydantic/pydantic/pull/8501)
* tigeryy2 made their first contribution in [8511](https://github.com/pydantic/pydantic/pull/8511)
* geospackle made their first contribution in [8537](https://github.com/pydantic/pydantic/pull/8537)
* Anvil made their first contribution in [8567](https://github.com/pydantic/pydantic/pull/8567)
* hungtsetse made their first contribution in [8546](https://github.com/pydantic/pydantic/pull/8546)
* StrawHatDrag0n made their first contribution in [8583](https://github.com/pydantic/pydantic/pull/8583)

`pydantic-core`
* mariuswinger made their first contribution in [pydantic/pydantic-core1087](https://github.com/pydantic/pydantic-core/pull/1087)
* adamchainz made their first contribution in [pydantic/pydantic-core1090](https://github.com/pydantic/pydantic-core/pull/1090)
* akx made their first contribution in [pydantic/pydantic-core1123](https://github.com/pydantic/pydantic-core/pull/1123)

2.6.0b1

Pre-release, see [the GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.6.0b1) for details.

2.5.3

[GitHub release](https://github.com/pydantic/pydantic/releases/tag/v2.5.3)

What's Changed

Packaging

* uprev `pydantic-core` to 2.14.6

Fixes

* Fix memory leak with recursive definitions creating reference cycles by davidhewitt in [pydantic/pydantic-core1125](https://github.com/pydantic/pydantic-core/pull/1125)
Links

@pyup-bot
Copy link
Collaborator Author

Closing this in favor of #7424

@pyup-bot pyup-bot closed this May 28, 2024
@Harmon758 Harmon758 deleted the pyup-update-pydantic-2.5.2-to-2.7.1 branch May 28, 2024 19:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant