chore(deps): update dependency pydantic to v2 - autoclosed
Metadata
Current evaluation
Renovate's Pydantic 2 bump was closed unmerged and superseded by dedicated migration PR #33, which landed in commit 5e225fb.
Resolution: closed superseded
Reason: PR #28 was closed without merging. The same dependency upgrade was completed through merged migration PR #33 in commit 5e225fb.
Evaluated by: mr-cal-bot
No scores available.
Issue body
[](https://renovatebot.com)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [pydantic](https://togithub.com/pydantic/pydantic) ([changelog](https://docs.pydantic.dev/latest/changelog/)) | `<2.0` -> `<2.9` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) |
---
### Release Notes
<details>
<summary>pydantic/pydantic (pydantic)</summary>
### [`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 `Cow<str>` from `jiter` by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1231](https://togithub.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1248](https://togithub.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by [@​samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/pydantic-core#1240](https://togithub.com/pydantic/pydantic-core/pull/1240)
##### Fixes
- Fix strict parsing for some `Sequence`s by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8614](https://togithub.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by [@​anci3ntr0ck](https://togithub.com/anci3ntr0ck) in [#​8642](https://togithub.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by [@​alexmojaki](https://togithub.com/alexmojaki) in [#​8659](https://togithub.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by [@​Holi0317](https://togithub.com/Holi0317) in [#​8650](https://togithub.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by [@​bluenote10](https://togithub.com/bluenote10) in [#​8651](https://togithub.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by [@​dmontagu](https://togithub.com/dmontagu) in [#​8666](https://togithub.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8681](https://togithub.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8679](https://togithub.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition references by [@​dmontagu](https://togithub.com/dmontagu) in [#​8702](https://togithub.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8710](https://togithub.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8718](https://togithub.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by [@​13sin](https://togithub.com/13sin) in [#​8734](https://togithub.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()` starting to work inside `pytest.raises()` by [@​mgorny](https://togithub.com/mgorny) in [#​8678](https://togithub.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by [@​DanielNoord](https://togithub.com/DanielNoord) in [#​8738](https://togithub.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by [@​dmontagu](https://togithub.com/dmontagu) in [#​8799](https://togithub.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required' parameters by [@​LouisGobert](https://togithub.com/LouisGobert) in [#​8793](https://togithub.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8801](https://togithub.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not present in the subclass module namespace by [@​matsjoyce-refeyn](https://togithub.com/matsjoyce-refeyn) in [#​8751](https://togithub.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by `typing.get_type_hints` by [@​devmonkey22](https://togithub.com/devmonkey22) in [#​7680](https://togithub.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8810](https://togithub.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8823](https://togithub.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by [@​Viicos](https://togithub.com/Viicos) in [#​8837](https://togithub.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by [@​Viicos](https://togithub.com/Viicos) in [#​8877](https://togithub.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by [@​NeevCohen](https://togithub.com/NeevCohen) in [#​8860](https://togithub.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by [@​Czaki](https://togithub.com/Czaki) in [#​8917](https://togithub.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by [@​adriangb](https://togithub.com/adriangb) in [#​8923](https://togithub.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for `enum`s by [@​dmontagu](https://togithub.com/dmontagu) in [#​8920](https://togithub.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8928](https://togithub.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8932](https://togithub.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with discriminators by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8950](https://togithub.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated unions by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8951](https://togithub.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by [@​dmontagu](https://togithub.com/dmontagu) in [#​9008](https://togithub.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​9031](https://togithub.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by [@​dmontagu](https://togithub.com/dmontagu) in [#​9039](https://togithub.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by [@​NeevCohen](https://togithub.com/NeevCohen) in [#​9066](https://togithub.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by [@​NeevCohen](https://togithub.com/NeevCohen) in [#​9082](https://togithub.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by [@​alexmojaki](https://togithub.com/alexmojaki) in [#​9097](https://togithub.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by [@​andresliszt](https://togithub.com/andresliszt) in [#​8977](https://togithub.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent model by [@​chan-vince](https://togithub.com/chan-vince) in [#​9105](https://togithub.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child class by [@​chan-vince](https://togithub.com/chan-vince) in [#​9111](https://togithub.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​9124](https://togithub.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah blah]` by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​9128](https://togithub.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by [@​Viicos](https://togithub.com/Viicos) in [#​9134](https://togithub.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by [@​ornariece](https://togithub.com/ornariece) in [#​9144](https://togithub.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by [@​bruno-f-cruz](https://togithub.com/bruno-f-cruz) in [#​9135](https://togithub.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by [@​dmontagu](https://togithub.com/dmontagu) in [#​9193](https://togithub.com/pydantic/pydantic/pull/9193)
##### New Contributors
- [@​hungtsetse](https://togithub.com/hungtsetse) made their first contribution in [#​8546](https://togithub.com/pydantic/pydantic/pull/8546)
- [@​StrawHatDrag0n](https://togithub.com/StrawHatDrag0n) made their first contribution in [#​8583](https://togithub.com/pydantic/pydantic/pull/8583)
- [@​anci3ntr0ck](https://togithub.com/anci3ntr0ck) made their first contribution in [#​8642](https://togithub.com/pydantic/pydantic/pull/8642)
- [@​Holi0317](https://togithub.com/Holi0317) made their first contribution in [#​8650](https://togithub.com/pydantic/pydantic/pull/8650)
- [@​bluenote10](https://togithub.com/bluenote10) made their first contribution in [#​8651](https://togithub.com/pydantic/pydantic/pull/8651)
- [@​ADSteele916](https://togithub.com/ADSteele916) made their first contribution in [#​8703](https://togithub.com/pydantic/pydantic/pull/8703)
- [@​musicinmybrain](https://togithub.com/musicinmybrain) made their first contribution in [#​8731](https://togithub.com/pydantic/pydantic/pull/8731)
- [@​jks15satoshi](https://togithub.com/jks15satoshi) made their first contribution in [#​8706](https://togithub.com/pydantic/pydantic/pull/8706)
- [@​13sin](https://togithub.com/13sin) made their first contribution in [#​8734](https://togithub.com/pydantic/pydantic/pull/8734)
- [@​DanielNoord](https://togithub.com/DanielNoord) made their first contribution in [#​8738](https://togithub.com/pydantic/pydantic/pull/8738)
- [@​conradogarciaberrotaran](https://togithub.com/conradogarciaberrotaran) made their first contribution in [#​8519](https://togithub.com/pydantic/pydantic/pull/8519)
- [@​chris-griffin](https://togithub.com/chris-griffin) made their first contribution in [#​8775](https://togithub.com/pydantic/pydantic/pull/8775)
- [@​LouisGobert](https://togithub.com/LouisGobert) made their first contribution in [#​8793](https://togithub.com/pydantic/pydantic/pull/8793)
- [@​matsjoyce-refeyn](https://togithub.com/matsjoyce-refeyn) made their first contribution in [#​8751](https://togithub.com/pydantic/pydantic/pull/8751)
- [@​devmonkey22](https://togithub.com/devmonkey22) made their first contribution in [#​7680](https://togithub.com/pydantic/pydantic/pull/7680)
- [@​adamency](https://togithub.com/adamency) made their first contribution in [#​8847](https://togithub.com/pydantic/pydantic/pull/8847)
- [@​MamfTheKramf](https://togithub.com/MamfTheKramf) made their first contribution in [#​8851](https://togithub.com/pydantic/pydantic/pull/8851)
- [@​ornariece](https://togithub.com/ornariece) made their first contribution in [#​9001](https://togithub.com/pydantic/pydantic/pull/9001)
- [@​alexeyt101](https://togithub.com/alexeyt101) made their first contribution in [#​9004](https://togithub.com/pydantic/pydantic/pull/9004)
- [@​wannieman98](https://togithub.com/wannieman98) made their first contribution in [#​8947](https://togithub.com/pydantic/pydantic/pull/8947)
- [@​solidguy7](https://togithub.com/solidguy7) made their first contribution in [#​9062](https://togithub.com/pydantic/pydantic/pull/9062)
- [@​kloczek](https://togithub.com/kloczek) made their first contribution in [#​9047](https://togithub.com/pydantic/pydantic/pull/9047)
- [@​jag-k](https://togithub.com/jag-k) made their first contribution in [#​9053](https://togithub.com/pydantic/pydantic/pull/9053)
- [@​priya-gitTest](https://togithub.com/priya-gitTest) made their first contribution in [#​9088](https://togithub.com/pydantic/pydantic/pull/9088)
- [@​Youssefares](https://togithub.com/Youssefares) made their first contribution in [#​9023](https://togithub.com/pydantic/pydantic/pull/9023)
- [@​chan-vince](https://togithub.com/chan-vince) made their first contribution in [#​9105](https://togithub.com/pydantic/pydantic/pull/9105)
- [@​bruno-f-cruz](https://togithub.com/bruno-f-cruz) made their first contribution in [#​9135](https://togithub.com/pydantic/pydantic/pull/9135)
- [@​Lance-Drane](https://togithub.com/Lance-Drane) made their first contribution in [#​9166](https://togithub.com/pydantic/pydantic/pull/9166)
### [`v2.6.4`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v264-2024-03-12)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.6.3...v2.6.4)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.6.4)
##### What's Changed
##### Fixes
- Fix usage of `AliasGenerator` with `computed_field` decorator by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8806](https://togithub.com/pydantic/pydantic/pull/8806)
- Fix nested discriminated union schema gen, pt 2 by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8932](https://togithub.com/pydantic/pydantic/pull/8932)
- Fix bug with no_strict_optional=True caused by API deferral by [@​dmontagu](https://togithub.com/dmontagu) in [#​8826](https://togithub.com/pydantic/pydantic/pull/8826)
### [`v2.6.3`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v263-2024-02-27)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.6.2...v2.6.3)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.6.3)
##### What's Changed
##### Packaging
- Update `pydantic-settings` version in the docs by [@​hramezani](https://togithub.com/hramezani) in [#​8906](https://togithub.com/pydantic/pydantic/pull/8906)
##### Fixes
- Fix discriminated union schema gen bug by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8904](https://togithub.com/pydantic/pydantic/pull/8904)
### [`v2.6.2`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v262-2024-02-23)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.6.1...v2.6.2)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.6.2)
##### What's Changed
##### Packaging
- Upgrade to `pydantic-core` 2.16.3 by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8879](https://togithub.com/pydantic/pydantic/pull/8879)
##### Fixes
- 'YYYY-MM-DD' date string coerced to datetime shouldn't infer timezone by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [pydantic/pydantic-core#1193](https://togithub.com/pydantic/pydantic-core/pull/1193)
### [`v2.6.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v261-2024-02-05)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.6.0...v2.6.1)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.6.1)
##### What's Changed
##### Packaging
- Upgrade to `pydantic-core` 2.16.2 by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8717](https://togithub.com/pydantic/pydantic/pull/8717)
##### Fixes
- Fix bug with `mypy` plugin and `no_strict_optional = True` by [@​dmontagu](https://togithub.com/dmontagu) in [#​8666](https://togithub.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8681](https://togithub.com/pydantic/pydantic/pull/8681)
- Fix inheriting `Field` annotations in dataclasses by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8679](https://togithub.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition references by [@​dmontagu](https://togithub.com/dmontagu) in [#​8702](https://togithub.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with `PlainValidator` by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8710](https://togithub.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8718](https://togithub.com/pydantic/pydantic/pull/8718)
- Fix warning for tuple of wrong size in `Union` by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1174](https://togithub.com/pydantic/pydantic-core/pull/1174)
- Fix `computed_field` JSON serializer `exclude_none` behavior by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [pydantic/pydantic-core#1187](https://togithub.com/pydantic/pydantic-core/pull/1187)
### [`v2.6.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v260-2024-01-23)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.5.3...v2.6.0)
[GitHub release](https://togithub.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](https://togithub.com/commonism) in [#​6033](https://togithub.com/pydantic/pydantic/pull/6033)
- Upgrade \`ruff\`\` target version to Python 3.8 by [@​Elkiwa](https://togithub.com/Elkiwa) in [#​8341](https://togithub.com/pydantic/pydantic/pull/8341)
- Update to `pydantic-extra-types==2.4.1` by [@​yezz123](https://togithub.com/yezz123) in [#​8478](https://togithub.com/pydantic/pydantic/pull/8478)
- Update to `pyright==1.1.345` by [@​Viicos](https://togithub.com/Viicos) in [#​8453](https://togithub.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://togithub.com/pydantic/pydantic-core/compare/v2.14.6...v2.16.1)
##### New Features
- Add `NatsDsn` by [@​ekeew](https://togithub.com/ekeew) in [#​6874](https://togithub.com/pydantic/pydantic/pull/6874)
- Add `ConfigDict.ser_json_inf_nan` by [@​davidhewitt](https://togithub.com/davidhewitt) in [#​8159](https://togithub.com/pydantic/pydantic/pull/8159)
- Add `types.OnErrorOmit` by [@​adriangb](https://togithub.com/adriangb) in [#​8222](https://togithub.com/pydantic/pydantic/pull/8222)
- Support `AliasGenerator` usage by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8282](https://togithub.com/pydantic/pydantic/pull/8282)
- Add Pydantic People Page to docs by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8345](https://togithub.com/pydantic/pydantic/pull/8345)
- Support `yyyy-MM-DD` datetime parsing by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8404](https://togithub.com/pydantic/pydantic/pull/8404)
- Added bits conversions to the `ByteSize` class [#​8415](https://togithub.com/pydantic/pydantic/issues/8415) by [@​luca-matei](https://togithub.com/luca-matei) in [#​8507](https://togithub.com/pydantic/pydantic/pull/8507)
- Enable json schema creation with type `ByteSize` by [@​geospackle](https://togithub.com/geospackle) in [#​8537](https://togithub.com/pydantic/pydantic/pull/8537)
- Add `eval_type_backport` to handle union operator and builtin generic subscripting in older Pythons by [@​alexmojaki](https://togithub.com/alexmojaki) in [#​8209](https://togithub.com/pydantic/pydantic/pull/8209)
- Add support for `dataclass` fields `init` by [@​dmontagu](https://togithub.com/dmontagu) in [#​8552](https://togithub.com/pydantic/pydantic/pull/8552)
- Implement pickling for `ValidationError` by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1119](https://togithub.com/pydantic/pydantic-core/pull/1119)
- Add unified tuple validator that can handle "variadic" tuples via PEP-646 by [@​dmontagu](https://togithub.com/dmontagu) in [pydantic/pydantic-core#865](https://togithub.com/pydantic/pydantic-core/pull/865)
##### Changes
- Drop Python3.7 support by [@​hramezani](https://togithub.com/hramezani) in [#​7188](https://togithub.com/pydantic/pydantic/pull/7188)
- Drop Python 3.7, and PyPy 3.7 and 3.8 by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/pydantic-core#1129](https://togithub.com/pydantic/pydantic-core/pull/1129)
- Use positional-only `self` in `BaseModel` constructor, so no field name can ever conflict with it by [@​ariebovenberg](https://togithub.com/ariebovenberg) in [#​8072](https://togithub.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](https://togithub.com/alexmojaki) in [#​8268](https://togithub.com/pydantic/pydantic/pull/8268)
- Exclude `BaseModel` docstring from JSON schema description by [@​sydney-runkle](https://togithub.com/sydney-runkle) in [#​8352](https://togithub.com/pydantic/pydantic/pull/8352)
- Introducing `classproperty` decorator for `model_computed_fields` by [@​Jocelyn-Gas](https://togithub.com/Jocelyn-Gas) in [#​8437](https://togithub.com/pydantic/pydantic/pull/8437)
- Explicitly raise an error if field names clashes with types by [@​Viicos](https://togithub.com/Viicos) in [#​8243](https://togithub.com/pydantic/pydantic/pull/8243)
- Use stricter serializer for unions of simple types by [@​alexdrydew](https://togithub.com/alexdrydew) [pydantic/pydantic-core#1132](https://togithub.com/pydantic/pydantic-core/pull/1132)
##### Performance
- Add Codspeed profiling Actions workflow by [@​lambertsbennett](https://togithub.com/lambertsbennett) in [#​8054](https://togithub.com/pydantic/pydantic/pull/8054)
- Improve `int` extraction by [@​samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/pydantic-core#1155](https://togithub.com/pydantic/pydantic-core/pull/1155)
- Improve performance of recursion guard by [@​samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/pydantic-core#1156](https://togithub.com/pydantic/pydantic-core/pull/1156)
- `dataclass` serialization speedups by [@​samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/pydantic-core#1162](https://togithub.com/pydantic/pydantic-core/pull/1162)
- Avoid `HashMap` creation when looking up small JSON objects in `LazyIndexMaps` by [@​samuelcolvin](https://togithub.com/samuelcolvin) in [pydantic/jiter#55](https://togithub.com/pydantic/jiter/pull/55)
- use hashbrown to speedup python string caching by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/jiter#51](https://togithub.com/pydantic/jiter/pull/51)
- Replace `Peak` with more efficient `Peek` by [@​davidhewitt](https://togithub.com/davidhewitt) in [pydantic/jiter#48](https://togithub.com/pydantic/jiter/pull/48)
##### Fixes
- Move `getattr` warning in deprecated `BaseConfig` by [@​tlambert03](https://togithub.com/tlambert03) in [#​7183](https://togithub.com/pydantic/pydantic/pull/7183)
- Only hash `model_fields`, not whole `__dict__` by [@​alexmojaki](https://togithub.com/alexmojaki) in [#​7786](https://togithub.com/pydantic/pydantic/pull/7786)
- Fix mishandling of unions while freezing types in the `mypy` plugin by [@​dmontagu](https://togithub.com/dmontagu) in [#​7411](https://togithub.com/pydantic/pydantic/pull/7411)
- Fix `mypy` error on untyped `ClassVar` by [@​vincent-hachin-wmx](https://togithub.com/vincent-hachin-wmx) in [#​8138](https://togithub.com/pydantic/pydantic/pull/8138)
- Only compare pydantic fields in `BaseModel.__eq__` instead of whole `__dict__` by [@​QuentinSoubeyranAqemia](https://togithub.com/QuentinSoubeyranAqemia) in [#​7825](https://togithub.com/pydantic/pydantic/pull/7825)
- Update `strict` docstring in `model_validate` method. by [@​LukeTonin](https://togithub.com/LukeTonin) in [#​8223](https://togithub.com/pydantic/pydantic/pull/8223)
- Fix overload position of `computed_field` by [@​Viicos](https://togithub.com/Viicos) in [#​8227](https://togithub.com/pydantic/pydantic/pull/8227)
- Fix custom type type casting used in multiple attributes by [@​ianhfc](https://togithub.com/ianhfc) in [#​8066](https://togithub.com/pydantic/pydantic/pull/8066)
- Fix issue not allowing `validate_c
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - At any time (no schedule defined).
🚦 **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.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View the [repository job log](https://developer.mend.io/github/canonical/craft-grammar).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNTEuMiIsInVwZGF0ZWRJblZlciI6IjM3LjQzOC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed superseded | Renovate's Pydantic 2 bump was closed unmerged and superseded by dedicated migration PR #33, which landed in commit 5e225fb. | |
| stealth/space-bunny-alpha | — | closed superseded | Closed unmerged; the Pydantic v2 migration was completed instead by PR #33 and commit 5e225fb. | |
| stealth/space-bunny-alpha | — | closed superseded | Renovate's Pydantic v2 update was closed unmerged; a dedicated migration in canonical/craft-grammar#33 landed as commit 5e225fb. | |
| qwen/qwen3.6-35b-a3b | — | — | Renovate autoclosed this pydantic v2 dependency update without merging. The pull request received no reviews or CI checks and was automatically closed, indicating it was superseded or abandoned. |
Update history
No update history recorded yet.
Related work
-
Superseded By:
canonical/craft-grammar#33
(confidence 99%)
The dedicated Pydantic 1-to-2 migration was merged instead of Renovate's version-only PR.
-
Related To:
canonical/craft-grammar#32
(confidence 95%)
This issue requested a Pydantic 2 release and was resolved by PR #33.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #163 chore(deps): update dependency pydantic to v2 | craft-application | closed | Renovate’s Pydantic 2.5.2 bump was closed unmerged and later replaced by merged migration PR #401 (commit c2f0978a). | |
| #116 chore(deps): update dependency pydantic to v2 | craft-store | closed | Renovate's pydantic v2 bump PR was closed unmerged by @lengau (2023-10-22, "Pydantic 2 will need some significant changes"); the real migration landed later in merged PR #193 (commit 026b78d). | |
| #68 chore(deps): update dependency pydantic_core to v2.27.2 - autoclosed | imagecraft | closed | Renovate's pydantic_core 2.27.2 bump in #68 was autoclosed unmerged after inactivity; no resolving commit or replacement PR was identified. | |
| #370 chore(deps): update dependency pydantic to v2 | craft-providers | closed | Renovate pydantic v2 bump closed unmerged by mr-cal to defer migration to a larger craft effort; the upgrade later landed in merged PR #451 (commit f380a9e) for 2.0. | |
| #1351 chore(deps): update dependency pydantic to v2 | charmcraft | closed | Renovate PR bumping pydantic 1.10.13 -> 2.4.2 was closed unmerged by lengau ("will need its own project"). The upgrade later landed via PR #1777 (70078b03), merged to main in #1817 (394e6e55). | |
| #112 chore(deps): update to pydantic 2 & bump-pydantic | craft-archives | closed | Closed unmerged; its Pydantic 2 migration was superseded by #103 (b69f44a) and merged into main through #123. | |
| #1029 chore(deps): update dependency pydantic to v1.10.5 | charmcraft | closed | Renovate’s Pydantic 1.9.0-to-1.10.5 update was closed unmerged and ignored because craft-parts needed separate compatibility changes first. | |
| #1636 chore(deps): update dependency pycparser to v2.22 - autoclosed | charmcraft | closed | Renovate's pycparser 2.22 bump was approved but autoclosed unmerged after 28 days of inactivity. | |
| #164 chore(deps): update dependency pydantic-yaml to v1 | craft-application | closed | pydantic-yaml 1.x update PR #164 was closed unmerged; Renovate marked the update as ignored. | |
| #1191 chore(deps): update dependency pydantic-yaml to v1 | charmcraft | closed | pydantic-yaml 1.1.0 was not merged; PR #1191 was closed on 2023-07-26 because manual integration was required, and Renovate then ignored future 1.x updates. |