Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Support for parsing parial JSON strings in Python #66

Merged
merged 3 commits into from
Mar 25, 2024

Conversation

samuelcolvin
Copy link
Member

As requested by @jxnl, add allow_partial argument to python parsing.

Copy link

codecov bot commented Feb 6, 2024

Codecov Report

Merging #66 (c3f6b6b) into main (4dd0c35) will increase coverage by 0.60%.
The diff coverage is 94.59%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #66      +/-   ##
==========================================
+ Coverage   95.74%   96.35%   +0.60%     
==========================================
  Files           8        8              
  Lines        1199     1234      +35     
==========================================
+ Hits         1148     1189      +41     
+ Misses         51       45       -6     
Files Coverage Δ
src/python.rs 95.93% <94.59%> (+0.80%) ⬆️

... and 6 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4dd0c35...c3f6b6b. Read the comment docs.

Copy link

codspeed-hq bot commented Feb 6, 2024

CodSpeed Performance Report

Merging #66 will not alter performance

Comparing partial-parsing (c3f6b6b) with main (4dd0c35)

Summary

✅ 56 untouched benchmarks

@jxnl
Copy link

jxnl commented Feb 6, 2024

Thanks, with this we'll be able to stream a little bit cleaner.

src/python.rs Outdated
@@ -26,12 +27,19 @@ use crate::string_decoder::{StringDecoder, Tape};
/// # Returns
///
/// A [PyObject](https://docs.rs/pyo3/latest/pyo3/type.PyObject.html) representing the parsed JSON value.
pub fn python_parse(py: Python, json_data: &[u8], allow_inf_nan: bool, cache_strings: bool) -> JsonResult<PyObject> {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need to update the docstring above.

Copy link
Collaborator

@davidhewitt davidhewitt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, overall looks good! Couple of questions.

I also wonder, just to check I understand. The idea is that users will keep the buffer of their partial JSON, so when the next chunk arrives they concatenate those and get jiter to re-parse the lot?

I.e. it sees to me that this doesn't allow the parser to "save" state and resume with the next chunk of bytes, which might be nice for a true streaming implementation.

src/python.rs Outdated Show resolved Hide resolved
src/python.rs Outdated Show resolved Hide resolved
src/python.rs Outdated Show resolved Hide resolved
@samuelcolvin
Copy link
Member Author

I.e. it sees to me that this doesn't allow the parser to "save" state and resume with the next chunk of bytes, which might be nice for a true streaming implementation.

That's correct. We could perhaps add support for saving the state, but that's a much bigger issue and should be done later.

Copy link
Collaborator

@davidhewitt davidhewitt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Happy overall subject to any docstring updates / refactoring you see fit to do before merge.

@samuelcolvin samuelcolvin merged commit 56db4fc into main Mar 25, 2024
10 checks passed
@samuelcolvin samuelcolvin deleted the partial-parsing branch March 25, 2024 21:18
renovate bot added a commit to spiraldb/ziggy-pydust that referenced this pull request Apr 11, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [pydantic](https://github.com/pydantic/pydantic)
([changelog](https://docs.pydantic.dev/latest/changelog/)) | `2.6.4` ->
`2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

###
[`v2.7.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.4...v2.7.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

- Correct docs, logic for `model_construct` behavior with `extra` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8807](https://github.com/pydantic/pydantic/pull/8807)
- Improve error message for improper `RootModel` subclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8857](https://github.com/pydantic/pydantic/pull/8857)
- Use `PEP570` syntax by [@&#8203;Viicos](https://github.com/Viicos)
in [#&#8203;8940](https://github.com/pydantic/pydantic/pull/8940)
- Add `enum` and `type` to the JSON schema for single item literals by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8944](https://github.com/pydantic/pydantic/pull/8944)
- Deprecate `update_json_schema` internal function by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9125](https://github.com/pydantic/pydantic/pull/9125)
- Serialize duration to hour minute second, instead of just seconds by
[@&#8203;kakilangit](https://github.com/kakilangit) in
[pydantic/speedate#50](https://github.com/pydantic/speedate/pull/50)
- Trimming str before parsing to int and float by
[@&#8203;hungtsetse](https://github.com/hungtsetse) in
[pydantic/pydantic-core#1203](https://github.com/pydantic/pydantic-core/pull/1203)

##### Performance

- `enum` validator improvements by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9045](https://github.com/pydantic/pydantic/pull/9045)
- Move `enum` validation and serialization to Rust by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9064](https://github.com/pydantic/pydantic/pull/9064)
- Improve schema generation for nested dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9114](https://github.com/pydantic/pydantic/pull/9114)
- Fast path for ASCII python string creation in JSON by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#72](https://github.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
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#65](https://github.com/pydantic/jiter/pull/65)
- Support JSON `Cow<str>` from `jiter` by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1231](https://github.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1248](https://github.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[pydantic/pydantic-core#1240](https://github.com/pydantic/pydantic-core/pull/1240)

##### Fixes

- Fix strict parsing for some `Sequence`s by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8614](https://github.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by
[@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;8659](https://github.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by
[@&#8203;Holi0317](https://github.com/Holi0317) in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by
[@&#8203;bluenote10](https://github.com/bluenote10) in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8666](https://github.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8681](https://github.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8679](https://github.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition
references by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8702](https://github.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8710](https://github.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug
by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8718](https://github.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by
[@&#8203;13sin](https://github.com/13sin) in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()`
starting to work inside `pytest.raises()` by
[@&#8203;mgorny](https://github.com/mgorny) in
[#&#8203;8678](https://github.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by
[@&#8203;DanielNoord](https://github.com/DanielNoord) in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8799](https://github.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required'
parameters by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8801](https://github.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not
present in the subclass module namespace by
[@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by
`typing.get_type_hints` by
[@&#8203;devmonkey22](https://github.com/devmonkey22) in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8810](https://github.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8823](https://github.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8837](https://github.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8877](https://github.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;8860](https://github.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by
[@&#8203;Czaki](https://github.com/Czaki) in
[#&#8203;8917](https://github.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by
[@&#8203;adriangb](https://github.com/adriangb) in
[#&#8203;8923](https://github.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for
`enum`s by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8920](https://github.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8928](https://github.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8932](https://github.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with
discriminators by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8950](https://github.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated
unions by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8951](https://github.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9008](https://github.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9031](https://github.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9039](https://github.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9066](https://github.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9082](https://github.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;9097](https://github.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by
[@&#8203;andresliszt](https://github.com/andresliszt) in
[#&#8203;8977](https://github.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent
model by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child
class by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9111](https://github.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9124](https://github.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah
blah]` by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9128](https://github.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;9134](https://github.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by
[@&#8203;ornariece](https://github.com/ornariece) in
[#&#8203;9144](https://github.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by
[@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9193](https://github.com/pydantic/pydantic/pull/9193)

##### New Contributors

- [@&#8203;hungtsetse](https://github.com/hungtsetse) made their first
contribution in
[#&#8203;8546](https://github.com/pydantic/pydantic/pull/8546)
- [@&#8203;StrawHatDrag0n](https://github.com/StrawHatDrag0n) made
their first contribution in
[#&#8203;8583](https://github.com/pydantic/pydantic/pull/8583)
- [@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) made their
first contribution in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- [@&#8203;Holi0317](https://github.com/Holi0317) made their first
contribution in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- [@&#8203;bluenote10](https://github.com/bluenote10) made their first
contribution in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- [@&#8203;ADSteele916](https://github.com/ADSteele916) made their
first contribution in
[#&#8203;8703](https://github.com/pydantic/pydantic/pull/8703)
- [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made
their first contribution in
[#&#8203;8731](https://github.com/pydantic/pydantic/pull/8731)
- [@&#8203;jks15satoshi](https://github.com/jks15satoshi) made their
first contribution in
[#&#8203;8706](https://github.com/pydantic/pydantic/pull/8706)
- [@&#8203;13sin](https://github.com/13sin) made their first
contribution in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- [@&#8203;DanielNoord](https://github.com/DanielNoord) made their
first contribution in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
-
[@&#8203;conradogarciaberrotaran](https://github.com/conradogarciaberrotaran)
made their first contribution in
[#&#8203;8519](https://github.com/pydantic/pydantic/pull/8519)
- [@&#8203;chris-griffin](https://github.com/chris-griffin) made their
first contribution in
[#&#8203;8775](https://github.com/pydantic/pydantic/pull/8775)
- [@&#8203;LouisGobert](https://github.com/LouisGobert) made their
first contribution in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- [@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) made
their first contribution in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- [@&#8203;devmonkey22](https://github.com/devmonkey22) made their
first contribution in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- [@&#8203;adamency](https://github.com/adamency) made their first
contribution in
[#&#8203;8847](https://github.com/pydantic/pydantic/pull/8847)
- [@&#8203;MamfTheKramf](https://github.com/MamfTheKramf) made their
first contribution in
[#&#8203;8851](https://github.com/pydantic/pydantic/pull/8851)
- [@&#8203;ornariece](https://github.com/ornariece) made their first
contribution in
[#&#8203;9001](https://github.com/pydantic/pydantic/pull/9001)
- [@&#8203;alexeyt101](https://github.com/alexeyt101) made their first
contribution in
[#&#8203;9004](https://github.com/pydantic/pydantic/pull/9004)
- [@&#8203;wannieman98](https://github.com/wannieman98) made their
first contribution in
[#&#8203;8947](https://github.com/pydantic/pydantic/pull/8947)
- [@&#8203;solidguy7](https://github.com/solidguy7) made their first
contribution in
[#&#8203;9062](https://github.com/pydantic/pydantic/pull/9062)
- [@&#8203;kloczek](https://github.com/kloczek) made their first
contribution in
[#&#8203;9047](https://github.com/pydantic/pydantic/pull/9047)
- [@&#8203;jag-k](https://github.com/jag-k) made their first
contribution in
[#&#8203;9053](https://github.com/pydantic/pydantic/pull/9053)
- [@&#8203;priya-gitTest](https://github.com/priya-gitTest) made their
first contribution in
[#&#8203;9088](https://github.com/pydantic/pydantic/pull/9088)
- [@&#8203;Youssefares](https://github.com/Youssefares) made their
first contribution in
[#&#8203;9023](https://github.com/pydantic/pydantic/pull/9023)
- [@&#8203;chan-vince](https://github.com/chan-vince) made their first
contribution in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- [@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) made their
first contribution in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- [@&#8203;Lance-Drane](https://github.com/Lance-Drane) made their
first contribution in
[#&#8203;9166](https://github.com/pydantic/pydantic/pull/9166)

</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/fulcrum-so/ziggy-pydust).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoiZGV2ZWxvcCJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate bot added a commit to allenporter/flux-local that referenced this pull request Apr 12, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [pydantic](https://github.com/pydantic/pydantic)
([changelog](https://docs.pydantic.dev/latest/changelog/)) | `==2.6.4`
-> `==2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

###
[`v2.7.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.4...v2.7.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

- Correct docs, logic for `model_construct` behavior with `extra` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8807](https://github.com/pydantic/pydantic/pull/8807)
- Improve error message for improper `RootModel` subclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8857](https://github.com/pydantic/pydantic/pull/8857)
- Use `PEP570` syntax by [@&#8203;Viicos](https://github.com/Viicos)
in [#&#8203;8940](https://github.com/pydantic/pydantic/pull/8940)
- Add `enum` and `type` to the JSON schema for single item literals by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8944](https://github.com/pydantic/pydantic/pull/8944)
- Deprecate `update_json_schema` internal function by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9125](https://github.com/pydantic/pydantic/pull/9125)
- Serialize duration to hour minute second, instead of just seconds by
[@&#8203;kakilangit](https://github.com/kakilangit) in
[pydantic/speedate#50](https://github.com/pydantic/speedate/pull/50)
- Trimming str before parsing to int and float by
[@&#8203;hungtsetse](https://github.com/hungtsetse) in
[pydantic/pydantic-core#1203](https://github.com/pydantic/pydantic-core/pull/1203)

##### Performance

- `enum` validator improvements by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9045](https://github.com/pydantic/pydantic/pull/9045)
- Move `enum` validation and serialization to Rust by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9064](https://github.com/pydantic/pydantic/pull/9064)
- Improve schema generation for nested dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9114](https://github.com/pydantic/pydantic/pull/9114)
- Fast path for ASCII python string creation in JSON by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#72](https://github.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
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#65](https://github.com/pydantic/jiter/pull/65)
- Support JSON `Cow<str>` from `jiter` by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1231](https://github.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1248](https://github.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[pydantic/pydantic-core#1240](https://github.com/pydantic/pydantic-core/pull/1240)

##### Fixes

- Fix strict parsing for some `Sequence`s by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8614](https://github.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by
[@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;8659](https://github.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by
[@&#8203;Holi0317](https://github.com/Holi0317) in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by
[@&#8203;bluenote10](https://github.com/bluenote10) in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8666](https://github.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8681](https://github.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8679](https://github.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition
references by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8702](https://github.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8710](https://github.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug
by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8718](https://github.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by
[@&#8203;13sin](https://github.com/13sin) in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()`
starting to work inside `pytest.raises()` by
[@&#8203;mgorny](https://github.com/mgorny) in
[#&#8203;8678](https://github.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by
[@&#8203;DanielNoord](https://github.com/DanielNoord) in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8799](https://github.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required'
parameters by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8801](https://github.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not
present in the subclass module namespace by
[@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by
`typing.get_type_hints` by
[@&#8203;devmonkey22](https://github.com/devmonkey22) in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8810](https://github.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8823](https://github.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8837](https://github.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8877](https://github.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;8860](https://github.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by
[@&#8203;Czaki](https://github.com/Czaki) in
[#&#8203;8917](https://github.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by
[@&#8203;adriangb](https://github.com/adriangb) in
[#&#8203;8923](https://github.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for
`enum`s by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8920](https://github.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8928](https://github.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8932](https://github.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with
discriminators by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8950](https://github.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated
unions by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8951](https://github.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9008](https://github.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9031](https://github.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9039](https://github.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9066](https://github.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9082](https://github.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;9097](https://github.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by
[@&#8203;andresliszt](https://github.com/andresliszt) in
[#&#8203;8977](https://github.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent
model by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child
class by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9111](https://github.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9124](https://github.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah
blah]` by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9128](https://github.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;9134](https://github.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by
[@&#8203;ornariece](https://github.com/ornariece) in
[#&#8203;9144](https://github.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by
[@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9193](https://github.com/pydantic/pydantic/pull/9193)

##### New Contributors

- [@&#8203;hungtsetse](https://github.com/hungtsetse) made their first
contribution in
[#&#8203;8546](https://github.com/pydantic/pydantic/pull/8546)
- [@&#8203;StrawHatDrag0n](https://github.com/StrawHatDrag0n) made
their first contribution in
[#&#8203;8583](https://github.com/pydantic/pydantic/pull/8583)
- [@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) made their
first contribution in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- [@&#8203;Holi0317](https://github.com/Holi0317) made their first
contribution in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- [@&#8203;bluenote10](https://github.com/bluenote10) made their first
contribution in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- [@&#8203;ADSteele916](https://github.com/ADSteele916) made their
first contribution in
[#&#8203;8703](https://github.com/pydantic/pydantic/pull/8703)
- [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made
their first contribution in
[#&#8203;8731](https://github.com/pydantic/pydantic/pull/8731)
- [@&#8203;jks15satoshi](https://github.com/jks15satoshi) made their
first contribution in
[#&#8203;8706](https://github.com/pydantic/pydantic/pull/8706)
- [@&#8203;13sin](https://github.com/13sin) made their first
contribution in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- [@&#8203;DanielNoord](https://github.com/DanielNoord) made their
first contribution in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
-
[@&#8203;conradogarciaberrotaran](https://github.com/conradogarciaberrotaran)
made their first contribution in
[#&#8203;8519](https://github.com/pydantic/pydantic/pull/8519)
- [@&#8203;chris-griffin](https://github.com/chris-griffin) made their
first contribution in
[#&#8203;8775](https://github.com/pydantic/pydantic/pull/8775)
- [@&#8203;LouisGobert](https://github.com/LouisGobert) made their
first contribution in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- [@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) made
their first contribution in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- [@&#8203;devmonkey22](https://github.com/devmonkey22) made their
first contribution in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- [@&#8203;adamency](https://github.com/adamency) made their first
contribution in
[#&#8203;8847](https://github.com/pydantic/pydantic/pull/8847)
- [@&#8203;MamfTheKramf](https://github.com/MamfTheKramf) made their
first contribution in
[#&#8203;8851](https://github.com/pydantic/pydantic/pull/8851)
- [@&#8203;ornariece](https://github.com/ornariece) made their first
contribution in
[#&#8203;9001](https://github.com/pydantic/pydantic/pull/9001)
- [@&#8203;alexeyt101](https://github.com/alexeyt101) made their first
contribution in
[#&#8203;9004](https://github.com/pydantic/pydantic/pull/9004)
- [@&#8203;wannieman98](https://github.com/wannieman98) made their
first contribution in
[#&#8203;8947](https://github.com/pydantic/pydantic/pull/8947)
- [@&#8203;solidguy7](https://github.com/solidguy7) made their first
contribution in
[#&#8203;9062](https://github.com/pydantic/pydantic/pull/9062)
- [@&#8203;kloczek](https://github.com/kloczek) made their first
contribution in
[#&#8203;9047](https://github.com/pydantic/pydantic/pull/9047)
- [@&#8203;jag-k](https://github.com/jag-k) made their first
contribution in
[#&#8203;9053](https://github.com/pydantic/pydantic/pull/9053)
- [@&#8203;priya-gitTest](https://github.com/priya-gitTest) made their
first contribution in
[#&#8203;9088](https://github.com/pydantic/pydantic/pull/9088)
- [@&#8203;Youssefares](https://github.com/Youssefares) made their
first contribution in
[#&#8203;9023](https://github.com/pydantic/pydantic/pull/9023)
- [@&#8203;chan-vince](https://github.com/chan-vince) made their first
contribution in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- [@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) made their
first contribution in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- [@&#8203;Lance-Drane](https://github.com/Lance-Drane) made their
first contribution in
[#&#8203;9166](https://github.com/pydantic/pydantic/pull/9166)

</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:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
allenporter pushed a commit to allenporter/pyrainbird that referenced this pull request Apr 13, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [pydantic](https://github.com/pydantic/pydantic)
([changelog](https://docs.pydantic.dev/latest/changelog/)) | `==2.6.4`
-> `==2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

###
[`v2.7.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.4...v2.7.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

- Correct docs, logic for `model_construct` behavior with `extra` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8807](https://github.com/pydantic/pydantic/pull/8807)
- Improve error message for improper `RootModel` subclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8857](https://github.com/pydantic/pydantic/pull/8857)
- Use `PEP570` syntax by [@&#8203;Viicos](https://github.com/Viicos)
in [#&#8203;8940](https://github.com/pydantic/pydantic/pull/8940)
- Add `enum` and `type` to the JSON schema for single item literals by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8944](https://github.com/pydantic/pydantic/pull/8944)
- Deprecate `update_json_schema` internal function by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9125](https://github.com/pydantic/pydantic/pull/9125)
- Serialize duration to hour minute second, instead of just seconds by
[@&#8203;kakilangit](https://github.com/kakilangit) in
[pydantic/speedate#50](https://github.com/pydantic/speedate/pull/50)
- Trimming str before parsing to int and float by
[@&#8203;hungtsetse](https://github.com/hungtsetse) in
[pydantic/pydantic-core#1203](https://github.com/pydantic/pydantic-core/pull/1203)

##### Performance

- `enum` validator improvements by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9045](https://github.com/pydantic/pydantic/pull/9045)
- Move `enum` validation and serialization to Rust by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9064](https://github.com/pydantic/pydantic/pull/9064)
- Improve schema generation for nested dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9114](https://github.com/pydantic/pydantic/pull/9114)
- Fast path for ASCII python string creation in JSON by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#72](https://github.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
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#65](https://github.com/pydantic/jiter/pull/65)
- Support JSON `Cow<str>` from `jiter` by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1231](https://github.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1248](https://github.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[pydantic/pydantic-core#1240](https://github.com/pydantic/pydantic-core/pull/1240)

##### Fixes

- Fix strict parsing for some `Sequence`s by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8614](https://github.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by
[@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;8659](https://github.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by
[@&#8203;Holi0317](https://github.com/Holi0317) in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by
[@&#8203;bluenote10](https://github.com/bluenote10) in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8666](https://github.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8681](https://github.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8679](https://github.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition
references by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8702](https://github.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8710](https://github.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug
by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8718](https://github.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by
[@&#8203;13sin](https://github.com/13sin) in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()`
starting to work inside `pytest.raises()` by
[@&#8203;mgorny](https://github.com/mgorny) in
[#&#8203;8678](https://github.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by
[@&#8203;DanielNoord](https://github.com/DanielNoord) in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8799](https://github.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required'
parameters by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8801](https://github.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not
present in the subclass module namespace by
[@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by
`typing.get_type_hints` by
[@&#8203;devmonkey22](https://github.com/devmonkey22) in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8810](https://github.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8823](https://github.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8837](https://github.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8877](https://github.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;8860](https://github.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by
[@&#8203;Czaki](https://github.com/Czaki) in
[#&#8203;8917](https://github.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by
[@&#8203;adriangb](https://github.com/adriangb) in
[#&#8203;8923](https://github.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for
`enum`s by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8920](https://github.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8928](https://github.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8932](https://github.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with
discriminators by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8950](https://github.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated
unions by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8951](https://github.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9008](https://github.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9031](https://github.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9039](https://github.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9066](https://github.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9082](https://github.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;9097](https://github.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by
[@&#8203;andresliszt](https://github.com/andresliszt) in
[#&#8203;8977](https://github.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent
model by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child
class by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9111](https://github.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9124](https://github.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah
blah]` by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9128](https://github.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;9134](https://github.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by
[@&#8203;ornariece](https://github.com/ornariece) in
[#&#8203;9144](https://github.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by
[@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9193](https://github.com/pydantic/pydantic/pull/9193)

##### New Contributors

- [@&#8203;hungtsetse](https://github.com/hungtsetse) made their first
contribution in
[#&#8203;8546](https://github.com/pydantic/pydantic/pull/8546)
- [@&#8203;StrawHatDrag0n](https://github.com/StrawHatDrag0n) made
their first contribution in
[#&#8203;8583](https://github.com/pydantic/pydantic/pull/8583)
- [@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) made their
first contribution in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- [@&#8203;Holi0317](https://github.com/Holi0317) made their first
contribution in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- [@&#8203;bluenote10](https://github.com/bluenote10) made their first
contribution in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- [@&#8203;ADSteele916](https://github.com/ADSteele916) made their
first contribution in
[#&#8203;8703](https://github.com/pydantic/pydantic/pull/8703)
- [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made
their first contribution in
[#&#8203;8731](https://github.com/pydantic/pydantic/pull/8731)
- [@&#8203;jks15satoshi](https://github.com/jks15satoshi) made their
first contribution in
[#&#8203;8706](https://github.com/pydantic/pydantic/pull/8706)
- [@&#8203;13sin](https://github.com/13sin) made their first
contribution in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- [@&#8203;DanielNoord](https://github.com/DanielNoord) made their
first contribution in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
-
[@&#8203;conradogarciaberrotaran](https://github.com/conradogarciaberrotaran)
made their first contribution in
[#&#8203;8519](https://github.com/pydantic/pydantic/pull/8519)
- [@&#8203;chris-griffin](https://github.com/chris-griffin) made their
first contribution in
[#&#8203;8775](https://github.com/pydantic/pydantic/pull/8775)
- [@&#8203;LouisGobert](https://github.com/LouisGobert) made their
first contribution in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- [@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) made
their first contribution in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- [@&#8203;devmonkey22](https://github.com/devmonkey22) made their
first contribution in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- [@&#8203;adamency](https://github.com/adamency) made their first
contribution in
[#&#8203;8847](https://github.com/pydantic/pydantic/pull/8847)
- [@&#8203;MamfTheKramf](https://github.com/MamfTheKramf) made their
first contribution in
[#&#8203;8851](https://github.com/pydantic/pydantic/pull/8851)
- [@&#8203;ornariece](https://github.com/ornariece) made their first
contribution in
[#&#8203;9001](https://github.com/pydantic/pydantic/pull/9001)
- [@&#8203;alexeyt101](https://github.com/alexeyt101) made their first
contribution in
[#&#8203;9004](https://github.com/pydantic/pydantic/pull/9004)
- [@&#8203;wannieman98](https://github.com/wannieman98) made their
first contribution in
[#&#8203;8947](https://github.com/pydantic/pydantic/pull/8947)
- [@&#8203;solidguy7](https://github.com/solidguy7) made their first
contribution in
[#&#8203;9062](https://github.com/pydantic/pydantic/pull/9062)
- [@&#8203;kloczek](https://github.com/kloczek) made their first
contribution in
[#&#8203;9047](https://github.com/pydantic/pydantic/pull/9047)
- [@&#8203;jag-k](https://github.com/jag-k) made their first
contribution in
[#&#8203;9053](https://github.com/pydantic/pydantic/pull/9053)
- [@&#8203;priya-gitTest](https://github.com/priya-gitTest) made their
first contribution in
[#&#8203;9088](https://github.com/pydantic/pydantic/pull/9088)
- [@&#8203;Youssefares](https://github.com/Youssefares) made their
first contribution in
[#&#8203;9023](https://github.com/pydantic/pydantic/pull/9023)
- [@&#8203;chan-vince](https://github.com/chan-vince) made their first
contribution in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- [@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) made their
first contribution in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- [@&#8203;Lance-Drane](https://github.com/Lance-Drane) made their
first contribution in
[#&#8203;9166](https://github.com/pydantic/pydantic/pull/9166)

</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/pyrainbird).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
jooola added a commit to libretime/libretime that referenced this pull request Apr 13, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [pydantic](https://github.com/pydantic/pydantic)
([changelog](https://docs.pydantic.dev/latest/changelog/)) |
`>=2.5.0,<2.7` -> `>=2.5.0,<2.8` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

###
[`v2.7.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.4...v2.7.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

- Correct docs, logic for `model_construct` behavior with `extra` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8807](https://github.com/pydantic/pydantic/pull/8807)
- Improve error message for improper `RootModel` subclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8857](https://github.com/pydantic/pydantic/pull/8857)
- Use `PEP570` syntax by [@&#8203;Viicos](https://github.com/Viicos)
in [#&#8203;8940](https://github.com/pydantic/pydantic/pull/8940)
- Add `enum` and `type` to the JSON schema for single item literals by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8944](https://github.com/pydantic/pydantic/pull/8944)
- Deprecate `update_json_schema` internal function by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9125](https://github.com/pydantic/pydantic/pull/9125)
- Serialize duration to hour minute second, instead of just seconds by
[@&#8203;kakilangit](https://github.com/kakilangit) in
[pydantic/speedate#50](https://github.com/pydantic/speedate/pull/50)
- Trimming str before parsing to int and float by
[@&#8203;hungtsetse](https://github.com/hungtsetse) in
[pydantic/pydantic-core#1203](https://github.com/pydantic/pydantic-core/pull/1203)

##### Performance

- `enum` validator improvements by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9045](https://github.com/pydantic/pydantic/pull/9045)
- Move `enum` validation and serialization to Rust by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9064](https://github.com/pydantic/pydantic/pull/9064)
- Improve schema generation for nested dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9114](https://github.com/pydantic/pydantic/pull/9114)
- Fast path for ASCII python string creation in JSON by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#72](https://github.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
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#65](https://github.com/pydantic/jiter/pull/65)
- Support JSON `Cow<str>` from `jiter` by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1231](https://github.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1248](https://github.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[pydantic/pydantic-core#1240](https://github.com/pydantic/pydantic-core/pull/1240)

##### Fixes

- Fix strict parsing for some `Sequence`s by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8614](https://github.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by
[@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;8659](https://github.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by
[@&#8203;Holi0317](https://github.com/Holi0317) in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by
[@&#8203;bluenote10](https://github.com/bluenote10) in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8666](https://github.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8681](https://github.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8679](https://github.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition
references by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8702](https://github.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8710](https://github.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug
by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8718](https://github.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by
[@&#8203;13sin](https://github.com/13sin) in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()`
starting to work inside `pytest.raises()` by
[@&#8203;mgorny](https://github.com/mgorny) in
[#&#8203;8678](https://github.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by
[@&#8203;DanielNoord](https://github.com/DanielNoord) in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8799](https://github.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required'
parameters by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8801](https://github.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not
present in the subclass module namespace by
[@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by
`typing.get_type_hints` by
[@&#8203;devmonkey22](https://github.com/devmonkey22) in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8810](https://github.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8823](https://github.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8837](https://github.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8877](https://github.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;8860](https://github.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by
[@&#8203;Czaki](https://github.com/Czaki) in
[#&#8203;8917](https://github.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by
[@&#8203;adriangb](https://github.com/adriangb) in
[#&#8203;8923](https://github.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for
`enum`s by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8920](https://github.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8928](https://github.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8932](https://github.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with
discriminators by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8950](https://github.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated
unions by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8951](https://github.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9008](https://github.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9031](https://github.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9039](https://github.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9066](https://github.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9082](https://github.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;9097](https://github.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by
[@&#8203;andresliszt](https://github.com/andresliszt) in
[#&#8203;8977](https://github.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent
model by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child
class by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9111](https://github.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9124](https://github.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah
blah]` by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9128](https://github.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;9134](https://github.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by
[@&#8203;ornariece](https://github.com/ornariece) in
[#&#8203;9144](https://github.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by
[@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9193](https://github.com/pydantic/pydantic/pull/9193)

##### New Contributors

- [@&#8203;hungtsetse](https://github.com/hungtsetse) made their first
contribution in
[#&#8203;8546](https://github.com/pydantic/pydantic/pull/8546)
- [@&#8203;StrawHatDrag0n](https://github.com/StrawHatDrag0n) made
their first contribution in
[#&#8203;8583](https://github.com/pydantic/pydantic/pull/8583)
- [@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) made their
first contribution in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- [@&#8203;Holi0317](https://github.com/Holi0317) made their first
contribution in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- [@&#8203;bluenote10](https://github.com/bluenote10) made their first
contribution in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- [@&#8203;ADSteele916](https://github.com/ADSteele916) made their
first contribution in
[#&#8203;8703](https://github.com/pydantic/pydantic/pull/8703)
- [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made
their first contribution in
[#&#8203;8731](https://github.com/pydantic/pydantic/pull/8731)
- [@&#8203;jks15satoshi](https://github.com/jks15satoshi) made their
first contribution in
[#&#8203;8706](https://github.com/pydantic/pydantic/pull/8706)
- [@&#8203;13sin](https://github.com/13sin) made their first
contribution in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- [@&#8203;DanielNoord](https://github.com/DanielNoord) made their
first contribution in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
-
[@&#8203;conradogarciaberrotaran](https://github.com/conradogarciaberrotaran)
made their first contribution in
[#&#8203;8519](https://github.com/pydantic/pydantic/pull/8519)
- [@&#8203;chris-griffin](https://github.com/chris-griffin) made their
first contribution in
[#&#8203;8775](https://github.com/pydantic/pydantic/pull/8775)
- [@&#8203;LouisGobert](https://github.com/LouisGobert) made their
first contribution in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- [@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) made
their first contribution in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- [@&#8203;devmonkey22](https://github.com/devmonkey22) made their
first contribution in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- [@&#8203;adamency](https://github.com/adamency) made their first
contribution in
[#&#8203;8847](https://github.com/pydantic/pydantic/pull/8847)
- [@&#8203;MamfTheKramf](https://github.com/MamfTheKramf) made their
first contribution in
[#&#8203;8851](https://github.com/pydantic/pydantic/pull/8851)
- [@&#8203;ornariece](https://github.com/ornariece) made their first
contribution in
[#&#8203;9001](https://github.com/pydantic/pydantic/pull/9001)
- [@&#8203;alexeyt101](https://github.com/alexeyt101) made their first
contribution in
[#&#8203;9004](https://github.com/pydantic/pydantic/pull/9004)
- [@&#8203;wannieman98](https://github.com/wannieman98) made their
first contribution in
[#&#8203;8947](https://github.com/pydantic/pydantic/pull/8947)
- [@&#8203;solidguy7](https://github.com/solidguy7) made their first
contribution in
[#&#8203;9062](https://github.com/pydantic/pydantic/pull/9062)
- [@&#8203;kloczek](https://github.com/kloczek) made their first
contribution in
[#&#8203;9047](https://github.com/pydantic/pydantic/pull/9047)
- [@&#8203;jag-k](https://github.com/jag-k) made their first
contribution in
[#&#8203;9053](https://github.com/pydantic/pydantic/pull/9053)
- [@&#8203;priya-gitTest](https://github.com/priya-gitTest) made their
first contribution in
[#&#8203;9088](https://github.com/pydantic/pydantic/pull/9088)
- [@&#8203;Youssefares](https://github.com/Youssefares) made their
first contribution in
[#&#8203;9023](https://github.com/pydantic/pydantic/pull/9023)
- [@&#8203;chan-vince](https://github.com/chan-vince) made their first
contribution in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- [@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) made their
first contribution in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- [@&#8203;Lance-Drane](https://github.com/Lance-Drane) made their
first contribution in
[#&#8203;9166](https://github.com/pydantic/pydantic/pull/9166)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
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 these
updates 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/libretime/libretime).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: jo <ljonas@riseup.net>
nicolewhite pushed a commit to autoblocksai/autoblocks-examples that referenced this pull request Apr 17, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@headlessui/react](https://github.com/tailwindlabs/headlessui)
([source](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react))
| [`1.7.18` ->
`1.7.19`](https://renovatebot.com/diffs/npm/@headlessui%2freact/1.7.18/1.7.19)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@headlessui%2freact/1.7.19?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@headlessui%2freact/1.7.19?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@headlessui%2freact/1.7.18/1.7.19?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@headlessui%2freact/1.7.18/1.7.19?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`20.12.2` ->
`20.12.7`](https://renovatebot.com/diffs/npm/@types%2fnode/20.12.2/20.12.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.12.2/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.12.2/20.12.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react)
([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react))
| [`18.2.73` ->
`18.2.79`](https://renovatebot.com/diffs/npm/@types%2freact/18.2.73/18.2.79)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/18.2.79?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/18.2.79?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/18.2.73/18.2.79?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/18.2.73/18.2.79?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom)
([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom))
| [`18.2.23` ->
`18.2.25`](https://renovatebot.com/diffs/npm/@types%2freact-dom/18.2.23/18.2.25)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact-dom/18.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact-dom/18.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact-dom/18.2.23/18.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact-dom/18.2.23/18.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [ai](https://sdk.vercel.ai/docs)
([source](https://github.com/vercel/ai)) | [`3.0.16` ->
`3.0.23`](https://renovatebot.com/diffs/npm/ai/3.0.16/3.0.23) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/ai/3.0.23?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ai/3.0.23?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ai/3.0.16/3.0.23?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ai/3.0.16/3.0.23?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[eslint-config-next](https://nextjs.org/docs/app/building-your-application/configuring/eslint#eslint-config)
([source](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next))
| [`14.1.4` ->
`14.2.1`](https://renovatebot.com/diffs/npm/eslint-config-next/14.1.4/14.2.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/eslint-config-next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint-config-next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint-config-next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint-config-next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [flask](https://github.com/pallets/flask)
([changelog](https://flask.palletsprojects.com/changes/)) | `3.0.2` ->
`3.0.3` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/flask/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/flask/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/flask/3.0.2/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/flask/3.0.2/3.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [next](https://nextjs.org)
([source](https://github.com/vercel/next.js)) | [`14.1.4` ->
`14.2.1`](https://renovatebot.com/diffs/npm/next/14.1.4/14.2.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/next/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/next/14.1.4/14.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [openai](https://github.com/openai/openai-python) | `1.14.3` ->
`1.20.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/openai/1.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/openai/1.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/openai/1.14.3/1.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/openai/1.14.3/1.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [openai](https://github.com/openai/openai-node) | [`4.31.0` ->
`4.36.0`](https://renovatebot.com/diffs/npm/openai/4.31.0/4.36.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.31.0/4.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.31.0/4.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [pydantic](https://github.com/pydantic/pydantic)
([changelog](https://docs.pydantic.dev/latest/changelog/)) | `2.6.4` ->
`2.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.6.4/2.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [tsx](https://github.com/privatenumber/tsx) | [`4.7.1` ->
`4.7.2`](https://renovatebot.com/diffs/npm/tsx/4.7.1/4.7.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/tsx/4.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tsx/4.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tsx/4.7.1/4.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tsx/4.7.1/4.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [typescript](https://www.typescriptlang.org/)
([source](https://github.com/Microsoft/TypeScript)) | [`5.4.3` ->
`5.4.5`](https://renovatebot.com/diffs/npm/typescript/5.4.3/5.4.5) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.4.3/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.4.3/5.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>tailwindlabs/headlessui (@&#8203;headlessui/react)</summary>

###
[`v1.7.19`](https://github.com/tailwindlabs/headlessui/blob/HEAD/packages/@&#8203;headlessui-react/CHANGELOG.md#1719---2024-04-15)

[Compare
Source](https://github.com/tailwindlabs/headlessui/compare/@headlessui/react@v1.7.18...@headlessui/react@v1.7.19)

##### Fixed

- Make sure panels re-register when IDs are calculated in React < 18
([#&#8203;2883](https://github.com/tailwindlabs/headlessui/pull/2883))
- Expose `disabled` state on `<Tab />` component
([#&#8203;2918](https://github.com/tailwindlabs/headlessui/pull/2918))
- Prevent default behavior when clicking outside of a `Dialog.Panel`
([#&#8203;2919](https://github.com/tailwindlabs/headlessui/pull/2919))
- Add `hidden` attribute to internal `<Hidden />` component when the
`Features.Hidden` feature is used
([#&#8203;2955](https://github.com/tailwindlabs/headlessui/pull/2955))
- Allow setting custom `tabIndex` on the `<Switch />` component
([#&#8203;2966](https://github.com/tailwindlabs/headlessui/pull/2966))
- Forward `disabled` state to hidden inputs in form-like components
([#&#8203;3004](https://github.com/tailwindlabs/headlessui/pull/3004))
- Respect `selectedIndex` for controlled `<Tab/>` components
([#&#8203;3037](https://github.com/tailwindlabs/headlessui/pull/3037))

</details>

<details>
<summary>vercel/ai (ai)</summary>

### [`v3.0.23`](https://github.com/vercel/ai/releases/tag/ai%403.0.23)

[Compare
Source](https://github.com/vercel/ai/compare/ai@3.0.22...ai@3.0.23)

##### Patch Changes

- [`66b5892`](https://github.com/vercel/ai/commit/66b5892): Add
streamMode parameter to useChat and useCompletion.
- Updated dependencies
\[[`7b8791d`](https://github.com/vercel/ai/commit/7b8791d)]
-
[@&#8203;ai-sdk/provider-utils](https://github.com/ai-sdk/provider-utils)[@&#8203;0](https://github.com/0).0.1

### [`v3.0.22`](https://github.com/vercel/ai/releases/tag/ai%403.0.22)

[Compare
Source](https://github.com/vercel/ai/compare/ai@3.0.21...ai@3.0.22)

##### Patch Changes

- [`d544886`](https://github.com/vercel/ai/commit/d544886): Breaking
change: extract experimental AI core provider packages. They can now be
imported with e.g. import { openai } from
'[@&#8203;ai-sdk/openai](https://github.com/ai-sdk/openai)' after
adding them to a project.
- [`ea6b0e1`](https://github.com/vercel/ai/commit/ea6b0e1): Expose
formatStreamPart, parseStreamPart, and readDataStream helpers.

### [`v3.0.21`](https://github.com/vercel/ai/releases/tag/ai%403.0.21)

[Compare
Source](https://github.com/vercel/ai/compare/ai@3.0.20...ai@3.0.21)

##### Patch Changes

- [`87d3db5`](https://github.com/vercel/ai/commit/87d3db5): Extracted
[@&#8203;ai-sdk/provider](https://github.com/ai-sdk/provider) package
- [`8c40f8c`](https://github.com/vercel/ai/commit/8c40f8c): ai/core:
Fix openai provider streamObject for gpt-4-turbo
- [`5cd29bd`](https://github.com/vercel/ai/commit/5cd29bd): ai/core:
add toTextStreamResponse() method to streamText result

### [`v3.0.20`](https://github.com/vercel/ai/releases/tag/ai%403.0.20)

[Compare
Source](https://github.com/vercel/ai/compare/ai@3.0.19...ai@3.0.20)

##### Patch Changes

- [`f42bbb5`](https://github.com/vercel/ai/commit/f42bbb5): Remove
experimental from useAssistant and AssistantResponse.
- [`149fe26`](https://github.com/vercel/ai/commit/149fe26): Deprecate
<Tokens/>
- [`2eb4b55`](https://github.com/vercel/ai/commit/2eb4b55): Remove
experimental\_ prefix from StreamData.
- [`e45fa96`](https://github.com/vercel/ai/commit/e45fa96): Add stream
support for Bedrock/Cohere.
- [`a6b2500`](https://github.com/vercel/ai/commit/a6b2500): Deprecated
the `experimental_streamData: true` setting from
AIStreamCallbacksAndOptions. You can delete occurrences in your code.
The stream data protocol is now used by default.

### [`v3.0.19`](https://github.com/vercel/ai/releases/tag/ai%403.0.19)

[Compare
Source](https://github.com/vercel/ai/compare/ai@3.0.18...ai@3.0.19)

##### Patch Changes

- [`4f4c7f5`](https://github.com/vercel/ai/commit/4f4c7f5): ai/core:
Anthropic tool call support

### [`v3.0.18`](https://github.com/vercel/ai/releases/tag/ai%403.0.18)

[Compare
Source](https://github.com/vercel/ai/compare/ai@3.0.17...ai@3.0.18)

##### Patch Changes

- [`63d587e`](https://github.com/vercel/ai/commit/63d587e): Add
Anthropic provider for ai/core functions (no tool calling).
- [`63d587e`](https://github.com/vercel/ai/commit/63d587e): Add
automatic mime type detection for images in ai/core prompts.

### [`v3.0.17`](https://github.com/vercel/ai/releases/tag/ai%403.0.17)

[Compare
Source](https://github.com/vercel/ai/compare/ai@3.0.16...ai@3.0.17)

##### Patch Changes

- [`2b991c4`](https://github.com/vercel/ai/commit/2b991c4): Add Google
Generative AI provider for ai/core functions.

</details>

<details>
<summary>vercel/next.js (eslint-config-next)</summary>

###
[`v14.2.1`](https://github.com/vercel/next.js/compare/v14.2.0...v14.2.1)

[Compare
Source](https://github.com/vercel/next.js/compare/v14.2.0...v14.2.1)

###
[`v14.2.0`](https://github.com/vercel/next.js/compare/v14.1.4...774563f2b994ae9686b8ec68b506a6ef3d7c9756)

[Compare
Source](https://github.com/vercel/next.js/compare/v14.1.4...v14.2.0)

</details>

<details>
<summary>pallets/flask (flask)</summary>

###
[`v3.0.3`](https://github.com/pallets/flask/blob/HEAD/CHANGES.rst#Version-303)

[Compare
Source](https://github.com/pallets/flask/compare/3.0.2...3.0.3)

Released 2024-04-07

- The default `hashlib.sha1` may not be available in FIPS builds. Don't
access it at import time so the developer has time to change the
default.
    :issue:`5448`
- Don't initialize the `cli` attribute in the sansio scaffold, but
rather in
    the `Flask` concrete class. :pr:`5270`

</details>

<details>
<summary>vercel/next.js (next)</summary>

###
[`v14.2.1`](https://github.com/vercel/next.js/compare/v14.2.0...v14.2.1)

[Compare
Source](https://github.com/vercel/next.js/compare/v14.2.0...v14.2.1)

###
[`v14.2.0`](https://github.com/vercel/next.js/compare/v14.1.4...774563f2b994ae9686b8ec68b506a6ef3d7c9756)

[Compare
Source](https://github.com/vercel/next.js/compare/v14.1.4...v14.2.0)

</details>

<details>
<summary>openai/openai-python (openai)</summary>

###
[`v1.20.0`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1200-2024-04-16)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.19.0...v1.20.0)

Full Changelog:
[v1.19.0...v1.20.0](https://github.com/openai/openai-python/compare/v1.19.0...v1.20.0)

##### Features

- **client:** add header OpenAI-Project
([#&#8203;1320](https://github.com/openai/openai-python/issues/1320))
([0c489f1](https://github.com/openai/openai-python/commit/0c489f16a7d9e5ac753da87273b223893edefa69))
- extract chat models to a named enum
([#&#8203;1322](https://github.com/openai/openai-python/issues/1322))
([1ccd9b6](https://github.com/openai/openai-python/commit/1ccd9b67322736a4714e58c953d59585322c527d))

###
[`v1.19.0`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1190-2024-04-15)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.18.0...v1.19.0)

Full Changelog:
[v1.18.0...v1.19.0](https://github.com/openai/openai-python/compare/v1.18.0...v1.19.0)

##### Features

- **errors:** add request_id property
([#&#8203;1317](https://github.com/openai/openai-python/issues/1317))
([f9eb77d](https://github.com/openai/openai-python/commit/f9eb77dca422b9456f4e3b31c7474046235eec1d))

###
[`v1.18.0`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1180-2024-04-15)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.17.1...v1.18.0)

Full Changelog:
[v1.17.1...v1.18.0](https://github.com/openai/openai-python/compare/v1.17.1...v1.18.0)

##### Features

- **api:** add batch API
([#&#8203;1316](https://github.com/openai/openai-python/issues/1316))
([3e6f19e](https://github.com/openai/openai-python/commit/3e6f19e6e7489bf1c94944a5f8f9b1d4535cdc43))
- **api:** updates
([#&#8203;1314](https://github.com/openai/openai-python/issues/1314))
([8281dc9](https://github.com/openai/openai-python/commit/8281dc956178f5de345645660081f7d0c15a57a6))

###
[`v1.17.1`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1171-2024-04-12)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.17.0...v1.17.1)

Full Changelog:
[v1.17.0...v1.17.1](https://github.com/openai/openai-python/compare/v1.17.0...v1.17.1)

##### Chores

- fix typo
([#&#8203;1304](https://github.com/openai/openai-python/issues/1304))
([1129082](https://github.com/openai/openai-python/commit/1129082955f98d76c0927781ef9e7d0beeda2ec4))
- **internal:** formatting
([#&#8203;1311](https://github.com/openai/openai-python/issues/1311))
([8fd411b](https://github.com/openai/openai-python/commit/8fd411b48b6b1eafaab2dac26201525c1ee0b942))

###
[`v1.17.0`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1170-2024-04-10)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.16.2...v1.17.0)

Full Changelog:
[v1.16.2...v1.17.0](https://github.com/openai/openai-python/compare/v1.16.2...v1.17.0)

##### Features

- **api:** add additional messages when creating thread run
([#&#8203;1298](https://github.com/openai/openai-python/issues/1298))
([70eb081](https://github.com/openai/openai-python/commit/70eb081804b14cc8c151ebd85458545a50a074fd))
- **client:** add DefaultHttpxClient and DefaultAsyncHttpxClient
([#&#8203;1302](https://github.com/openai/openai-python/issues/1302))
([69cdfc3](https://github.com/openai/openai-python/commit/69cdfc319fff7ebf28cdd13cc6c1761b7d97811d))
- **models:** add to_dict & to_json helper methods
([#&#8203;1305](https://github.com/openai/openai-python/issues/1305))
([40a881d](https://github.com/openai/openai-python/commit/40a881d10442af8b445ce030f8ab338710e1c4c8))

###
[`v1.16.2`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1162-2024-04-04)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.16.1...v1.16.2)

Full Changelog:
[v1.16.1...v1.16.2](https://github.com/openai/openai-python/compare/v1.16.1...v1.16.2)

##### Bug Fixes

- **client:** correct logic for line decoding in streaming
([#&#8203;1293](https://github.com/openai/openai-python/issues/1293))
([687caef](https://github.com/openai/openai-python/commit/687caefa4acf615bf404f16817bfd9a6f285ee5c))

###
[`v1.16.1`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1161-2024-04-02)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.16.0...v1.16.1)

Full Changelog:
[v1.16.0...v1.16.1](https://github.com/openai/openai-python/compare/v1.16.0...v1.16.1)

##### Chores

- **internal:** defer model build for import latency
([#&#8203;1291](https://github.com/openai/openai-python/issues/1291))
([bc6866e](https://github.com/openai/openai-python/commit/bc6866eb2335d01532190d0906cad7bf9af28621))

###
[`v1.16.0`](https://github.com/openai/openai-python/blob/HEAD/CHANGELOG.md#1160-2024-04-01)

[Compare
Source](https://github.com/openai/openai-python/compare/v1.14.3...v1.16.0)

Full Changelog:
[v1.15.0...v1.16.0](https://github.com/openai/openai-python/compare/v1.15.0...v1.16.0)

##### Features

- **api:** add support for filtering messages by run_id
([#&#8203;1288](https://github.com/openai/openai-python/issues/1288))
([58d6b77](https://github.com/openai/openai-python/commit/58d6b773218ef1dd8dc6208124a16078e4ac11c1))
- **api:** run polling helpers
([#&#8203;1289](https://github.com/openai/openai-python/issues/1289))
([6b427f3](https://github.com/openai/openai-python/commit/6b427f38610847bce3ce5334177f07917bd7c187))

##### Chores

- **client:** validate that max_retries is not None
([#&#8203;1286](https://github.com/openai/openai-python/issues/1286))
([aa5920a](https://github.com/openai/openai-python/commit/aa5920af6131c49a44352524154ee4a1684e76b2))

##### Refactors

- rename createAndStream to stream
([6b427f3](https://github.com/openai/openai-python/commit/6b427f38610847bce3ce5334177f07917bd7c187))

</details>

<details>
<summary>openai/openai-node (openai)</summary>

###
[`v4.36.0`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4360-2024-04-16)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.35.0...v4.36.0)

Full Changelog:
[v4.35.0...v4.36.0](https://github.com/openai/openai-node/compare/v4.35.0...v4.36.0)

##### Features

- **client:** add header OpenAI-Project
([#&#8203;772](https://github.com/openai/openai-node/issues/772))
([bb4df37](https://github.com/openai/openai-node/commit/bb4df3722082fb44b7d4feb7a47df796149150a2))
- extract chat models to a named enum
([#&#8203;775](https://github.com/openai/openai-node/issues/775))
([141d2ed](https://github.com/openai/openai-node/commit/141d2ed308141dc751869353208e4d0632d3650c))

##### Build System

- configure UTF-8 locale in devcontainer
([#&#8203;774](https://github.com/openai/openai-node/issues/774))
([bebf4f0](https://github.com/openai/openai-node/commit/bebf4f0ca1f884f8747caff0f0e065aafffde096))

###
[`v4.35.0`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4350-2024-04-15)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.34.0...v4.35.0)

Full Changelog:
[v4.34.0...v4.35.0](https://github.com/openai/openai-node/compare/v4.34.0...v4.35.0)

##### Features

- **errors:** add request_id property
([#&#8203;769](https://github.com/openai/openai-node/issues/769))
([43aa6a1](https://github.com/openai/openai-node/commit/43aa6a19cfb1448903dfaddc4da3def2eda9cbab))

###
[`v4.34.0`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4340-2024-04-15)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.33.1...v4.34.0)

Full Changelog:
[v4.33.1...v4.34.0](https://github.com/openai/openai-node/compare/v4.33.1...v4.34.0)

##### Features

- **api:** add batch API
([#&#8203;768](https://github.com/openai/openai-node/issues/768))
([7fe34f2](https://github.com/openai/openai-node/commit/7fe34f2d0bda9c1cb116a593f02bd0cc15a52e12))
- **api:** updates
([#&#8203;766](https://github.com/openai/openai-node/issues/766))
([52bcc47](https://github.com/openai/openai-node/commit/52bcc47043e4c3ffe15ae9e7ac0fa87e2493aad9))

###
[`v4.33.1`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4331-2024-04-12)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.33.0...v4.33.1)

Full Changelog:
[v4.33.0...v4.33.1](https://github.com/openai/openai-node/compare/v4.33.0...v4.33.1)

##### Chores

- **internal:** formatting
([#&#8203;763](https://github.com/openai/openai-node/issues/763))
([b6acf54](https://github.com/openai/openai-node/commit/b6acf54baab7e6cbf6ce3ad1d6c70197cc0181d0))
- **internal:** improve ecosystem tests
([#&#8203;761](https://github.com/openai/openai-node/issues/761))
([fcf748d](https://github.com/openai/openai-node/commit/fcf748dbbd23f972ff9fd81a8b2a35232a2d6e5c))

###
[`v4.33.0`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4330-2024-04-05)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.32.2...v4.33.0)

Full Changelog:
[v4.32.2...v4.33.0](https://github.com/openai/openai-node/compare/v4.32.2...v4.33.0)

##### Features

- **api:** add additional messages when creating thread run
([#&#8203;759](https://github.com/openai/openai-node/issues/759))
([f1fdb41](https://github.com/openai/openai-node/commit/f1fdb410e087f9b94faeda0558de573ec1118601))

###
[`v4.32.2`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4322-2024-04-04)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.32.1...v4.32.2)

Full Changelog:
[v4.32.1...v4.32.2](https://github.com/openai/openai-node/compare/v4.32.1...v4.32.2)

##### Bug Fixes

- **streaming:** handle special line characters and fix multi-byte
character decoding
([#&#8203;757](https://github.com/openai/openai-node/issues/757))
([8dcdda2](https://github.com/openai/openai-node/commit/8dcdda2b0d1d86486eea5fd47d24a8d26fde4c19))
- **tests:** update wrangler to v3.19.0 (CVE-2023-7080)
([#&#8203;755](https://github.com/openai/openai-node/issues/755))
([47ca41d](https://github.com/openai/openai-node/commit/47ca41da9a739b2e04b721cb1fe843e5dd152465))

##### Chores

- **tests:** bump ecosystem tests dependencies
([#&#8203;753](https://github.com/openai/openai-node/issues/753))
([3f86ea2](https://github.com/openai/openai-node/commit/3f86ea2205c90e05bcbe582491a4bed01075a5b1))

###
[`v4.32.1`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4321-2024-04-02)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.32.0...v4.32.1)

Full Changelog:
[v4.32.0...v4.32.1](https://github.com/openai/openai-node/compare/v4.32.0...v4.32.1)

##### Chores

- **deps:** bump yarn to v1.22.22
([#&#8203;751](https://github.com/openai/openai-node/issues/751))
([5b41d10](https://github.com/openai/openai-node/commit/5b41d1077f219b8feb7557cfab98caf7b5de560d))

###
[`v4.32.0`](https://github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4320-2024-04-01)

[Compare
Source](https://github.com/openai/openai-node/compare/v4.31.0...v4.32.0)

Full Changelog:
[v4.31.0...v4.32.0](https://github.com/openai/openai-node/compare/v4.31.0...v4.32.0)

##### Features

- **api:** add support for filtering messages by run_id
([#&#8203;747](https://github.com/openai/openai-node/issues/747))
([9a397ac](https://github.com/openai/openai-node/commit/9a397acffa9f10c3f48e86e3bdb3851770f87b42))
- **api:** run polling helpers
([#&#8203;749](https://github.com/openai/openai-node/issues/749))
([02920ae](https://github.com/openai/openai-node/commit/02920ae082480fc7a7ffe9fa583d053a40dc7120))

##### Chores

- **deps:** remove unused dependency digest-fetch
([#&#8203;748](https://github.com/openai/openai-node/issues/748))
([5376837](https://github.com/openai/openai-node/commit/537683734d39dd956a7dcef4339c1167ce6fe13c))

##### Documentation

- **readme:** change undocumented params wording
([#&#8203;744](https://github.com/openai/openai-node/issues/744))
([8796691](https://github.com/openai/openai-node/commit/87966911045275db86844dfdcde59653edaef264))

##### Refactors

- rename createAndStream to stream
([02920ae](https://github.com/openai/openai-node/commit/02920ae082480fc7a7ffe9fa583d053a40dc7120))

</details>

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

###
[`v2.7.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.4...v2.7.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

- Correct docs, logic for `model_construct` behavior with `extra` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8807](https://github.com/pydantic/pydantic/pull/8807)
- Improve error message for improper `RootModel` subclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8857](https://github.com/pydantic/pydantic/pull/8857)
- Use `PEP570` syntax by [@&#8203;Viicos](https://github.com/Viicos)
in [#&#8203;8940](https://github.com/pydantic/pydantic/pull/8940)
- Add `enum` and `type` to the JSON schema for single item literals by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8944](https://github.com/pydantic/pydantic/pull/8944)
- Deprecate `update_json_schema` internal function by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9125](https://github.com/pydantic/pydantic/pull/9125)
- Serialize duration to hour minute second, instead of just seconds by
[@&#8203;kakilangit](https://github.com/kakilangit) in
[pydantic/speedate#50](https://github.com/pydantic/speedate/pull/50)
- Trimming str before parsing to int and float by
[@&#8203;hungtsetse](https://github.com/hungtsetse) in
[pydantic/pydantic-core#1203](https://github.com/pydantic/pydantic-core/pull/1203)

##### Performance

- `enum` validator improvements by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9045](https://github.com/pydantic/pydantic/pull/9045)
- Move `enum` validation and serialization to Rust by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9064](https://github.com/pydantic/pydantic/pull/9064)
- Improve schema generation for nested dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9114](https://github.com/pydantic/pydantic/pull/9114)
- Fast path for ASCII python string creation in JSON by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#72](https://github.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
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#65](https://github.com/pydantic/jiter/pull/65)
- Support JSON `Cow<str>` from `jiter` by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1231](https://github.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1248](https://github.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[pydantic/pydantic-core#1240](https://github.com/pydantic/pydantic-core/pull/1240)

##### Fixes

- Fix strict parsing for some `Sequence`s by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8614](https://github.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by
[@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;8659](https://github.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by
[@&#8203;Holi0317](https://github.com/Holi0317) in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by
[@&#8203;bluenote10](https://github.com/bluenote10) in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8666](https://github.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8681](https://github.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8679](https://github.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition
references by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8702](https://github.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8710](https://github.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug
by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8718](https://github.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by
[@&#8203;13sin](https://github.com/13sin) in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()`
starting to work inside `pytest.raises()` by
[@&#8203;mgorny](https://github.com/mgorny) in
[#&#8203;8678](https://github.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by
[@&#8203;DanielNoord](https://github.com/DanielNoord) in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8799](https://github.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required'
parameters by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8801](https://github.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not
present in the subclass module namespace by
[@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by
`typing.get_type_hints` by
[@&#8203;devmonkey22](https://github.com/devmonkey22) in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8810](https://github.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8823](https://github.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8837](https://github.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8877](https://github.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;8860](https://github.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by
[@&#8203;Czaki](https://github.com/Czaki) in
[#&#8203;8917](https://github.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by
[@&#8203;adriangb](https://github.com/adriangb) in
[#&#8203;8923](https://github.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for
`enum`s by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8920](https://github.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8928](https://github.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8932](https://github.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with
discriminators by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8950](https://github.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated
unions by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8951](https://github.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9008](https://github.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9031](https://github.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9039](https://github.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9066](https://github.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9082](https://github.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;9097](https://github.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by
[@&#8203;andresliszt](https://github.com/andresliszt) in
[#&#8203;8977](https://github.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent
model by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child
class by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9111](https://github.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9124](https://github.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah
blah]` by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9128](https://github.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;9134](https://github.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by
[@&#8203;ornariece](https://github.com/ornariece) in
[#&#8203;9144](https://github.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by
[@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9193](https://github.com/pydantic/pydantic/pull/9193)

##### New Contributors

- [@&#8203;hungtsetse](https://github.com/hungtsetse) made their first
contribution in
[#&#8203;8546](https://github.com/pydantic/pydantic/pull/8546)
- [@&#8203;StrawHatDrag0n](https://github.com/StrawHatDrag0n) made
their first contribution in
[#&#8203;8583](https://github.com/pydantic/pydantic/pull/8583)
- [@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) made their
first contribution in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- [@&#8203;Holi0317](https://github.com/Holi0317) made their first
contribution in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- [@&#8203;bluenote10](https://github.com/bluenote10) made their first
contribution in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- [@&#8203;ADSteele916](https://github.com/ADSteele916) made their
first contribution in
[#&#8203;8703](https://github.com/pydantic/pydantic/pull/8703)
- [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made
their first contribution in
[#&#8203;8731](https://github.com/pydantic/pydantic/pull/8731)
- [@&#8203;jks15satoshi](https://github.com/jks15satoshi) made their
first contribution in
[#&#8203;8706](https://github.com/pydantic/pydantic/pull/8706)
- [@&#8203;13sin](https://github.com/13sin) made their first
contribution in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- [@&#8203;DanielNoord](https://github.com/DanielNoord) made their
first contribution in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
-
[@&#8203;conradogarciaberrotaran](https://github.com/conradogarciaberrotaran)
made their first contribution in
[#&#8203;8519](https://github.com/pydantic/pydantic/pull/8519)
- [@&#8203;chris-griffin](https://github.com/chris-griffin) made their
first contribution in
[#&#8203;8775](https://github.com/pydantic/pydantic/pull/8775)
- [@&#8203;LouisGobert](https://github.com/LouisGobert) made their
first contribution in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- [@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) made
their first contribution in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- [@&#8203;devmonkey22](https://github.com/devmonkey22) made their
first contribution in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- [@&#8203;adamency](https://github.com/adamency) made their first
contribution in
[#&#8203;8847](https://github.com/pydantic/pydantic/pull/8847)
- [@&#8203;MamfTheKramf](https://github.com/MamfTheKramf) made their
first contribution in
[#&#8203;8851](https://github.com/pydantic/pydantic/pull/8851)
- [@&#8203;ornariece](https://github.com/ornariece) made their first
contribution in
[#&#8203;9001](https://github.com/pydantic/pydantic/pull/9001)
- [@&#8203;alexeyt101](https://github.com/alexeyt101) made their first
contribution in
[#&#8203;9004](https://github.com/pydantic/pydantic/pull/9004)
- [@&#8203;wannieman98](https://github.com/wannieman98) made their
first contribution in
[#&#8203;8947](https://github.com/pydantic/pydantic/pull/8947)
- [@&#8203;solidguy7](https://github.com/solidguy7) made their first
contribution in
[#&#8203;9062](https://github.com/pydantic/pydantic/pull/9062)
- [@&#8203;kloczek](https://github.com/kloczek) made their first
contribution in
[#&#8203;9047](https://github.com/pydantic/pydantic/pull/9047)
- [@&#8203;jag-k](https://github.com/jag-k) made their first
contribution in
[#&#8203;9053](https://github.com/pydantic/pydantic/pull/9053)
- [@&#8203;priya-gitTest](https://github.com/priya-gitTest) made their
first contribution in
[#&#8203;9088](https://github.com/pydantic/pydantic/pull/9088)
- [@&#8203;Youssefares](https://github.com/Youssefares) made their
first contribution in
[#&#8203;9023](https://github.com/pydantic/pydantic/pull/9023)
- [@&#8203;chan-vince](https://github.com/chan-vince) made their first
contribution in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- [@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) made their
first contribution in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- [@&#8203;Lance-Drane](https://github.com/Lance-Drane) made their
first contribution in
[#&#8203;9166](https://github.com/pydantic/pydantic/pull/9166)

</details>

<details>
<summary>privatenumber/tsx (tsx)</summary>

###
[`v4.7.2`](https://github.com/privatenumber/tsx/compare/v4.7.1...1a10da7bf9d0ca66ced6c897ade8f5f9aae0268d)

[Compare
Source](https://github.com/privatenumber/tsx/compare/v4.7.1...v4.7.2)

</details>

<details>
<summary>Microsoft/TypeScript (typescript)</summary>

###
[`v5.4.5`](https://github.com/microsoft/TypeScript/releases/tag/v5.4.5):
TypeScript 5.4.5

[Compare
Source](https://github.com/Microsoft/TypeScript/compare/v5.4.4...v5.4.5)

For release notes, check out the [release
announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/).

For the complete list of fixed issues, check out the

- [fixed issues query for Typescript 5.4.0
(Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.1
(RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.2
(Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.3
(Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.3%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.4
(Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.4%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.5
(Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.5%22+is%3Aclosed+).

Downloads are available on:

- [NuGet
package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)

###
[`v5.4.4`](https://github.com/microsoft/TypeScript/releases/tag/v5.4.4):
TypeScript 5.4.4

[Compare
Source](https://github.com/Microsoft/TypeScript/compare/v5.4.3...v5.4.4)

For release notes, check out the [release
announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/).

For the complete list of fixed issues, check out the

- [fixed issues query for Typescript 5.4.0
(Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.1
(RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.2
(Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.3
(Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.3%22+is%3Aclosed+).
- [fixed issues query for Typescript 5.4.4
(Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.4%22+is%3Aclosed+).

Downloads are available on:

- [NuGet
package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone
America/Chicago, 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- 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/autoblocksai/autoblocks-examples).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjMwMS40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
RobertCraigie pushed a commit to RobertCraigie/prisma-client-py that referenced this pull request Apr 28, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [pydantic](https://github.com/pydantic/pydantic)
([changelog](https://docs.pydantic.dev/latest/changelog/)) | `==2.5.3`
-> `==2.7.1` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/pydantic/2.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/pydantic/2.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/pydantic/2.5.3/2.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/pydantic/2.5.3/2.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

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

###
[`v2.7.1`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v271-2024-04-23)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.7.0...v2.7.1)

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

##### What's Changed

##### Packaging

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

##### New Features

- Ftp and Websocket connection strings support by
[@&#8203;CherrySuryp](https://github.com/CherrySuryp) in
[#&#8203;9205](https://github.com/pydantic/pydantic/pull/9205)

##### Changes

- Use field description for RootModel schema description when there is
`…` by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;9214](https://github.com/pydantic/pydantic/pull/9214)

##### Fixes

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

##### New Contributors

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

###
[`v2.7.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.4...v2.7.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

- Correct docs, logic for `model_construct` behavior with `extra` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8807](https://github.com/pydantic/pydantic/pull/8807)
- Improve error message for improper `RootModel` subclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8857](https://github.com/pydantic/pydantic/pull/8857)
- Use `PEP570` syntax by [@&#8203;Viicos](https://github.com/Viicos)
in [#&#8203;8940](https://github.com/pydantic/pydantic/pull/8940)
- Add `enum` and `type` to the JSON schema for single item literals by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8944](https://github.com/pydantic/pydantic/pull/8944)
- Deprecate `update_json_schema` internal function by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9125](https://github.com/pydantic/pydantic/pull/9125)
- Serialize duration to hour minute second, instead of just seconds by
[@&#8203;kakilangit](https://github.com/kakilangit) in
[pydantic/speedate#50](https://github.com/pydantic/speedate/pull/50)
- Trimming str before parsing to int and float by
[@&#8203;hungtsetse](https://github.com/hungtsetse) in
[pydantic/pydantic-core#1203](https://github.com/pydantic/pydantic-core/pull/1203)

##### Performance

- `enum` validator improvements by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9045](https://github.com/pydantic/pydantic/pull/9045)
- Move `enum` validation and serialization to Rust by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9064](https://github.com/pydantic/pydantic/pull/9064)
- Improve schema generation for nested dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9114](https://github.com/pydantic/pydantic/pull/9114)
- Fast path for ASCII python string creation in JSON by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#72](https://github.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
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#65](https://github.com/pydantic/jiter/pull/65)
- Support JSON `Cow<str>` from `jiter` by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1231](https://github.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1248](https://github.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[pydantic/pydantic-core#1240](https://github.com/pydantic/pydantic-core/pull/1240)

##### Fixes

- Fix strict parsing for some `Sequence`s by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8614](https://github.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by
[@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;8659](https://github.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by
[@&#8203;Holi0317](https://github.com/Holi0317) in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by
[@&#8203;bluenote10](https://github.com/bluenote10) in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8666](https://github.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8681](https://github.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8679](https://github.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition
references by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8702](https://github.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8710](https://github.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug
by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8718](https://github.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by
[@&#8203;13sin](https://github.com/13sin) in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()`
starting to work inside `pytest.raises()` by
[@&#8203;mgorny](https://github.com/mgorny) in
[#&#8203;8678](https://github.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by
[@&#8203;DanielNoord](https://github.com/DanielNoord) in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8799](https://github.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required'
parameters by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8801](https://github.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not
present in the subclass module namespace by
[@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by
`typing.get_type_hints` by
[@&#8203;devmonkey22](https://github.com/devmonkey22) in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8810](https://github.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8823](https://github.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8837](https://github.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8877](https://github.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;8860](https://github.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by
[@&#8203;Czaki](https://github.com/Czaki) in
[#&#8203;8917](https://github.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by
[@&#8203;adriangb](https://github.com/adriangb) in
[#&#8203;8923](https://github.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for
`enum`s by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8920](https://github.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8928](https://github.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8932](https://github.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with
discriminators by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8950](https://github.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated
unions by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8951](https://github.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9008](https://github.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9031](https://github.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9039](https://github.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9066](https://github.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9082](https://github.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;9097](https://github.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by
[@&#8203;andresliszt](https://github.com/andresliszt) in
[#&#8203;8977](https://github.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent
model by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child
class by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9111](https://github.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9124](https://github.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah
blah]` by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9128](https://github.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;9134](https://github.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by
[@&#8203;ornariece](https://github.com/ornariece) in
[#&#8203;9144](https://github.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by
[@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9193](https://github.com/pydantic/pydantic/pull/9193)

##### New Contributors

- [@&#8203;hungtsetse](https://github.com/hungtsetse) made their first
contribution in
[#&#8203;8546](https://github.com/pydantic/pydantic/pull/8546)
- [@&#8203;StrawHatDrag0n](https://github.com/StrawHatDrag0n) made
their first contribution in
[#&#8203;8583](https://github.com/pydantic/pydantic/pull/8583)
- [@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) made their
first contribution in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- [@&#8203;Holi0317](https://github.com/Holi0317) made their first
contribution in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- [@&#8203;bluenote10](https://github.com/bluenote10) made their first
contribution in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- [@&#8203;ADSteele916](https://github.com/ADSteele916) made their
first contribution in
[#&#8203;8703](https://github.com/pydantic/pydantic/pull/8703)
- [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made
their first contribution in
[#&#8203;8731](https://github.com/pydantic/pydantic/pull/8731)
- [@&#8203;jks15satoshi](https://github.com/jks15satoshi) made their
first contribution in
[#&#8203;8706](https://github.com/pydantic/pydantic/pull/8706)
- [@&#8203;13sin](https://github.com/13sin) made their first
contribution in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- [@&#8203;DanielNoord](https://github.com/DanielNoord) made their
first contribution in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
-
[@&#8203;conradogarciaberrotaran](https://github.com/conradogarciaberrotaran)
made their first contribution in
[#&#8203;8519](https://github.com/pydantic/pydantic/pull/8519)
- [@&#8203;chris-griffin](https://github.com/chris-griffin) made their
first contribution in
[#&#8203;8775](https://github.com/pydantic/pydantic/pull/8775)
- [@&#8203;LouisGobert](https://github.com/LouisGobert) made their
first contribution in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- [@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) made
their first contribution in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- [@&#8203;devmonkey22](https://github.com/devmonkey22) made their
first contribution in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- [@&#8203;adamency](https://github.com/adamency) made their first
contribution in
[#&#8203;8847](https://github.com/pydantic/pydantic/pull/8847)
- [@&#8203;MamfTheKramf](https://github.com/MamfTheKramf) made their
first contribution in
[#&#8203;8851](https://github.com/pydantic/pydantic/pull/8851)
- [@&#8203;ornariece](https://github.com/ornariece) made their first
contribution in
[#&#8203;9001](https://github.com/pydantic/pydantic/pull/9001)
- [@&#8203;alexeyt101](https://github.com/alexeyt101) made their first
contribution in
[#&#8203;9004](https://github.com/pydantic/pydantic/pull/9004)
- [@&#8203;wannieman98](https://github.com/wannieman98) made their
first contribution in
[#&#8203;8947](https://github.com/pydantic/pydantic/pull/8947)
- [@&#8203;solidguy7](https://github.com/solidguy7) made their first
contribution in
[#&#8203;9062](https://github.com/pydantic/pydantic/pull/9062)
- [@&#8203;kloczek](https://github.com/kloczek) made their first
contribution in
[#&#8203;9047](https://github.com/pydantic/pydantic/pull/9047)
- [@&#8203;jag-k](https://github.com/jag-k) made their first
contribution in
[#&#8203;9053](https://github.com/pydantic/pydantic/pull/9053)
- [@&#8203;priya-gitTest](https://github.com/priya-gitTest) made their
first contribution in
[#&#8203;9088](https://github.com/pydantic/pydantic/pull/9088)
- [@&#8203;Youssefares](https://github.com/Youssefares) made their
first contribution in
[#&#8203;9023](https://github.com/pydantic/pydantic/pull/9023)
- [@&#8203;chan-vince](https://github.com/chan-vince) made their first
contribution in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- [@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) made their
first contribution in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- [@&#8203;Lance-Drane](https://github.com/Lance-Drane) made their
first contribution in
[#&#8203;9166](https://github.com/pydantic/pydantic/pull/9166)

###
[`v2.6.4`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v264-2024-03-12)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.3...v2.6.4)

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

##### What's Changed

##### Fixes

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

###
[`v2.6.3`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v263-2024-02-27)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.2...v2.6.3)

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

##### What's Changed

##### Packaging

- Update `pydantic-settings` version in the docs by
[@&#8203;hramezani](https://github.com/hramezani) in
[#&#8203;8906](https://github.com/pydantic/pydantic/pull/8906)

##### Fixes

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

###
[`v2.6.2`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v262-2024-02-23)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.1...v2.6.2)

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

##### What's Changed

##### Packaging

- Upgrade to `pydantic-core` 2.16.3 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8879](https://github.com/pydantic/pydantic/pull/8879)

##### Fixes

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

###
[`v2.6.1`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v261-2024-02-05)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.0...v2.6.1)

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

##### What's Changed

##### Packaging

- Upgrade to `pydantic-core` 2.16.2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8717](https://github.com/pydantic/pydantic/pull/8717)

##### Fixes

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

###
[`v2.6.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v260-2024-01-23)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.5.3...v2.6.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

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

##### Performance

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

##### Fixes

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

##### New Contributors

##### `pydantic`

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

##### `pydantic-core`

- [@&#8203;mariuswinger](https://github.com/mariuswinger) made their
first contribution in
[pydantic/pydantic-core#1087](https://github.com/pydantic/pydantic-core/pull/1087)
- [@&#8203;adamchainz](https://github.com/adamchainz) made their first
contribution in
[pydantic/pydantic-core#1090](https://github.com/pydantic/pydantic-core/pull/1090)
- [@&#8203;akx](https://github.com/akx) made their first contribution
in
[pydantic/pydantic-core#1123](https://github.com/pydantic/pydantic-core/pull/1123)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
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 has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/RobertCraigie/prisma-client-py).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjMxMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
cutoffthetop pushed a commit to robert-koch-institut/mex-common that referenced this pull request May 14, 2024
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [pydantic](https://github.com/pydantic/pydantic)
([changelog](https://docs.pydantic.dev/latest/changelog/)) |
project.dependencies | minor | `==2.6.4` -> `==2.7.1` |

---

### Release Notes

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

###
[`v2.7.1`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v271-2024-04-23)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.7.0...v2.7.1)

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

##### What's Changed

##### Packaging

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

##### New Features

- Ftp and Websocket connection strings support by
[@&#8203;CherrySuryp](https://github.com/CherrySuryp) in
[#&#8203;9205](https://github.com/pydantic/pydantic/pull/9205)

##### Changes

- Use field description for RootModel schema description when there is
`…` by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;9214](https://github.com/pydantic/pydantic/pull/9214)

##### Fixes

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

##### New Contributors

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

###
[`v2.7.0`](https://github.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v270-2024-04-11)

[Compare
Source](https://github.com/pydantic/pydantic/compare/v2.6.4...v2.7.0)

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

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

##### What's Changed

##### Packaging

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

##### New Features

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

##### Changes

- Correct docs, logic for `model_construct` behavior with `extra` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8807](https://github.com/pydantic/pydantic/pull/8807)
- Improve error message for improper `RootModel` subclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8857](https://github.com/pydantic/pydantic/pull/8857)
- Use `PEP570` syntax by [@&#8203;Viicos](https://github.com/Viicos)
in [#&#8203;8940](https://github.com/pydantic/pydantic/pull/8940)
- Add `enum` and `type` to the JSON schema for single item literals by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8944](https://github.com/pydantic/pydantic/pull/8944)
- Deprecate `update_json_schema` internal function by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9125](https://github.com/pydantic/pydantic/pull/9125)
- Serialize duration to hour minute second, instead of just seconds by
[@&#8203;kakilangit](https://github.com/kakilangit) in
[pydantic/speedate#50](https://github.com/pydantic/speedate/pull/50)
- Trimming str before parsing to int and float by
[@&#8203;hungtsetse](https://github.com/hungtsetse) in
[pydantic/pydantic-core#1203](https://github.com/pydantic/pydantic-core/pull/1203)

##### Performance

- `enum` validator improvements by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9045](https://github.com/pydantic/pydantic/pull/9045)
- Move `enum` validation and serialization to Rust by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[#&#8203;9064](https://github.com/pydantic/pydantic/pull/9064)
- Improve schema generation for nested dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9114](https://github.com/pydantic/pydantic/pull/9114)
- Fast path for ASCII python string creation in JSON by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#72](https://github.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
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in in
[pydantic/jiter#65](https://github.com/pydantic/jiter/pull/65)
- Support JSON `Cow<str>` from `jiter` by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1231](https://github.com/pydantic/pydantic-core/pull/1231)
- MAJOR performance improvement: update to PyO3 0.21 final by
[@&#8203;davidhewitt](https://github.com/davidhewitt) in
[pydantic/pydantic-core#1248](https://github.com/pydantic/pydantic-core/pull/1248)
- cache Python strings by
[@&#8203;samuelcolvin](https://github.com/samuelcolvin) in
[pydantic/pydantic-core#1240](https://github.com/pydantic/pydantic-core/pull/1240)

##### Fixes

- Fix strict parsing for some `Sequence`s by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8614](https://github.com/pydantic/pydantic/pull/8614)
- Add a check on the existence of `__qualname__` by
[@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- Handle `__pydantic_extra__` annotation being a string or inherited by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;8659](https://github.com/pydantic/pydantic/pull/8659)
- Fix json validation for `NameEmail` by
[@&#8203;Holi0317](https://github.com/Holi0317) in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- Fix type-safety of attribute access in `BaseModel` by
[@&#8203;bluenote10](https://github.com/bluenote10) in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- Fix bug with `mypy` plugin and `no_strict_optional = True` by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8666](https://github.com/pydantic/pydantic/pull/8666)
- Fix `ByteSize` error `type` change by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8681](https://github.com/pydantic/pydantic/pull/8681)
- Fix inheriting annotations in dataclasses by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8679](https://github.com/pydantic/pydantic/pull/8679)
- Fix regression in core schema generation for indirect definition
references by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8702](https://github.com/pydantic/pydantic/pull/8702)
- Fix unsupported types bug with plain validator by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8710](https://github.com/pydantic/pydantic/pull/8710)
- Reverting problematic fix from 2.6 release, fixing schema building bug
by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8718](https://github.com/pydantic/pydantic/pull/8718)
- fixes `__pydantic_config__` ignored for TypeDict by
[@&#8203;13sin](https://github.com/13sin) in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- Fix test failures with `pytest v8.0.0` due to `pytest.warns()`
starting to work inside `pytest.raises()` by
[@&#8203;mgorny](https://github.com/mgorny) in
[#&#8203;8678](https://github.com/pydantic/pydantic/pull/8678)
- Use `is_valid_field` from 1.x for `mypy` plugin by
[@&#8203;DanielNoord](https://github.com/DanielNoord) in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
- Better-support `mypy` strict equality flag by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8799](https://github.com/pydantic/pydantic/pull/8799)
- model_json_schema export with Annotated types misses 'required'
parameters by [@&#8203;LouisGobert](https://github.com/LouisGobert) in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- Fix default inclusion in `FieldInfo.__repr_args__` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8801](https://github.com/pydantic/pydantic/pull/8801)
- Fix resolution of forward refs in dataclass base classes that are not
present in the subclass module namespace by
[@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- Fix `BaseModel` type annotations to be resolvable by
`typing.get_type_hints` by
[@&#8203;devmonkey22](https://github.com/devmonkey22) in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- Fix: allow empty string aliases with `AliasGenerator` by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8810](https://github.com/pydantic/pydantic/pull/8810)
- Fix test along with `date` -> `datetime` timezone assumption fix by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8823](https://github.com/pydantic/pydantic/pull/8823)
- Fix deprecation warning with usage of `ast.Str` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8837](https://github.com/pydantic/pydantic/pull/8837)
- Add missing `deprecated` decorators by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;8877](https://github.com/pydantic/pydantic/pull/8877)
- Fix serialization of `NameEmail` if name includes an email address by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;8860](https://github.com/pydantic/pydantic/pull/8860)
- Add information about class in error message of schema generation by
[@&#8203;Czaki](https://github.com/Czaki) in
[#&#8203;8917](https://github.com/pydantic/pydantic/pull/8917)
- Make `TypeAdapter`'s typing compatible with special forms by
[@&#8203;adriangb](https://github.com/adriangb) in
[#&#8203;8923](https://github.com/pydantic/pydantic/pull/8923)
- Fix issue with config behavior being baked into the ref schema for
`enum`s by [@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;8920](https://github.com/pydantic/pydantic/pull/8920)
- More helpful error re wrong `model_json_schema` usage by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8928](https://github.com/pydantic/pydantic/pull/8928)
- Fix nested discriminated union schema gen, pt 2 by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8932](https://github.com/pydantic/pydantic/pull/8932)
- Fix schema build for nested dataclasses / TypedDicts with
discriminators by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8950](https://github.com/pydantic/pydantic/pull/8950)
- Remove unnecessary logic for definitions schema gen with discriminated
unions by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;8951](https://github.com/pydantic/pydantic/pull/8951)
- Fix handling of optionals in `mypy` plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9008](https://github.com/pydantic/pydantic/pull/9008)
- Fix `PlainSerializer` usage with std type constructor by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9031](https://github.com/pydantic/pydantic/pull/9031)
- Remove unnecessary warning for config in plugin by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9039](https://github.com/pydantic/pydantic/pull/9039)
- Fix default value serializing by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9066](https://github.com/pydantic/pydantic/pull/9066)
- Fix extra fields check in `Model.__getattr__()` by
[@&#8203;NeevCohen](https://github.com/NeevCohen) in
[#&#8203;9082](https://github.com/pydantic/pydantic/pull/9082)
- Fix `ClassVar` forward ref inherited from parent class by
[@&#8203;alexmojaki](https://github.com/alexmojaki) in
[#&#8203;9097](https://github.com/pydantic/pydantic/pull/9097)
- fix sequence like validator with strict `True` by
[@&#8203;andresliszt](https://github.com/andresliszt) in
[#&#8203;8977](https://github.com/pydantic/pydantic/pull/8977)
- Improve warning message when a field name shadows a field in a parent
model by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- Do not warn about shadowed fields if they are not redefined in a child
class by [@&#8203;chan-vince](https://github.com/chan-vince) in
[#&#8203;9111](https://github.com/pydantic/pydantic/pull/9111)
- Fix discriminated union bug with unsubstituted type var by
[@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9124](https://github.com/pydantic/pydantic/pull/9124)
- Support serialization of `deque` when passed to `Sequence[blah blah
blah]` by [@&#8203;sydney-runkle](https://github.com/sydney-runkle) in
[#&#8203;9128](https://github.com/pydantic/pydantic/pull/9128)
- Init private attributes from super-types in `model_post_init` by
[@&#8203;Viicos](https://github.com/Viicos) in
[#&#8203;9134](https://github.com/pydantic/pydantic/pull/9134)
- fix `model_construct` with `validation_alias` by
[@&#8203;ornariece](https://github.com/ornariece) in
[#&#8203;9144](https://github.com/pydantic/pydantic/pull/9144)
- Ensure json-schema generator handles `Literal` `null` types by
[@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- **Fixed in v2.7.0**: Fix allow extra generic by
[@&#8203;dmontagu](https://github.com/dmontagu) in
[#&#8203;9193](https://github.com/pydantic/pydantic/pull/9193)

##### New Contributors

- [@&#8203;hungtsetse](https://github.com/hungtsetse) made their first
contribution in
[#&#8203;8546](https://github.com/pydantic/pydantic/pull/8546)
- [@&#8203;StrawHatDrag0n](https://github.com/StrawHatDrag0n) made
their first contribution in
[#&#8203;8583](https://github.com/pydantic/pydantic/pull/8583)
- [@&#8203;anci3ntr0ck](https://github.com/anci3ntr0ck) made their
first contribution in
[#&#8203;8642](https://github.com/pydantic/pydantic/pull/8642)
- [@&#8203;Holi0317](https://github.com/Holi0317) made their first
contribution in
[#&#8203;8650](https://github.com/pydantic/pydantic/pull/8650)
- [@&#8203;bluenote10](https://github.com/bluenote10) made their first
contribution in
[#&#8203;8651](https://github.com/pydantic/pydantic/pull/8651)
- [@&#8203;ADSteele916](https://github.com/ADSteele916) made their
first contribution in
[#&#8203;8703](https://github.com/pydantic/pydantic/pull/8703)
- [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made
their first contribution in
[#&#8203;8731](https://github.com/pydantic/pydantic/pull/8731)
- [@&#8203;jks15satoshi](https://github.com/jks15satoshi) made their
first contribution in
[#&#8203;8706](https://github.com/pydantic/pydantic/pull/8706)
- [@&#8203;13sin](https://github.com/13sin) made their first
contribution in
[#&#8203;8734](https://github.com/pydantic/pydantic/pull/8734)
- [@&#8203;DanielNoord](https://github.com/DanielNoord) made their
first contribution in
[#&#8203;8738](https://github.com/pydantic/pydantic/pull/8738)
-
[@&#8203;conradogarciaberrotaran](https://github.com/conradogarciaberrotaran)
made their first contribution in
[#&#8203;8519](https://github.com/pydantic/pydantic/pull/8519)
- [@&#8203;chris-griffin](https://github.com/chris-griffin) made their
first contribution in
[#&#8203;8775](https://github.com/pydantic/pydantic/pull/8775)
- [@&#8203;LouisGobert](https://github.com/LouisGobert) made their
first contribution in
[#&#8203;8793](https://github.com/pydantic/pydantic/pull/8793)
- [@&#8203;matsjoyce-refeyn](https://github.com/matsjoyce-refeyn) made
their first contribution in
[#&#8203;8751](https://github.com/pydantic/pydantic/pull/8751)
- [@&#8203;devmonkey22](https://github.com/devmonkey22) made their
first contribution in
[#&#8203;7680](https://github.com/pydantic/pydantic/pull/7680)
- [@&#8203;adamency](https://github.com/adamency) made their first
contribution in
[#&#8203;8847](https://github.com/pydantic/pydantic/pull/8847)
- [@&#8203;MamfTheKramf](https://github.com/MamfTheKramf) made their
first contribution in
[#&#8203;8851](https://github.com/pydantic/pydantic/pull/8851)
- [@&#8203;ornariece](https://github.com/ornariece) made their first
contribution in
[#&#8203;9001](https://github.com/pydantic/pydantic/pull/9001)
- [@&#8203;alexeyt101](https://github.com/alexeyt101) made their first
contribution in
[#&#8203;9004](https://github.com/pydantic/pydantic/pull/9004)
- [@&#8203;wannieman98](https://github.com/wannieman98) made their
first contribution in
[#&#8203;8947](https://github.com/pydantic/pydantic/pull/8947)
- [@&#8203;solidguy7](https://github.com/solidguy7) made their first
contribution in
[#&#8203;9062](https://github.com/pydantic/pydantic/pull/9062)
- [@&#8203;kloczek](https://github.com/kloczek) made their first
contribution in
[#&#8203;9047](https://github.com/pydantic/pydantic/pull/9047)
- [@&#8203;jag-k](https://github.com/jag-k) made their first
contribution in
[#&#8203;9053](https://github.com/pydantic/pydantic/pull/9053)
- [@&#8203;priya-gitTest](https://github.com/priya-gitTest) made their
first contribution in
[#&#8203;9088](https://github.com/pydantic/pydantic/pull/9088)
- [@&#8203;Youssefares](https://github.com/Youssefares) made their
first contribution in
[#&#8203;9023](https://github.com/pydantic/pydantic/pull/9023)
- [@&#8203;chan-vince](https://github.com/chan-vince) made their first
contribution in
[#&#8203;9105](https://github.com/pydantic/pydantic/pull/9105)
- [@&#8203;bruno-f-cruz](https://github.com/bruno-f-cruz) made their
first contribution in
[#&#8203;9135](https://github.com/pydantic/pydantic/pull/9135)
- [@&#8203;Lance-Drane](https://github.com/Lance-Drane) made their
first contribution in
[#&#8203;9166](https://github.com/pydantic/pydantic/pull/9166)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
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 has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNTEuMiIsInVwZGF0ZWRJblZlciI6IjM3LjM1MS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants