Closed renovate[bot] closed 3 months ago
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 84.11%. Comparing base (
ba40907
) to head (121cf65
). Report is 3 commits behind head on main.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
This PR contains the following updates:
==2.6.3
->==2.8.2
Release Notes
pydantic/pydantic (pydantic)
### [`v2.8.2`](https://togithub.com/pydantic/pydantic/releases/tag/v2.8.2): (2024-07-03) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.8.1...v2.8.2) #### What's Changed ##### Fixes - Fix issue with assertion caused by pluggable schema validator by [@dmontagu](https://togithub.com/dmontagu) in [#9838](https://togithub.com/pydantic/pydantic/pull/9838) **Full Changelog**: https://github.com/pydantic/pydantic/compare/v2.8.1...v2.8.2 ### [`v2.8.1`](https://togithub.com/pydantic/pydantic/releases/tag/v2.8.1): (2024-07-03) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.8.0...v2.8.1) #### What's Changed ##### Packaging - Bump `ruff` to `v0.5.0` and `pyright` to `v1.1.369` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [https://github.com/pydantic/pydantic/pull/9801](https://togithub.com/pydantic/pydantic/pull/9801) - Bump `pydantic-core` to `v2.20.1`, `pydantic-extra-types` to `v2.9.0` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [https://github.com/pydantic/pydantic/pull/9832](https://togithub.com/pydantic/pydantic/pull/9832) ##### Fixes - Fix breaking change in `to_snake` from v2.7 -> v2.8 by [@sydney-runkle](https://togithub.com/sydney-runkle) in [https://github.com/pydantic/pydantic/pull/9812](https://togithub.com/pydantic/pydantic/pull/9812) - Fix list constraint json schema application by [@sydney-runkle](https://togithub.com/sydney-runkle) in [https://github.com/pydantic/pydantic/pull/9818](https://togithub.com/pydantic/pydantic/pull/9818) - Fix issue with assertion caused by pluggable schema validator by [@dmontagu](https://togithub.com/dmontagu) in [https://github.com/pydantic/pydantic/pull/9838](https://togithub.com/pydantic/pydantic/pull/9838) #### New Contributors - [@kwint](https://togithub.com/kwint) made their first contribution in [https://github.com/pydantic/pydantic/pull/9787](https://togithub.com/pydantic/pydantic/pull/9787) - [@seekinginfiniteloop](https://togithub.com/seekinginfiniteloop) made their first contribution in [https://github.com/pydantic/pydantic/pull/9822](https://togithub.com/pydantic/pydantic/pull/9822) **Full Changelog**: https://github.com/pydantic/pydantic/compare/v2.8.0...v2.8.1 ### [`v2.8.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v280-2024-07-01) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.7.4...v2.8.0) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.8.0) The code released in v2.8.0 is functionally identical to that of v2.8.0b1. ##### What's Changed ##### Packaging - Update citation version automatically with new releases by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9673](https://togithub.com/pydantic/pydantic/pull/9673) - Bump pyright to `v1.1.367` and add type checking tests for pipeline API by [@adriangb](https://togithub.com/adriangb) in [#9674](https://togithub.com/pydantic/pydantic/pull/9674) - Update `pydantic.v1` stub to `v1.10.17` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9707](https://togithub.com/pydantic/pydantic/pull/9707) - General package updates to prep for `v2.8.0b1` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9741](https://togithub.com/pydantic/pydantic/pull/9741) - Bump `pydantic-core` to `v2.20.0` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9745](https://togithub.com/pydantic/pydantic/pull/9745) - Add support for Python 3.13 by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9743](https://togithub.com/pydantic/pydantic/pull/9743) - Update `pdm` version used for `pdm.lock` to v2.16.1 by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9761](https://togithub.com/pydantic/pydantic/pull/9761) - Update to `ruff` `v0.4.8` by [@Viicos](https://togithub.com/Viicos) in [#9585](https://togithub.com/pydantic/pydantic/pull/9585) ##### New Features - Experimental: support `defer_build` for `TypeAdapter` by [@MarkusSintonen](https://togithub.com/MarkusSintonen) in [#8939](https://togithub.com/pydantic/pydantic/pull/8939) - Implement `deprecated` field in json schema by [@NeevCohen](https://togithub.com/NeevCohen) in [#9298](https://togithub.com/pydantic/pydantic/pull/9298) - Experimental: Add pipeline API by [@adriangb](https://togithub.com/adriangb) in [#9459](https://togithub.com/pydantic/pydantic/pull/9459) - Add support for programmatic title generation by [@NeevCohen](https://togithub.com/NeevCohen) in [#9183](https://togithub.com/pydantic/pydantic/pull/9183) - Implement `fail_fast` feature by [@uriyyo](https://togithub.com/uriyyo) in [#9708](https://togithub.com/pydantic/pydantic/pull/9708) - Add `ser_json_inf_nan='strings'` mode to produce valid JSON by [@josh-newman](https://togithub.com/josh-newman) in [pydantic/pydantic-core#1307](https://togithub.com/pydantic/pydantic-core/pull/1307) ##### Changes - Add warning when "alias" is set in ignored `Annotated` field by [@nix010](https://togithub.com/nix010) in [#9170](https://togithub.com/pydantic/pydantic/pull/9170) - Support serialization of some serializable defaults in JSON schema by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9624](https://togithub.com/pydantic/pydantic/pull/9624) - Relax type specification for `__validators__` values in `create_model` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9697](https://togithub.com/pydantic/pydantic/pull/9697) - **Breaking Change:** Improve `smart` union matching logic by [@sydney-runkle](https://togithub.com/sydney-runkle) in [pydantic/pydantic-core#1322](https://togithub.com/pydantic/pydantic-core/pull/1322) You can read more about our `smart` union matching logic [here](https://docs.pydantic.dev/dev/concepts/unions/#smart-mode). In some cases, if the old behavior is desired, you can switch to `left-to-right` mode and change the order of your `Union` members. ##### Performance ##### Internal Improvements - ⚡️ Speed up `_display_error_loc()` by 25% in `pydantic/v1/error_wrappers.py` by [@misrasaurabh1](https://togithub.com/misrasaurabh1) in [#9653](https://togithub.com/pydantic/pydantic/pull/9653) - ⚡️ Speed up `_get_all_json_refs()` by 34% in `pydantic/json_schema.py` by [@misrasaurabh1](https://togithub.com/misrasaurabh1) in [#9650](https://togithub.com/pydantic/pydantic/pull/9650) - ⚡️ Speed up `is_pydantic_dataclass()` by 41% in `pydantic/dataclasses.py` by [@misrasaurabh1](https://togithub.com/misrasaurabh1) in [#9652](https://togithub.com/pydantic/pydantic/pull/9652) - ⚡️ Speed up `to_snake()` by 27% in `pydantic/alias_generators.py` by [@misrasaurabh1](https://togithub.com/misrasaurabh1) in [#9747](https://togithub.com/pydantic/pydantic/pull/9747) - ⚡️ Speed up `unwrap_wrapped_function()` by 93% in `pydantic/_internal/_decorators.py` by [@misrasaurabh1](https://togithub.com/misrasaurabh1) in [#9727](https://togithub.com/pydantic/pydantic/pull/9727) ##### Fixes - Replace `__spec__.parent` with `__package__` by [@hramezani](https://togithub.com/hramezani) in [#9331](https://togithub.com/pydantic/pydantic/pull/9331) - Fix Outputted Model JSON Schema for `Sequence` type by [@anesmemisevic](https://togithub.com/anesmemisevic) in [#9303](https://togithub.com/pydantic/pydantic/pull/9303) - Fix typing of `_frame_depth` by [@Viicos](https://togithub.com/Viicos) in [#9353](https://togithub.com/pydantic/pydantic/pull/9353) - Make `ImportString` json schema compatible by [@amitschang](https://togithub.com/amitschang) in [#9344](https://togithub.com/pydantic/pydantic/pull/9344) - Hide private attributes (`PrivateAttr`) from `__init__` signature in type checkers by [@idan22moral](https://togithub.com/idan22moral) in [#9293](https://togithub.com/pydantic/pydantic/pull/9293) - Make detection of `TypeVar` defaults robust to the CPython `PEP-696` implementation by [@AlexWaygood](https://togithub.com/AlexWaygood) in [#9426](https://togithub.com/pydantic/pydantic/pull/9426) - Fix usage of `PlainSerializer` with builtin types by [@Viicos](https://togithub.com/Viicos) in [#9450](https://togithub.com/pydantic/pydantic/pull/9450) - Add more robust custom validation examples by [@ChrisPappalardo](https://togithub.com/ChrisPappalardo) in [#9468](https://togithub.com/pydantic/pydantic/pull/9468) - Fix ignored `strict` specification for `StringConstraint(strict=False)` by [@vbmendes](https://togithub.com/vbmendes) in [#9476](https://togithub.com/pydantic/pydantic/pull/9476) - Use `Self` where possible by [@Viicos](https://togithub.com/Viicos) in [#9479](https://togithub.com/pydantic/pydantic/pull/9479) - Do not alter `RootModel.model_construct` signature in the `mypy` plugin by [@Viicos](https://togithub.com/Viicos) in [#9480](https://togithub.com/pydantic/pydantic/pull/9480) - Fixed type hint of `validation_context` by [@OhioDschungel6](https://togithub.com/OhioDschungel6) in [#9508](https://togithub.com/pydantic/pydantic/pull/9508) - Support context being passed to TypeAdapter's `dump_json`/`dump_python` by [@alexcouper](https://togithub.com/alexcouper) in [#9495](https://togithub.com/pydantic/pydantic/pull/9495) - Updates type signature for `Field()` constructor by [@bjmc](https://togithub.com/bjmc) in [#9484](https://togithub.com/pydantic/pydantic/pull/9484) - Improve builtin alias generators by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9561](https://togithub.com/pydantic/pydantic/pull/9561) - Fix typing of `TypeAdapter` by [@Viicos](https://togithub.com/Viicos) in [#9570](https://togithub.com/pydantic/pydantic/pull/9570) - Add fallback default value for private fields in `__setstate__` of BaseModel by [@anhpham1509](https://togithub.com/anhpham1509) in [#9584](https://togithub.com/pydantic/pydantic/pull/9584) - Support `PEP 746` by [@adriangb](https://togithub.com/adriangb) in [#9587](https://togithub.com/pydantic/pydantic/pull/9587) - Allow validator and serializer functions to have default values by [@Viicos](https://togithub.com/Viicos) in [#9478](https://togithub.com/pydantic/pydantic/pull/9478) - Fix bug with mypy plugin's handling of covariant `TypeVar` fields by [@dmontagu](https://togithub.com/dmontagu) in [#9606](https://togithub.com/pydantic/pydantic/pull/9606) - Fix multiple annotation / constraint application logic by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9623](https://togithub.com/pydantic/pydantic/pull/9623) - Respect `regex` flags in validation and json schema by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9591](https://togithub.com/pydantic/pydantic/pull/9591) - Fix type hint on `IpvAnyAddress` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9640](https://togithub.com/pydantic/pydantic/pull/9640) - Allow a field specifier on `__pydantic_extra__` by [@dmontagu](https://togithub.com/dmontagu) in [#9659](https://togithub.com/pydantic/pydantic/pull/9659) - Use normalized case for file path comparison by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9737](https://togithub.com/pydantic/pydantic/pull/9737) - Modify constraint application logic to allow field constraints on `Optional[Decimal]` by [@lazyhope](https://togithub.com/lazyhope) in [#9754](https://togithub.com/pydantic/pydantic/pull/9754) - `validate_call` type params fix by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9760](https://togithub.com/pydantic/pydantic/pull/9760) - Check all warnings returned by pytest.warns() by [@s-t-e-v-e-n-k](https://togithub.com/s-t-e-v-e-n-k) in [#9702](https://togithub.com/pydantic/pydantic/pull/9702) - Reuse `re.Pattern` object in regex patterns to allow for regex flags by [@sydney-runkle](https://togithub.com/sydney-runkle) in [pydantic/pydantic-core#1318](https://togithub.com/pydantic/pydantic-core/pull/1318) ##### New Contributors - [@idan22moral](https://togithub.com/idan22moral) made their first contribution in [#9294](https://togithub.com/pydantic/pydantic/pull/9294) - [@anesmemisevic](https://togithub.com/anesmemisevic) made their first contribution in [#9303](https://togithub.com/pydantic/pydantic/pull/9303) - [@max-muoto](https://togithub.com/max-muoto) made their first contribution in [#9338](https://togithub.com/pydantic/pydantic/pull/9338) - [@amitschang](https://togithub.com/amitschang) made their first contribution in [#9344](https://togithub.com/pydantic/pydantic/pull/9344) - [@paulmartin91](https://togithub.com/paulmartin91) made their first contribution in [#9410](https://togithub.com/pydantic/pydantic/pull/9410) - [@OhioDschungel6](https://togithub.com/OhioDschungel6) made their first contribution in [#9405](https://togithub.com/pydantic/pydantic/pull/9405) - [@AlexWaygood](https://togithub.com/AlexWaygood) made their first contribution in [#9426](https://togithub.com/pydantic/pydantic/pull/9426) - [@kinuax](https://togithub.com/kinuax) made their first contribution in [#9433](https://togithub.com/pydantic/pydantic/pull/9433) - [@antoni-jamiolkowski](https://togithub.com/antoni-jamiolkowski) made their first contribution in [#9431](https://togithub.com/pydantic/pydantic/pull/9431) - [@candleindark](https://togithub.com/candleindark) made their first contribution in [#9448](https://togithub.com/pydantic/pydantic/pull/9448) - [@nix010](https://togithub.com/nix010) made their first contribution in [#9170](https://togithub.com/pydantic/pydantic/pull/9170) - [@tomy0000000](https://togithub.com/tomy0000000) made their first contribution in [#9457](https://togithub.com/pydantic/pydantic/pull/9457) - [@vbmendes](https://togithub.com/vbmendes) made their first contribution in [#9470](https://togithub.com/pydantic/pydantic/pull/9470) - [@micheleAlberto](https://togithub.com/micheleAlberto) made their first contribution in [#9471](https://togithub.com/pydantic/pydantic/pull/9471) - [@ChrisPappalardo](https://togithub.com/ChrisPappalardo) made their first contribution in [#9468](https://togithub.com/pydantic/pydantic/pull/9468) - [@blueTurtz](https://togithub.com/blueTurtz) made their first contribution in [#9475](https://togithub.com/pydantic/pydantic/pull/9475) - [@WinterBlue16](https://togithub.com/WinterBlue16) made their first contribution in [#9477](https://togithub.com/pydantic/pydantic/pull/9477) - [@bittner](https://togithub.com/bittner) made their first contribution in [#9500](https://togithub.com/pydantic/pydantic/pull/9500) - [@alexcouper](https://togithub.com/alexcouper) made their first contribution in [#9495](https://togithub.com/pydantic/pydantic/pull/9495) - [@bjmc](https://togithub.com/bjmc) made their first contribution in [#9484](https://togithub.com/pydantic/pydantic/pull/9484) - [@pjvv](https://togithub.com/pjvv) made their first contribution in [#9529](https://togithub.com/pydantic/pydantic/pull/9529) - [@nedbat](https://togithub.com/nedbat) made their first contribution in [#9530](https://togithub.com/pydantic/pydantic/pull/9530) - [@gunnellEvan](https://togithub.com/gunnellEvan) made their first contribution in [#9469](https://togithub.com/pydantic/pydantic/pull/9469) - [@jaymbans](https://togithub.com/jaymbans) made their first contribution in [#9531](https://togithub.com/pydantic/pydantic/pull/9531) - [@MarcBresson](https://togithub.com/MarcBresson) made their first contribution in [#9534](https://togithub.com/pydantic/pydantic/pull/9534) - [@anhpham1509](https://togithub.com/anhpham1509) made their first contribution in [#9584](https://togithub.com/pydantic/pydantic/pull/9584) - [@K-dash](https://togithub.com/K-dash) made their first contribution in [#9595](https://togithub.com/pydantic/pydantic/pull/9595) - [@s-t-e-v-e-n-k](https://togithub.com/s-t-e-v-e-n-k) made their first contribution in [#9527](https://togithub.com/pydantic/pydantic/pull/9527) - [@airwoodix](https://togithub.com/airwoodix) made their first contribution in [#9506](https://togithub.com/pydantic/pydantic/pull/9506) - [@misrasaurabh1](https://togithub.com/misrasaurabh1) made their first contribution in [#9653](https://togithub.com/pydantic/pydantic/pull/9653) - [@AlessandroMiola](https://togithub.com/AlessandroMiola) made their first contribution in [#9740](https://togithub.com/pydantic/pydantic/pull/9740) - [@mylapallilavanyaa](https://togithub.com/mylapallilavanyaa) made their first contribution in [#9746](https://togithub.com/pydantic/pydantic/pull/9746) - [@lazyhope](https://togithub.com/lazyhope) made their first contribution in [#9754](https://togithub.com/pydantic/pydantic/pull/9754) - [@YassinNouh21](https://togithub.com/YassinNouh21) made their first contribution in [#9759](https://togithub.com/pydantic/pydantic/pull/9759) ### [`v2.7.4`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v274-2024-06-12) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.7.3...v2.7.4) [Github release](https://togithub.com/pydantic/pydantic/releases/tag/v2.7.4) ##### What's Changed ##### Packaging - Bump `pydantic.v1` to `v1.10.16` reference by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9639](https://togithub.com/pydantic/pydantic/pull/9639) ##### Fixes - Specify `recursive_guard` as kwarg in `FutureRef._evaluate` by [@vfazio](https://togithub.com/vfazio) in [#9612](https://togithub.com/pydantic/pydantic/pull/9612) ### [`v2.7.3`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v273-2024-06-03) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.7.2...v2.7.3) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.7.3) ##### What's Changed ##### Packaging - Bump `pydantic-core` to `v2.18.4` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9550](https://togithub.com/pydantic/pydantic/pull/9550) ##### Fixes - Fix u style unicode strings in python [@samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/jiter#110](https://togithub.com/pydantic/jiter/pull/110) ### [`v2.7.2`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v272-2024-05-28) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.7.1...v2.7.2) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.7.2) ##### What's Changed ##### Packaging - Bump `pydantic-core` to `v2.18.3` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9515](https://togithub.com/pydantic/pydantic/pull/9515) ##### Fixes - Replace `__spec__.parent` with `__package__` by [@hramezani](https://togithub.com/hramezani) in [#9331](https://togithub.com/pydantic/pydantic/pull/9331) - Fix validation of `int`s with leading unary minus by [@RajatRajdeep](https://togithub.com/RajatRajdeep) in [pydantic/pydantic-core#1291](https://togithub.com/pydantic/pydantic-core/pull/1291) - Fix `str` subclass validation for enums by [@sydney-runkle](https://togithub.com/sydney-runkle) in \[[pydantic/pydantic-core#1273](https://togithub.com/pydantic/pydantic-core/issues/1273)][https://github.com/pydantic/pydantic-core/pull/1273](https://togithub.com/pydantic/pydantic-core/pull/1273) - Support `BigInt`s in `Literal`s and `Enum`s by [@samuelcolvin](https://togithub.com/samuelcolvin) in \[[pydantic/pydantic-core#1297](https://togithub.com/pydantic/pydantic-core/issues/1297)][https://github.com/pydantic/pydantic-core/pull/1297](https://togithub.com/pydantic/pydantic-core/pull/1297) - Fix: uuid - allow `str` subclass as input by [@davidhewitt](https://togithub.com/davidhewitt) in \[[pydantic/pydantic-core#1296](https://togithub.com/pydantic/pydantic-core/issues/1296)][https://github.com/pydantic/pydantic-core/pull/1296](https://togithub.com/pydantic/pydantic-core/pull/1296) ### [`v2.7.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v271-2024-04-23) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.7.0...v2.7.1) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.7.1) ##### What's Changed ##### Packaging - Bump `pydantic-core` to `v2.18.2` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9307](https://togithub.com/pydantic/pydantic/pull/9307) ##### New Features - Ftp and Websocket connection strings support by [@CherrySuryp](https://togithub.com/CherrySuryp) in [#9205](https://togithub.com/pydantic/pydantic/pull/9205) ##### Changes - Use field description for RootModel schema description when there is `…` by [@LouisGobert](https://togithub.com/LouisGobert) in [#9214](https://togithub.com/pydantic/pydantic/pull/9214) ##### Fixes - Fix `validation_alias` behavior with `model_construct` for `AliasChoices` and `AliasPath` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9223](https://togithub.com/pydantic/pydantic/pull/9223) - Revert `typing.Literal` and import it outside the TYPE_CHECKING block by [@frost-nzcr4](https://togithub.com/frost-nzcr4) in [#9232](https://togithub.com/pydantic/pydantic/pull/9232) - Fix `Secret` serialization schema, applicable for unions by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9240](https://togithub.com/pydantic/pydantic/pull/9240) - Fix `strict` application to `function-after` with `use_enum_values` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9279](https://togithub.com/pydantic/pydantic/pull/9279) - Address case where `model_construct` on a class which defines `model_post_init` fails with `AttributeError` by [@babygrimes](https://togithub.com/babygrimes) in [#9168](https://togithub.com/pydantic/pydantic/pull/9168) - Fix `model_json_schema` with config types by [@NeevCohen](https://togithub.com/NeevCohen) in [#9287](https://togithub.com/pydantic/pydantic/pull/9287) - Support multiple zeros as an `int` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/pydantic-core#1269](https://togithub.com/pydantic/pydantic-core/pull/1269) - Fix validation of `int`s with leading unary plus by [@cknv](https://togithub.com/cknv) in [pydantic/pydantic-core#1272](https://togithub.com/pydantic/pydantic-core/pull/1272) - Fix interaction between `extra != 'ignore'` and `from_attributes=True` by [@davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1276](https://togithub.com/pydantic/pydantic-core/pull/1276) - Handle error from `Enum`'s `missing` function as `ValidationError` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [pydantic/pydantic-core#1274](https://togithub.com/pydantic/pydantic-core/pull/1754) - Fix memory leak with `Iterable` validation by [@davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1271](https://togithub.com/pydantic/pydantic-core/pull/1751) ##### New Contributors - [@zzstoatzz](https://togithub.com/zzstoatzz) made their first contribution in [#9219](https://togithub.com/pydantic/pydantic/pull/9219) - [@frost-nzcr4](https://togithub.com/frost-nzcr4) made their first contribution in [#9232](https://togithub.com/pydantic/pydantic/pull/9232) - [@CherrySuryp](https://togithub.com/CherrySuryp) made their first contribution in [#9205](https://togithub.com/pydantic/pydantic/pull/9205) - [@vagenas](https://togithub.com/vagenas) made their first contribution in [#9268](https://togithub.com/pydantic/pydantic/pull/9268) - [@ollz272](https://togithub.com/ollz272) made their first contribution in [#9262](https://togithub.com/pydantic/pydantic/pull/9262) - [@babygrimes](https://togithub.com/babygrimes) made their first contribution in [#9168](https://togithub.com/pydantic/pydantic/pull/9168) - [@swelborn](https://togithub.com/swelborn) made their first contribution in [#9296](https://togithub.com/pydantic/pydantic/pull/9296) - [@kf-novi](https://togithub.com/kf-novi) made their first contribution in [#9236](https://togithub.com/pydantic/pydantic/pull/9236) - [@lgeiger](https://togithub.com/lgeiger) made their first contribution in [#9288](https://togithub.com/pydantic/pydantic/pull/9288) ### [`v2.7.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.6.4...v2.7.0) [GitHub release](https://togithub.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](https://togithub.com/Viicos) in [#8899](https://togithub.com/pydantic/pydantic/pull/8899) - Bump `pydantic-core` to `v2.18.1` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9211](https://togithub.com/pydantic/pydantic/pull/9211) - Adopt `jiter` `v0.2.0` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/pydantic-core#1250](https://togithub.com/pydantic/pydantic-core/pull/1250) ##### New Features - Extract attribute docstrings from `FieldInfo.description` by [@Viicos](https://togithub.com/Viicos) in [#6563](https://togithub.com/pydantic/pydantic/pull/6563) - Add a `with_config` decorator to comply with typing spec by [@Viicos](https://togithub.com/Viicos) in [#8611](https://togithub.com/pydantic/pydantic/pull/8611) - Allow an optional separator splitting the value and unit of the result of `ByteSize.human_readable` by [@jks15satoshi](https://togithub.com/jks15satoshi) in [#8706](https://togithub.com/pydantic/pydantic/pull/8706) - Add generic `Secret` base type by [@conradogarciaberrotaran](https://togithub.com/conradogarciaberrotaran) in [#8519](https://togithub.com/pydantic/pydantic/pull/8519) - Make use of `Sphinx` inventories for cross references in docs by [@Viicos](https://togithub.com/Viicos) in [#8682](https://togithub.com/pydantic/pydantic/pull/8682) - Add environment variable to disable plugins by [@geospackle](https://togithub.com/geospackle) in [#8767](https://togithub.com/pydantic/pydantic/pull/8767) - Add support for `deprecated` fields by [@Viicos](https://togithub.com/Viicos) in [#8237](https://togithub.com/pydantic/pydantic/pull/8237) - Allow `field_serializer('*')` by [@ornariece](https://togithub.com/ornariece) in [#9001](https://togithub.com/pydantic/pydantic/pull/9001) - Handle a case when `model_config` is defined as a model property by [@alexeyt101](https://togithub.com/alexeyt101) in [#9004](https://togithub.com/pydantic/pydantic/pull/9004) - Update `create_model()` to support `typing.Annotated` as input by [@wannieman98](https://togithub.com/wannieman98) in [#8947](https://togithub.com/pydantic/pydantic/pull/8947) - Add `ClickhouseDsn` support by [@solidguy7](https://togithub.com/solidguy7) in [#9062](https://togithub.com/pydantic/pydantic/pull/9062) - Add support for `re.Pattern[str]` to `pattern` field by [@jag-k](https://togithub.com/jag-k) in [#9053](https://togithub.com/pydantic/pydantic/pull/9053) - Support for `serialize_as_any` runtime setting by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#8830](https://togithub.com/pydantic/pydantic/pull/8830) - Add support for `typing.Self` by [@Youssefares](https://togithub.com/Youssefares) in [#9023](https://togithub.com/pydantic/pydantic/pull/9023) - Ability to pass `context` to serialization by [@ornariece](https://togithub.com/ornariece) in [#8965](https://togithub.com/pydantic/pydantic/pull/8965) - Add feedback widget to docs with flarelytics integration by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9129](https://togithub.com/pydantic/pydantic/pull/9129) - Support for parsing partial JSON strings in Python by [@samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/jiter#66](https://togithub.com/pydantic/jiter/pull/66) **Finalized in v2.7.0, rather than v2.7.0b1:** - Add support for field level number to str coercion option by [@NeevCohen](https://togithub.com/NeevCohen) in [#9137](https://togithub.com/pydantic/pydantic/pull/9137) - Update `warnings` parameter for serialization utilities to allow raising a warning by [@Lance-Drane](https://togithub.com/Lance-Drane) in [#9166](https://togithub.com/pydantic/pydantic/pull/9166) ##### Changes - Correct docs, logic for `model_construct` behavior with `extra` by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#8807](https://togithub.com/pydantic/pydantic/pull/8807) - Improve error message for improper `RootModel` subclasses by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#8857](https://togithub.com/pydantic/pydantic/pull/8857) - Use `PEP570` syntax by [@Viicos](https://togithub.com/Viicos) in [#8940](https://togithub.com/pydantic/pydantic/pull/8940) - Add `enum` and `type` to the JSON schema for single item literals by [@dmontagu](https://togithub.com/dmontagu) in [#8944](https://togithub.com/pydantic/pydantic/pull/8944) - Deprecate `update_json_schema` internal function by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9125](https://togithub.com/pydantic/pydantic/pull/9125) - Serialize duration to hour minute second, instead of just seconds by [@kakilangit](https://togithub.com/kakilangit) in [pydantic/speedate#50](https://togithub.com/pydantic/speedate/pull/50) - Trimming str before parsing to int and float by [@hungtsetse](https://togithub.com/hungtsetse) in [pydantic/pydantic-core#1203](https://togithub.com/pydantic/pydantic-core/pull/1203) ##### Performance - `enum` validator improvements by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#9045](https://togithub.com/pydantic/pydantic/pull/9045) - Move `enum` validation and serialization to Rust by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#9064](https://togithub.com/pydantic/pydantic/pull/9064) - Improve schema generation for nested dataclasses by [@sydney-runkle](https://togithub.com/sydney-runkle) in [#9114](https://togithub.com/pydantic/pydantic/pull/9114) - Fast path for ASCII python string creation in JSON by [@samuelcolvin](https://togithub.com/samuelcolvin) in in [pydantic/jiter#72](https://togithub.com/pydantic/jiter/pull/72) - SIMD integer and string JSON parsing on `aarch64`(**Note:** SIMD on x86 will be implemented in a future release) by [@samuelcolvin](https://togithub.com/samuelcolvin) in in [pydantic/jiter#65](https://togithub.com/pydantic/jiter/pull/65) - Support JSON `CowConfiguration
📅 Schedule: Branch creation - "before 4am on the first day of the month" (UTC), Automerge - "every weekday" (UTC).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.