Skip to content

Commit

Permalink
Update dependency pydantic to v2.5.0 (#383)
Browse files Browse the repository at this point in the history
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](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.4.2`
-> `==2.5.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.4.2/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.4.2/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>pydantic/pydantic (pydantic)</summary>

###
[`v2.5.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v250-2023-11-13)

[Compare
Source](https://togithub.com/pydantic/pydantic/compare/v2.4.2...v2.5.0)

[GitHub
release](https://togithub.com/pydantic/pydantic/releases/tag/v2.5.0)

The code released in v2.5.0 is functionally identical to that of
v2.5.0b1.

##### What's Changed

##### Packaging

- Update pydantic-core from 2.10.1 to 2.14.1, significant changes from
these updates are described below, full changelog
[here](https://togithub.com/pydantic/pydantic-core/compare/v2.10.1...v2.14.1)
- Update to `pyright==1.1.335` by
[@&#8203;Viicos](https://togithub.com/Viicos) in
[#&#8203;8075](https://togithub.com/pydantic/pydantic/pull/8075)

##### New Features

- Allow plugins to catch non `ValidationError` errors by
[@&#8203;adriangb](https://togithub.com/adriangb) in
[#&#8203;7806](https://togithub.com/pydantic/pydantic/pull/7806)
- Support `__doc__` argument in `create_model()` by
[@&#8203;chris-spann](https://togithub.com/chris-spann) in
[#&#8203;7863](https://togithub.com/pydantic/pydantic/pull/7863)
- Expose `regex_engine` flag - meaning you can use with the Rust or
Python regex libraries in constraints by
[@&#8203;utkini](https://togithub.com/utkini) in
[#&#8203;7768](https://togithub.com/pydantic/pydantic/pull/7768)
- Save return type generated from type annotation in `ComputedFieldInfo`
by [@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;7889](https://togithub.com/pydantic/pydantic/pull/7889)
- Adopting `ruff` formatter by
[@&#8203;Luca-Blight](https://togithub.com/Luca-Blight) in
[#&#8203;7930](https://togithub.com/pydantic/pydantic/pull/7930)
- Added `validation_error_cause` to config by
[@&#8203;zakstucke](https://togithub.com/zakstucke) in
[#&#8203;7626](https://togithub.com/pydantic/pydantic/pull/7626)
- Make path of the item to validate available in plugin by
[@&#8203;hramezani](https://togithub.com/hramezani) in
[#&#8203;7861](https://togithub.com/pydantic/pydantic/pull/7861)
- Add `CallableDiscriminator` and `Tag` by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;7983](https://togithub.com/pydantic/pydantic/pull/7983)
- Make union case tags affect union error messages by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;8001](https://togithub.com/pydantic/pydantic/pull/8001)
- Add `examples` and `json_schema_extra` to `@computed_field` by
[@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;8013](https://togithub.com/pydantic/pydantic/pull/8013)
- Add `JsonValue` type by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;7998](https://togithub.com/pydantic/pydantic/pull/7998)
- Allow `str` as argument to `Discriminator` by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;8047](https://togithub.com/pydantic/pydantic/pull/8047)
- Add `SchemaSerializer.__reduce__` method to enable pickle
serialization by [@&#8203;edoakes](https://togithub.com/edoakes) in
[pydantic/pydantic-core#1006](https://togithub.com/pydantic/pydantic-core/pull/1006)

##### Changes

- **Significant Change:** replace `ultra_strict` with new smart union
implementation, the way unions are validated has changed significantly
to improve performance and correctness, we have worked hard to
absolutely minimise the number of cases where behaviour has changed, see
the PR for details - by
[@&#8203;davidhewitt](https://togithub.com/davidhewitt) in
[pydantic/pydantic-core#867](https://togithub.com/pydantic/pydantic-core/pull/867)
- Add support for instance method reassignment when `extra='allow'` by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7683](https://togithub.com/pydantic/pydantic/pull/7683)
- Support JSON schema generation for `Enum` types with no cases by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7927](https://togithub.com/pydantic/pydantic/pull/7927)
- Warn if a class inherits from `Generic` before `BaseModel` by
[@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;7891](https://togithub.com/pydantic/pydantic/pull/7891)

##### Performance

- New custom JSON parser, `jiter` by
[@&#8203;samuelcolvin](https://togithub.com/samuelcolvin) in
[pydantic/pydantic-core#974](https://togithub.com/pydantic/pydantic-core/pull/974)
- PGO build for MacOS M1 by
[@&#8203;samuelcolvin](https://togithub.com/samuelcolvin) in
[pydantic/pydantic-core#1063](https://togithub.com/pydantic/pydantic-core/pull/1063)
- Use `__getattr__` for all package imports, improve import time by
[@&#8203;samuelcolvin](https://togithub.com/samuelcolvin) in
[#&#8203;7947](https://togithub.com/pydantic/pydantic/pull/7947)

##### Fixes

- Fix `mypy` issue with subclasses of `RootModel` by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7677](https://togithub.com/pydantic/pydantic/pull/7677)
- Properly rebuild the `FieldInfo` when a forward ref gets evaluated by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;7698](https://togithub.com/pydantic/pydantic/pull/7698)
- Fix failure to load `SecretStr` from JSON (regression in v2.4) by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7729](https://togithub.com/pydantic/pydantic/pull/7729)
- Fix `defer_build` behavior with `TypeAdapter` by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7736](https://togithub.com/pydantic/pydantic/pull/7736)
- Improve compatibility with legacy `mypy` versions by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;7742](https://togithub.com/pydantic/pydantic/pull/7742)
- Fix: update `TypeVar` handling when default is not set by
[@&#8203;pmmmwh](https://togithub.com/pmmmwh) in
[#&#8203;7719](https://togithub.com/pydantic/pydantic/pull/7719)
- Support specification of `strict` on `Enum` type fields by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7761](https://togithub.com/pydantic/pydantic/pull/7761)
- Wrap `weakref.ref` instead of subclassing to fix `cloudpickle`
serialization by [@&#8203;edoakes](https://togithub.com/edoakes) in
[#&#8203;7780](https://togithub.com/pydantic/pydantic/pull/7780)
- Keep values of private attributes set within `model_post_init` in
subclasses by [@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;7775](https://togithub.com/pydantic/pydantic/pull/7775)
- Add more specific type for non-callable `json_schema_extra` by
[@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;7803](https://togithub.com/pydantic/pydantic/pull/7803)
- Raise an error when deleting frozen (model) fields by
[@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;7800](https://togithub.com/pydantic/pydantic/pull/7800)
- Fix schema sorting bug with default values by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7817](https://togithub.com/pydantic/pydantic/pull/7817)
- Use generated alias for aliases that are not specified otherwise by
[@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;7802](https://togithub.com/pydantic/pydantic/pull/7802)
- Support `strict` specification for `UUID` types by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7865](https://togithub.com/pydantic/pydantic/pull/7865)
- JSON schema: fix extra parameter handling by
[@&#8203;me-and](https://togithub.com/me-and) in
[#&#8203;7810](https://togithub.com/pydantic/pydantic/pull/7810)
- Fix: support `pydantic.Field(kw_only=True)` with inherited dataclasses
by [@&#8203;PrettyWood](https://togithub.com/PrettyWood) in
[#&#8203;7827](https://togithub.com/pydantic/pydantic/pull/7827)
- Support `validate_call` decorator for methods in classes with
`__slots__` by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7883](https://togithub.com/pydantic/pydantic/pull/7883)
- Fix pydantic dataclass problem with `dataclasses.field` default by
[@&#8203;hramezani](https://togithub.com/hramezani) in
[#&#8203;7898](https://togithub.com/pydantic/pydantic/pull/7898)
- Fix schema generation for generics with union type bounds by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7899](https://togithub.com/pydantic/pydantic/pull/7899)
- Fix version for `importlib_metadata` on python 3.7 by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7904](https://togithub.com/pydantic/pydantic/pull/7904)
- Support `|` operator (Union) in PydanticRecursiveRef by
[@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;7892](https://togithub.com/pydantic/pydantic/pull/7892)
- Fix `display_as_type` for `TypeAliasType` in python 3.12 by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;7929](https://togithub.com/pydantic/pydantic/pull/7929)
- Add support for `NotRequired` generics in `TypedDict` by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[#&#8203;7932](https://togithub.com/pydantic/pydantic/pull/7932)
- Make generic `TypeAliasType` specifications produce different schema
definitions by [@&#8203;alexdrydew](https://togithub.com/alexdrydew) in
[#&#8203;7893](https://togithub.com/pydantic/pydantic/pull/7893)
- Added fix for signature of inherited dataclass by
[@&#8203;howsunjow](https://togithub.com/howsunjow) in
[#&#8203;7925](https://togithub.com/pydantic/pydantic/pull/7925)
- Make the model name generation more robust in JSON schema by
[@&#8203;joakimnordling](https://togithub.com/joakimnordling) in
[#&#8203;7881](https://togithub.com/pydantic/pydantic/pull/7881)
- Fix plurals in validation error messages (in tests) by
[@&#8203;Iipin](https://togithub.com/Iipin) in
[#&#8203;7972](https://togithub.com/pydantic/pydantic/pull/7972)
- `PrivateAttr` is passed from `Annotated` default position by
[@&#8203;tabassco](https://togithub.com/tabassco) in
[#&#8203;8004](https://togithub.com/pydantic/pydantic/pull/8004)
- Don't decode bytes (which may not be UTF8) when displaying SecretBytes
by [@&#8203;alexmojaki](https://togithub.com/alexmojaki) in
[#&#8203;8012](https://togithub.com/pydantic/pydantic/pull/8012)
- Use `classmethod` instead of `classmethod[Any, Any, Any]` by
[@&#8203;Mr-Pepe](https://togithub.com/Mr-Pepe) in
[#&#8203;7979](https://togithub.com/pydantic/pydantic/pull/7979)
- Clearer error on invalid Plugin by
[@&#8203;samuelcolvin](https://togithub.com/samuelcolvin) in
[#&#8203;8023](https://togithub.com/pydantic/pydantic/pull/8023)
- Correct pydantic dataclasses import by
[@&#8203;samuelcolvin](https://togithub.com/samuelcolvin) in
[#&#8203;8027](https://togithub.com/pydantic/pydantic/pull/8027)
- Fix misbehavior for models referencing redefined type aliases by
[@&#8203;dmontagu](https://togithub.com/dmontagu) in
[#&#8203;8050](https://togithub.com/pydantic/pydantic/pull/8050)
- Fix `Optional` field with `validate_default` only performing one field
validation by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[pydantic/pydantic-core#1002](https://togithub.com/pydantic/pydantic-core/pull/1002)
- Fix `definition-ref` bug with `Dict` keys by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[pydantic/pydantic-core#1014](https://togithub.com/pydantic/pydantic-core/pull/1014)
- Fix bug allowing validation of `bool` types with
`coerce_numbers_to_str=True` by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[pydantic/pydantic-core#1017](https://togithub.com/pydantic/pydantic-core/pull/1017)
- Don't accept `NaN` in float and decimal constraints by
[@&#8203;davidhewitt](https://togithub.com/davidhewitt) in
[pydantic/pydantic-core#1037](https://togithub.com/pydantic/pydantic-core/pull/1037)
- Add `lax_str` and `lax_int` support for enum values not inherited from
str/int by [@&#8203;michaelhly](https://togithub.com/michaelhly) in
[pydantic/pydantic-core#1015](https://togithub.com/pydantic/pydantic-core/pull/1015)
- Support subclasses in lists in `Union` of `List` types by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[pydantic/pydantic-core#1039](https://togithub.com/pydantic/pydantic-core/pull/1039)
- Allow validation against `max_digits` and `decimals` to pass if
normalized or non-normalized input is valid by
[@&#8203;sydney-runkle](https://togithub.com/sydney-runkle) in
[pydantic/pydantic-core#1049](https://togithub.com/pydantic/pydantic-core/pull/1049)
- Fix: proper pluralization in `ValidationError` messages by
[@&#8203;Iipin](https://togithub.com/Iipin) in
[pydantic/pydantic-core#1050](https://togithub.com/pydantic/pydantic-core/pull/1050)
- Disallow the string `'-'` as `datetime` input by
[@&#8203;davidhewitt](https://togithub.com/davidhewitt) in
[pydantic/speedate#52](https://togithub.com/pydantic/speedate/pull/52) &
[pydantic/pydantic-core#1060](https://togithub.com/pydantic/pydantic-core/pull/1060)
- Fix: NaN and Inf float serialization by
[@&#8203;davidhewitt](https://togithub.com/davidhewitt) in
[pydantic/pydantic-core#1062](https://togithub.com/pydantic/pydantic-core/pull/1062)
- Restore manylinux-compatible PGO builds by
[@&#8203;davidhewitt](https://togithub.com/davidhewitt) in
[pydantic/pydantic-core#1068](https://togithub.com/pydantic/pydantic-core/pull/1068)

##### New Contributors

##### `pydantic`

- [@&#8203;schneebuzz](https://togithub.com/schneebuzz) made their first
contribution in
[#&#8203;7699](https://togithub.com/pydantic/pydantic/pull/7699)
- [@&#8203;edoakes](https://togithub.com/edoakes) made their first
contribution in
[#&#8203;7780](https://togithub.com/pydantic/pydantic/pull/7780)
- [@&#8203;alexmojaki](https://togithub.com/alexmojaki) made their first
contribution in
[#&#8203;7775](https://togithub.com/pydantic/pydantic/pull/7775)
- [@&#8203;NickG123](https://togithub.com/NickG123) made their first
contribution in
[#&#8203;7751](https://togithub.com/pydantic/pydantic/pull/7751)
- [@&#8203;gowthamgts](https://togithub.com/gowthamgts) made their first
contribution in
[#&#8203;7830](https://togithub.com/pydantic/pydantic/pull/7830)
- [@&#8203;jamesbraza](https://togithub.com/jamesbraza) made their first
contribution in
[#&#8203;7848](https://togithub.com/pydantic/pydantic/pull/7848)
- [@&#8203;laundmo](https://togithub.com/laundmo) made their first
contribution in
[#&#8203;7850](https://togithub.com/pydantic/pydantic/pull/7850)
- [@&#8203;rahmatnazali](https://togithub.com/rahmatnazali) made their
first contribution in
[#&#8203;7870](https://togithub.com/pydantic/pydantic/pull/7870)
- [@&#8203;waterfountain1996](https://togithub.com/waterfountain1996)
made their first contribution in
[#&#8203;7878](https://togithub.com/pydantic/pydantic/pull/7878)
- [@&#8203;chris-spann](https://togithub.com/chris-spann) made their
first contribution in
[#&#8203;7863](https://togithub.com/pydantic/pydantic/pull/7863)
- [@&#8203;me-and](https://togithub.com/me-and) made their first
contribution in
[#&#8203;7810](https://togithub.com/pydantic/pydantic/pull/7810)
- [@&#8203;utkini](https://togithub.com/utkini) made their first
contribution in
[#&#8203;7768](https://togithub.com/pydantic/pydantic/pull/7768)
- [@&#8203;bn-l](https://togithub.com/bn-l) made their first
contribution in
[#&#8203;7744](https://togithub.com/pydantic/pydantic/pull/7744)
- [@&#8203;alexdrydew](https://togithub.com/alexdrydew) made their first
contribution in
[#&#8203;7893](https://togithub.com/pydantic/pydantic/pull/7893)
- [@&#8203;Luca-Blight](https://togithub.com/Luca-Blight) made their
first contribution in
[#&#8203;7930](https://togithub.com/pydantic/pydantic/pull/7930)
- [@&#8203;howsunjow](https://togithub.com/howsunjow) made their first
contribution in
[#&#8203;7925](https://togithub.com/pydantic/pydantic/pull/7925)
- [@&#8203;joakimnordling](https://togithub.com/joakimnordling) made
their first contribution in
[#&#8203;7881](https://togithub.com/pydantic/pydantic/pull/7881)
- [@&#8203;icfly2](https://togithub.com/icfly2) made their first
contribution in
[#&#8203;7976](https://togithub.com/pydantic/pydantic/pull/7976)
- [@&#8203;Yummy-Yums](https://togithub.com/Yummy-Yums) made their first
contribution in
[#&#8203;8003](https://togithub.com/pydantic/pydantic/pull/8003)
- [@&#8203;Iipin](https://togithub.com/Iipin) made their first
contribution in
[#&#8203;7972](https://togithub.com/pydantic/pydantic/pull/7972)
- [@&#8203;tabassco](https://togithub.com/tabassco) made their first
contribution in
[#&#8203;8004](https://togithub.com/pydantic/pydantic/pull/8004)
- [@&#8203;Mr-Pepe](https://togithub.com/Mr-Pepe) made their first
contribution in
[#&#8203;7979](https://togithub.com/pydantic/pydantic/pull/7979)
- [@&#8203;0x00cl](https://togithub.com/0x00cl) made their first
contribution in
[#&#8203;8010](https://togithub.com/pydantic/pydantic/pull/8010)
- [@&#8203;barraponto](https://togithub.com/barraponto) made their first
contribution in
[#&#8203;8032](https://togithub.com/pydantic/pydantic/pull/8032)

##### `pydantic-core`

- [@&#8203;sisp](https://togithub.com/sisp) made their first
contribution in
[pydantic/pydantic-core#995](https://togithub.com/pydantic/pydantic-core/pull/995)
- [@&#8203;michaelhly](https://togithub.com/michaelhly) made their first
contribution in
[pydantic/pydantic-core#1015](https://togithub.com/pydantic/pydantic-core/pull/1015)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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 has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/allenporter/flux-local).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40Ni4wIiwidXBkYXRlZEluVmVyIjoiMzcuNDYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
  • Loading branch information
renovate[bot] authored Nov 14, 2023
1 parent dc3441d commit 65d7d2d
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ nest_asyncio==1.5.8
pdoc==14.1.0
pip==23.3.1
pre-commit==3.5.0
pydantic==2.4.2
pydantic==2.5.0
pytest==7.4.3
pytest-asyncio==0.21.1
pytest-cov==4.1.0
Expand Down

0 comments on commit 65d7d2d

Please sign in to comment.