pydantic/pydantic (pydantic)
### [`v2.3.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v230-2023-08-23)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.2.1...v2.3.0)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.3.0)
- π₯ Remove orphaned changes file from repo by [@lig](https://togithub.com/lig) in [#7168](https://togithub.com/pydantic/pydantic/pull/7168)
- Add copy button on documentation by [@Kludex](https://togithub.com/Kludex) in [#7190](https://togithub.com/pydantic/pydantic/pull/7190)
- Fix docs on JSON type by [@Kludex](https://togithub.com/Kludex) in [#7189](https://togithub.com/pydantic/pydantic/pull/7189)
- Update mypy 1.5.0 to 1.5.1 in CI by [@hramezani](https://togithub.com/hramezani) in [#7191](https://togithub.com/pydantic/pydantic/pull/7191)
- fix download links badge by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7200](https://togithub.com/pydantic/pydantic/pull/7200)
- add 2.2.1 to changelog by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7212](https://togithub.com/pydantic/pydantic/pull/7212)
- Make ModelWrapValidator protocols generic by [@dmontagu](https://togithub.com/dmontagu) in [#7154](https://togithub.com/pydantic/pydantic/pull/7154)
- Correct `Field(..., exclude: bool)` docs by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7214](https://togithub.com/pydantic/pydantic/pull/7214)
- Make shadowing attributes a warning instead of an error by [@adriangb](https://togithub.com/adriangb) in [#7193](https://togithub.com/pydantic/pydantic/pull/7193)
- Document `Base64Str` and `Base64Bytes` by [@Kludex](https://togithub.com/Kludex) in [#7192](https://togithub.com/pydantic/pydantic/pull/7192)
- Fix `config.defer_build` for serialization first cases by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7024](https://togithub.com/pydantic/pydantic/pull/7024)
- clean Model docstrings in JSON Schema by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7210](https://togithub.com/pydantic/pydantic/pull/7210)
- fix [#7228](https://togithub.com/pydantic/pydantic/pull/7228) (typo): docs in `validators.md` to correct `validate_default` kwarg by [@lmmx](https://togithub.com/lmmx) in [#7229](https://togithub.com/pydantic/pydantic/pull/7229)
- β Implement `tzinfo.fromutc` method for `TzInfo` in `pydantic-core` by [@lig](https://togithub.com/lig) in [#7019](https://togithub.com/pydantic/pydantic/pull/7019)
- Support `__get_validators__` by [@hramezani](https://togithub.com/hramezani) in [#7197](https://togithub.com/pydantic/pydantic/pull/7197)
### [`v2.2.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v221-2023-08-18)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.2.0...v2.2.1)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.2.1)
- Make `xfail`ing test for root model extra stop `xfail`ing by [@dmontagu](https://togithub.com/dmontagu) in [#6937](https://togithub.com/pydantic/pydantic/pull/6937)
- Optimize recursion detection by stopping on the second visit for the same object by [@mciucu](https://togithub.com/mciucu) in [#7160](https://togithub.com/pydantic/pydantic/pull/7160)
- fix link in docs by [@tlambert03](https://togithub.com/tlambert03) in [#7166](https://togithub.com/pydantic/pydantic/pull/7166)
- Replace MiMalloc w/ default allocator by [@adriangb](https://togithub.com/adriangb) in [pydantic/pydantic-core#900](https://togithub.com/pydantic/pydantic-core/pull/900)
- Bump pydantic-core to 2.6.1 and prepare 2.2.1 release by [@adriangb](https://togithub.com/adriangb) in [#7176](https://togithub.com/pydantic/pydantic/pull/7176)
### [`v2.2.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v220-2023-08-17)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.1.1...v2.2.0)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.2.0)
- Split "pipx install" setup command into two commands on the documentation site by [@nomadmtb](https://togithub.com/nomadmtb) in [#6869](https://togithub.com/pydantic/pydantic/pull/6869)
- Deprecate `Field.include` by [@hramezani](https://togithub.com/hramezani) in [#6852](https://togithub.com/pydantic/pydantic/pull/6852)
- Fix typo in default factory error msg by [@hramezani](https://togithub.com/hramezani) in [#6880](https://togithub.com/pydantic/pydantic/pull/6880)
- Simplify handling of typing.Annotated in GenerateSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6887](https://togithub.com/pydantic/pydantic/pull/6887)
- Re-enable fastapi tests in CI by [@dmontagu](https://togithub.com/dmontagu) in [#6883](https://togithub.com/pydantic/pydantic/pull/6883)
- Make it harder to hit collisions with json schema defrefs by [@dmontagu](https://togithub.com/dmontagu) in [#6566](https://togithub.com/pydantic/pydantic/pull/6566)
- Cleaner error for invalid input to `Path` fields by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6903](https://togithub.com/pydantic/pydantic/pull/6903)
- :memo: support Coordinate Type by [@yezz123](https://togithub.com/yezz123) in [#6906](https://togithub.com/pydantic/pydantic/pull/6906)
- Fix `ForwardRef` wrapper for py 3.10.0 (shim until bpo-45166) by [@randomir](https://togithub.com/randomir) in [#6919](https://togithub.com/pydantic/pydantic/pull/6919)
- Fix misbehavior related to copying of RootModel by [@dmontagu](https://togithub.com/dmontagu) in [#6918](https://togithub.com/pydantic/pydantic/pull/6918)
- Fix issue with recursion error caused by ParamSpec by [@dmontagu](https://togithub.com/dmontagu) in [#6923](https://togithub.com/pydantic/pydantic/pull/6923)
- Add section about Constrained classes to the Migration Guide by [@Kludex](https://togithub.com/Kludex) in [#6924](https://togithub.com/pydantic/pydantic/pull/6924)
- Use `main` branch for badge links by [@Viicos](https://togithub.com/Viicos) in [#6925](https://togithub.com/pydantic/pydantic/pull/6925)
- Add test for v1/v2 Annotated discrepancy by [@carlbordum](https://togithub.com/carlbordum) in [#6926](https://togithub.com/pydantic/pydantic/pull/6926)
- Make the v1 mypy plugin work with both v1 and v2 by [@dmontagu](https://togithub.com/dmontagu) in [#6921](https://togithub.com/pydantic/pydantic/pull/6921)
- Fix issue where generic models couldn't be parametrized with BaseModel by [@dmontagu](https://togithub.com/dmontagu) in [#6933](https://togithub.com/pydantic/pydantic/pull/6933)
- Remove xfail for discriminated union with alias by [@dmontagu](https://togithub.com/dmontagu) in [#6938](https://togithub.com/pydantic/pydantic/pull/6938)
- add field_serializer to computed_field by [@andresliszt](https://togithub.com/andresliszt) in [#6965](https://togithub.com/pydantic/pydantic/pull/6965)
- Use union_schema with Type\[Union\[...]] by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#6952](https://togithub.com/pydantic/pydantic/pull/6952)
- Fix inherited typeddict attributes / config by [@adriangb](https://togithub.com/adriangb) in [#6981](https://togithub.com/pydantic/pydantic/pull/6981)
- fix dataclass annotated before validator called twice by [@davidhewitt](https://togithub.com/davidhewitt) in [#6998](https://togithub.com/pydantic/pydantic/pull/6998)
- Update test-fastapi deselected tests by [@hramezani](https://togithub.com/hramezani) in [#7014](https://togithub.com/pydantic/pydantic/pull/7014)
- Fix validator doc format by [@hramezani](https://togithub.com/hramezani) in [#7015](https://togithub.com/pydantic/pydantic/pull/7015)
- Fix typo in docstring of model_json_schema by [@AdamVinch-Federated](https://togithub.com/AdamVinch-Federated) in [#7032](https://togithub.com/pydantic/pydantic/pull/7032)
- remove unused "type ignores" with pyright by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7026](https://togithub.com/pydantic/pydantic/pull/7026)
- Add benchmark representing FastAPI startup time by [@adriangb](https://togithub.com/adriangb) in [#7030](https://togithub.com/pydantic/pydantic/pull/7030)
- Fix json_encoders for Enum subclasses by [@adriangb](https://togithub.com/adriangb) in [#7029](https://togithub.com/pydantic/pydantic/pull/7029)
- Update docstring of `ser_json_bytes` regarding base64 encoding by [@Viicos](https://togithub.com/Viicos) in [#7052](https://togithub.com/pydantic/pydantic/pull/7052)
- Allow `@validate_call` to work on async methods by [@adriangb](https://togithub.com/adriangb) in [#7046](https://togithub.com/pydantic/pydantic/pull/7046)
- Fix: mypy error with `Settings` and `SettingsConfigDict` by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#7002](https://togithub.com/pydantic/pydantic/pull/7002)
- Fix some typos (repeated words and it's/its) by [@eumiro](https://togithub.com/eumiro) in [#7063](https://togithub.com/pydantic/pydantic/pull/7063)
- Fix the typo in docstring by [@harunyasar](https://togithub.com/harunyasar) in [#7062](https://togithub.com/pydantic/pydantic/pull/7062)
- Docs: Fix broken URL in the pydantic-settings package recommendation by [@swetjen](https://togithub.com/swetjen) in [#6995](https://togithub.com/pydantic/pydantic/pull/6995)
- Handle constraints being applied to schemas that don't accept it by [@adriangb](https://togithub.com/adriangb) in [#6951](https://togithub.com/pydantic/pydantic/pull/6951)
- Replace almost_equal_floats with math.isclose by [@eumiro](https://togithub.com/eumiro) in [#7082](https://togithub.com/pydantic/pydantic/pull/7082)
- bump pydantic-core to 2.5.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#7077](https://togithub.com/pydantic/pydantic/pull/7077)
- Add `short_version` and use it in links by [@hramezani](https://togithub.com/hramezani) in [#7115](https://togithub.com/pydantic/pydantic/pull/7115)
- π Add usage link to `RootModel` by [@Kludex](https://togithub.com/Kludex) in [#7113](https://togithub.com/pydantic/pydantic/pull/7113)
- Revert "Fix default port for mongosrv DSNs ([#6827](https://togithub.com/pydantic/pydantic/issues/6827))" by [@Kludex](https://togithub.com/Kludex) in [#7116](https://togithub.com/pydantic/pydantic/pull/7116)
- Clarify validate_default and \_Unset handling in usage docs and migration guide by [@benbenbang](https://togithub.com/benbenbang) in [#6950](https://togithub.com/pydantic/pydantic/pull/6950)
- Tweak documentation of `Field.exclude` by [@Viicos](https://togithub.com/Viicos) in [#7086](https://togithub.com/pydantic/pydantic/pull/7086)
- Do not require `validate_assignment` to use `Field.frozen` by [@Viicos](https://togithub.com/Viicos) in [#7103](https://togithub.com/pydantic/pydantic/pull/7103)
- tweaks to `_core_utils` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7040](https://togithub.com/pydantic/pydantic/pull/7040)
- Make DefaultDict working with set by [@hramezani](https://togithub.com/hramezani) in [#7126](https://togithub.com/pydantic/pydantic/pull/7126)
- Don't always require typing.Generic as a base for partially parametrized models by [@dmontagu](https://togithub.com/dmontagu) in [#7119](https://togithub.com/pydantic/pydantic/pull/7119)
- Fix issue with JSON schema incorrectly using parent class core schema by [@dmontagu](https://togithub.com/dmontagu) in [#7020](https://togithub.com/pydantic/pydantic/pull/7020)
- Fix xfailed test related to TypedDict and alias_generator by [@dmontagu](https://togithub.com/dmontagu) in [#6940](https://togithub.com/pydantic/pydantic/pull/6940)
- Improve error message for NameEmail by [@dmontagu](https://togithub.com/dmontagu) in [#6939](https://togithub.com/pydantic/pydantic/pull/6939)
- Fix generic computed fields by [@dmontagu](https://togithub.com/dmontagu) in [#6988](https://togithub.com/pydantic/pydantic/pull/6988)
- Reflect namedtuple default values during validation by [@dmontagu](https://togithub.com/dmontagu) in [#7144](https://togithub.com/pydantic/pydantic/pull/7144)
- Update dependencies, fix pydantic-core usage, fix CI issues by [@dmontagu](https://togithub.com/dmontagu) in [#7150](https://togithub.com/pydantic/pydantic/pull/7150)
- Add mypy 1.5.0 by [@hramezani](https://togithub.com/hramezani) in [#7118](https://togithub.com/pydantic/pydantic/pull/7118)
- Handle non-json native enum values by [@adriangb](https://togithub.com/adriangb) in [#7056](https://togithub.com/pydantic/pydantic/pull/7056)
- document `round_trip` in Json type documentation by [@jc-louis](https://togithub.com/jc-louis) in [#7137](https://togithub.com/pydantic/pydantic/pull/7137)
- Relax signature checks to better support builtins and C extension functions as validators by [@adriangb](https://togithub.com/adriangb) in [#7101](https://togithub.com/pydantic/pydantic/pull/7101)
- add union_mode='left_to_right' by [@davidhewitt](https://togithub.com/davidhewitt) in [#7151](https://togithub.com/pydantic/pydantic/pull/7151)
- Include an error message hint for inherited ordering by [@yvalencia91](https://togithub.com/yvalencia91) in [#7124](https://togithub.com/pydantic/pydantic/pull/7124)
- Fix one docs link and resolve some warnings for two others by [@dmontagu](https://togithub.com/dmontagu) in [#7153](https://togithub.com/pydantic/pydantic/pull/7153)
- Include Field extra keys name in warning by [@hramezani](https://togithub.com/hramezani) in [#7136](https://togithub.com/pydantic/pydantic/pull/7136)
### [`v2.1.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v211-2023-07-25)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.1.0...v2.1.1)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.1.1)
- Skip FieldInfo merging when unnecessary by [@dmontagu](https://togithub.com/dmontagu) in [#6862](https://togithub.com/pydantic/pydantic/pull/6862)
### [`v2.1.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v210-2023-07-25)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0.3...v2.1.0)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.1.0)
- Add `StringConstraints` for use as Annotated metadata by [@adriangb](https://togithub.com/adriangb) in [#6605](https://togithub.com/pydantic/pydantic/pull/6605)
- Try to fix intermittently failing CI by [@adriangb](https://togithub.com/adriangb) in [#6683](https://togithub.com/pydantic/pydantic/pull/6683)
- Remove redundant example of optional vs default. by [@ehiggs-deliverect](https://togithub.com/ehiggs-deliverect) in [#6676](https://togithub.com/pydantic/pydantic/pull/6676)
- Docs update by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6692](https://togithub.com/pydantic/pydantic/pull/6692)
- Remove the Validate always section in validator docs by [@adriangb](https://togithub.com/adriangb) in [#6679](https://togithub.com/pydantic/pydantic/pull/6679)
- Fix recursion error in json schema generation by [@adriangb](https://togithub.com/adriangb) in [#6720](https://togithub.com/pydantic/pydantic/pull/6720)
- Fix incorrect subclass check for secretstr by [@AlexVndnblcke](https://togithub.com/AlexVndnblcke) in [#6730](https://togithub.com/pydantic/pydantic/pull/6730)
- update pdm / pdm lockfile to 2.8.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#6714](https://togithub.com/pydantic/pydantic/pull/6714)
- unpin pdm on more CI jobs by [@davidhewitt](https://togithub.com/davidhewitt) in [#6755](https://togithub.com/pydantic/pydantic/pull/6755)
- improve source locations for auxiliary packages in docs by [@davidhewitt](https://togithub.com/davidhewitt) in [#6749](https://togithub.com/pydantic/pydantic/pull/6749)
- Assume builtins don't accept an info argument by [@adriangb](https://togithub.com/adriangb) in [#6754](https://togithub.com/pydantic/pydantic/pull/6754)
- Fix bug where calling `help(BaseModelSubclass)` raises errors by [@hramezani](https://togithub.com/hramezani) in [#6758](https://togithub.com/pydantic/pydantic/pull/6758)
- Fix mypy plugin handling of `@model_validator(mode="after")` by [@ljodal](https://togithub.com/ljodal) in [#6753](https://togithub.com/pydantic/pydantic/pull/6753)
- update pydantic-core to 2.3.1 by [@davidhewitt](https://togithub.com/davidhewitt) in [#6756](https://togithub.com/pydantic/pydantic/pull/6756)
- Mypy plugin for settings by [@hramezani](https://togithub.com/hramezani) in [#6760](https://togithub.com/pydantic/pydantic/pull/6760)
- Use `contentSchema` keyword for JSON schema by [@dmontagu](https://togithub.com/dmontagu) in [#6715](https://togithub.com/pydantic/pydantic/pull/6715)
- fast-path checking finite decimals by [@davidhewitt](https://togithub.com/davidhewitt) in [#6769](https://togithub.com/pydantic/pydantic/pull/6769)
- Docs update by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6771](https://togithub.com/pydantic/pydantic/pull/6771)
- Improve json schema doc by [@hramezani](https://togithub.com/hramezani) in [#6772](https://togithub.com/pydantic/pydantic/pull/6772)
- Update validator docs by [@adriangb](https://togithub.com/adriangb) in [#6695](https://togithub.com/pydantic/pydantic/pull/6695)
- Fix typehint for wrap validator by [@dmontagu](https://togithub.com/dmontagu) in [#6788](https://togithub.com/pydantic/pydantic/pull/6788)
- π Fix validation warning for unions of Literal and other type by [@lig](https://togithub.com/lig) in [#6628](https://togithub.com/pydantic/pydantic/pull/6628)
- Update documentation for generics support in V2 by [@tpdorsey](https://togithub.com/tpdorsey) in [#6685](https://togithub.com/pydantic/pydantic/pull/6685)
- add pydantic-core build info to `version_info()` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6785](https://togithub.com/pydantic/pydantic/pull/6785)
- Fix pydantic dataclasses that use slots with default values by [@dmontagu](https://togithub.com/dmontagu) in [#6796](https://togithub.com/pydantic/pydantic/pull/6796)
- Fix inheritance of hash function for frozen models by [@dmontagu](https://togithub.com/dmontagu) in [#6789](https://togithub.com/pydantic/pydantic/pull/6789)
- β¨ Add `SkipJsonSchema` annotation by [@Kludex](https://togithub.com/Kludex) in [#6653](https://togithub.com/pydantic/pydantic/pull/6653)
- Error if an invalid field name is used with Field by [@dmontagu](https://togithub.com/dmontagu) in [#6797](https://togithub.com/pydantic/pydantic/pull/6797)
- Add `GenericModel` to `MOVED_IN_V2` by [@adriangb](https://togithub.com/adriangb) in [#6776](https://togithub.com/pydantic/pydantic/pull/6776)
- Remove unused code from `docs/usage/types/custom.md` by [@hramezani](https://togithub.com/hramezani) in [#6803](https://togithub.com/pydantic/pydantic/pull/6803)
- Fix `float` -> `Decimal` coercion precision loss by [@adriangb](https://togithub.com/adriangb) in [#6810](https://togithub.com/pydantic/pydantic/pull/6810)
- remove email validation from the north star benchmark by [@davidhewitt](https://togithub.com/davidhewitt) in [#6816](https://togithub.com/pydantic/pydantic/pull/6816)
- Fix link to mypy by [@progsmile](https://togithub.com/progsmile) in [#6824](https://togithub.com/pydantic/pydantic/pull/6824)
- Improve initialization hooks example by [@hramezani](https://togithub.com/hramezani) in [#6822](https://togithub.com/pydantic/pydantic/pull/6822)
- Fix default port for mongosrv DSNs by [@dmontagu](https://togithub.com/dmontagu) in [#6827](https://togithub.com/pydantic/pydantic/pull/6827)
- Improve API documentation, in particular more links between usage and API docs by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6780](https://togithub.com/pydantic/pydantic/pull/6780)
- update pydantic-core to 2.4.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#6831](https://togithub.com/pydantic/pydantic/pull/6831)
- Fix `annotated_types.MaxLen` validator for custom sequence types by [@ImogenBits](https://togithub.com/ImogenBits) in [#6809](https://togithub.com/pydantic/pydantic/pull/6809)
- Update V1 by [@hramezani](https://togithub.com/hramezani) in [#6833](https://togithub.com/pydantic/pydantic/pull/6833)
- Make it so callable JSON schema extra works by [@dmontagu](https://togithub.com/dmontagu) in [#6798](https://togithub.com/pydantic/pydantic/pull/6798)
- Fix serialization issue with `InstanceOf` by [@dmontagu](https://togithub.com/dmontagu) in [#6829](https://togithub.com/pydantic/pydantic/pull/6829)
- Add back support for `json_encoders` by [@adriangb](https://togithub.com/adriangb) in [#6811](https://togithub.com/pydantic/pydantic/pull/6811)
- Update field annotations when building the schema by [@dmontagu](https://togithub.com/dmontagu) in [#6838](https://togithub.com/pydantic/pydantic/pull/6838)
- Use `WeakValueDictionary` to fix generic memory leak by [@dmontagu](https://togithub.com/dmontagu) in [#6681](https://togithub.com/pydantic/pydantic/pull/6681)
- Add `config.defer_build` to optionally make model building lazy by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6823](https://togithub.com/pydantic/pydantic/pull/6823)
- delegate `UUID` serialization to pydantic-core by [@davidhewitt](https://togithub.com/davidhewitt) in [#6850](https://togithub.com/pydantic/pydantic/pull/6850)
- Update `json_encoders` docs by [@adriangb](https://togithub.com/adriangb) in [#6848](https://togithub.com/pydantic/pydantic/pull/6848)
- Fix error message for `staticmethod`/`classmethod` order with validate_call by [@dmontagu](https://togithub.com/dmontagu) in [#6686](https://togithub.com/pydantic/pydantic/pull/6686)
- Improve documentation for `Config` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6847](https://togithub.com/pydantic/pydantic/pull/6847)
- Update serialization doc to mention `Field.exclude` takes priority over call-time `include/exclude` by [@hramezani](https://togithub.com/hramezani) in [#6851](https://togithub.com/pydantic/pydantic/pull/6851)
- Allow customizing core schema generation by making `GenerateSchema` public by [@adriangb](https://togithub.com/adriangb) in [#6737](https://togithub.com/pydantic/pydantic/pull/6737)
### [`v2.0.3`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v203-2023-07-05)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0.2...v2.0.3)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.3)
- Mention PyObject (v1) moving to ImportString (v2) in migration doc by [@slafs](https://togithub.com/slafs) in [#6456](https://togithub.com/pydantic/pydantic/pull/6456)
- Fix release-tweet CI by [@Kludex](https://togithub.com/Kludex) in [#6461](https://togithub.com/pydantic/pydantic/pull/6461)
- Revise the section on required / optional / nullable fields. by [@ybressler](https://togithub.com/ybressler) in [#6468](https://togithub.com/pydantic/pydantic/pull/6468)
- Warn if a type hint is not in fact a type by [@adriangb](https://togithub.com/adriangb) in [#6479](https://togithub.com/pydantic/pydantic/pull/6479)
- Replace TransformSchema with GetPydanticSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6484](https://togithub.com/pydantic/pydantic/pull/6484)
- Fix the un-hashability of various annotation types, for use in caching generic containers by [@dmontagu](https://togithub.com/dmontagu) in [#6480](https://togithub.com/pydantic/pydantic/pull/6480)
- PYD-164: Rework custom types docs by [@adriangb](https://togithub.com/adriangb) in [#6490](https://togithub.com/pydantic/pydantic/pull/6490)
- Fix ci by [@adriangb](https://togithub.com/adriangb) in [#6507](https://togithub.com/pydantic/pydantic/pull/6507)
- Fix forward ref in generic by [@adriangb](https://togithub.com/adriangb) in [#6511](https://togithub.com/pydantic/pydantic/pull/6511)
- Fix generation of serialization JSON schemas for core_schema.ChainSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6515](https://togithub.com/pydantic/pydantic/pull/6515)
- Document the change in `Field.alias` behavior in Pydantic V2 by [@hramezani](https://togithub.com/hramezani) in [#6508](https://togithub.com/pydantic/pydantic/pull/6508)
- Give better error message attempting to compute the json schema of a model with undefined fields by [@dmontagu](https://togithub.com/dmontagu) in [#6519](https://togithub.com/pydantic/pydantic/pull/6519)
- Document `alias_priority` by [@tpdorsey](https://togithub.com/tpdorsey) in [#6520](https://togithub.com/pydantic/pydantic/pull/6520)
- Add redirect for types documentation by [@tpdorsey](https://togithub.com/tpdorsey) in [#6513](https://togithub.com/pydantic/pydantic/pull/6513)
- Allow updating docs without release by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6551](https://togithub.com/pydantic/pydantic/pull/6551)
- Ensure docs tests always run in the right folder by [@dmontagu](https://togithub.com/dmontagu) in [#6487](https://togithub.com/pydantic/pydantic/pull/6487)
- Defer evaluation of return type hints for serializer functions by [@dmontagu](https://togithub.com/dmontagu) in [#6516](https://togithub.com/pydantic/pydantic/pull/6516)
- Disable E501 from Ruff and rely on just Black by [@adriangb](https://togithub.com/adriangb) in [#6552](https://togithub.com/pydantic/pydantic/pull/6552)
- Update JSON Schema documentation for V2 by [@tpdorsey](https://togithub.com/tpdorsey) in [#6492](https://togithub.com/pydantic/pydantic/pull/6492)
- Add documentation of cyclic reference handling by [@dmontagu](https://togithub.com/dmontagu) in [#6493](https://togithub.com/pydantic/pydantic/pull/6493)
- Remove the need for change files by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6556](https://togithub.com/pydantic/pydantic/pull/6556)
- add "north star" benchmark by [@davidhewitt](https://togithub.com/davidhewitt) in [#6547](https://togithub.com/pydantic/pydantic/pull/6547)
- Update Dataclasses docs by [@tpdorsey](https://togithub.com/tpdorsey) in [#6470](https://togithub.com/pydantic/pydantic/pull/6470)
- β»οΈ Use different error message on v1 redirects by [@Kludex](https://togithub.com/Kludex) in [#6595](https://togithub.com/pydantic/pydantic/pull/6595)
- β¬ Upgrade `pydantic-core` to v2.2.0 by [@lig](https://togithub.com/lig) in [#6589](https://togithub.com/pydantic/pydantic/pull/6589)
- Fix serialization for IPvAny by [@dmontagu](https://togithub.com/dmontagu) in [#6572](https://togithub.com/pydantic/pydantic/pull/6572)
- Improve CI by using PDM instead of pip to install typing-extensions by [@adriangb](https://togithub.com/adriangb) in [#6602](https://togithub.com/pydantic/pydantic/pull/6602)
- Add `enum` error type docs by [@lig](https://togithub.com/lig) in [#6603](https://togithub.com/pydantic/pydantic/pull/6603)
- π Fix `max_length` for unicode strings by [@lig](https://togithub.com/lig) in [#6559](https://togithub.com/pydantic/pydantic/pull/6559)
- Add documentation for accessing features via `pydantic.v1` by [@tpdorsey](https://togithub.com/tpdorsey) in [#6604](https://togithub.com/pydantic/pydantic/pull/6604)
- Include extra when iterating over a model by [@adriangb](https://togithub.com/adriangb) in [#6562](https://togithub.com/pydantic/pydantic/pull/6562)
- Fix typing of model_validator by [@adriangb](https://togithub.com/adriangb) in [#6514](https://togithub.com/pydantic/pydantic/pull/6514)
- Touch up Decimal validator by [@adriangb](https://togithub.com/adriangb) in [#6327](https://togithub.com/pydantic/pydantic/pull/6327)
- Fix various docstrings using fixed pytest-examples by [@dmontagu](https://togithub.com/dmontagu) in [#6607](https://togithub.com/pydantic/pydantic/pull/6607)
- Handle function validators in a discriminated union by [@dmontagu](https://togithub.com/dmontagu) in [#6570](https://togithub.com/pydantic/pydantic/pull/6570)
- Review json_schema.md by [@tpdorsey](https://togithub.com/tpdorsey) in [#6608](https://togithub.com/pydantic/pydantic/pull/6608)
- Make validate_call work on basemodel methods by [@dmontagu](https://togithub.com/dmontagu) in [#6569](https://togithub.com/pydantic/pydantic/pull/6569)
- add test for big int json serde by [@davidhewitt](https://togithub.com/davidhewitt) in [#6614](https://togithub.com/pydantic/pydantic/pull/6614)
- Fix pydantic dataclass problem with dataclasses.field default_factory by [@hramezani](https://togithub.com/hramezani) in [#6616](https://togithub.com/pydantic/pydantic/pull/6616)
- Fixed mypy type inference for TypeAdapter by [@zakstucke](https://togithub.com/zakstucke) in [#6617](https://togithub.com/pydantic/pydantic/pull/6617)
- Make it work to use None as a generic parameter by [@dmontagu](https://togithub.com/dmontagu) in [#6609](https://togithub.com/pydantic/pydantic/pull/6609)
- Make it work to use `$ref` as an alias by [@dmontagu](https://togithub.com/dmontagu) in [#6568](https://togithub.com/pydantic/pydantic/pull/6568)
- add note to migration guide about changes to `AnyUrl` etc by [@davidhewitt](https://togithub.com/davidhewitt) in [#6618](https://togithub.com/pydantic/pydantic/pull/6618)
- π Support defining `json_schema_extra` on `RootModel` using `Field` by [@lig](https://togithub.com/lig) in [#6622](https://togithub.com/pydantic/pydantic/pull/6622)
- Update pre-commit to prevent commits to main branch on accident by [@dmontagu](https://togithub.com/dmontagu) in [#6636](https://togithub.com/pydantic/pydantic/pull/6636)
- Fix PDM CI for python 3.7 on MacOS/windows by [@dmontagu](https://togithub.com/dmontagu) in [#6627](https://togithub.com/pydantic/pydantic/pull/6627)
- Produce more accurate signatures for pydantic dataclasses by [@dmontagu](https://togithub.com/dmontagu) in [#6633](https://togithub.com/pydantic/pydantic/pull/6633)
- Updates to Url types for Pydantic V2 by [@tpdorsey](https://togithub.com/tpdorsey) in [#6638](https://togithub.com/pydantic/pydantic/pull/6638)
- Fix list markdown in `transform` docstring by [@StefanBRas](https://togithub.com/StefanBRas) in [#6649](https://togithub.com/pydantic/pydantic/pull/6649)
- simplify slots_dataclass construction to appease mypy by [@davidhewitt](https://togithub.com/davidhewitt) in [#6639](https://togithub.com/pydantic/pydantic/pull/6639)
- Update TypedDict schema generation docstring by [@adriangb](https://togithub.com/adriangb) in [#6651](https://togithub.com/pydantic/pydantic/pull/6651)
- Detect and lint-error for prints by [@dmontagu](https://togithub.com/dmontagu) in [#6655](https://togithub.com/pydantic/pydantic/pull/6655)
- Add xfailing test for pydantic-core PR 766 by [@dmontagu](https://togithub.com/dmontagu) in [#6641](https://togithub.com/pydantic/pydantic/pull/6641)
- Ignore unrecognized fields from dataclasses metadata by [@dmontagu](https://togithub.com/dmontagu) in [#6634](https://togithub.com/pydantic/pydantic/pull/6634)
- Make non-existent class getattr a mypy error by [@dmontagu](https://togithub.com/dmontagu) in [#6658](https://togithub.com/pydantic/pydantic/pull/6658)
- Update pydantic-core to 2.3.0 by [@hramezani](https://togithub.com/hramezani) in [#6648](https://togithub.com/pydantic/pydantic/pull/6648)
- Use OrderedDict from typing_extensions by [@dmontagu](https://togithub.com/dmontagu) in [#6664](https://togithub.com/pydantic/pydantic/pull/6664)
- Fix typehint for JSON schema extra callable by [@dmontagu](https://togithub.com/dmontagu) in [#6659](https://togithub.com/pydantic/pydantic/pull/6659)
### [`v2.0.2`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v202-2023-07-05)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0.1...v2.0.2)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.2)
- Fix bug where round-trip pickling/unpickling a `RootModel` would change the value of `__dict__`, [#6457](https://togithub.com/pydantic/pydantic/pull/6457) by [@dmontagu](https://togithub.com/dmontagu)
- Allow single-item discriminated unions, [#6405](https://togithub.com/pydantic/pydantic/pull/6405) by [@dmontagu](https://togithub.com/dmontagu)
- Fix issue with union parsing of enums, [#6440](https://togithub.com/pydantic/pydantic/pull/6440) by [@dmontagu](https://togithub.com/dmontagu)
- Docs: Fixed `constr` documentation, renamed old `regex` to new `pattern`, [#6452](https://togithub.com/pydantic/pydantic/pull/6452) by [@miili](https://togithub.com/miili)
- Change `GenerateJsonSchema.generate_definitions` signature, [#6436](https://togithub.com/pydantic/pydantic/pull/6436) by [@dmontagu](https://togithub.com/dmontagu)
See the full changelog [here](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.2)
### [`v2.0.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v201-2023-07-04)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0...v2.0.1)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.1)
First patch release of Pydantic V2
- Extra fields added via `setattr` (i.e. `m.some_extra_field = 'extra_value'`)
are added to `.model_extra` if `model_config` `extra='allowed'`. Fixed [#6333](https://togithub.com/pydantic/pydantic/pull/6333), [#6365](https://togithub.com/pydantic/pydantic/pull/6365) by [@aaraney](https://togithub.com/aaraney)
- Automatically unpack JSON schema '$ref' for custom types, [#6343](https://togithub.com/pydantic/pydantic/pull/6343) by [@adriangb](https://togithub.com/adriangb)
- Fix tagged unions multiple processing in submodels, [#6340](https://togithub.com/pydantic/pydantic/pull/6340) by [@suharnikov](https://togithub.com/suharnikov)
See the full changelog [here](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.1)
### [`v2.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v220-2023-08-17)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.10.12...v2.0)
[GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.2.0)
- Split "pipx install" setup command into two commands on the documentation site by [@nomadmtb](https://togithub.com/nomadmtb) in [#6869](https://togithub.com/pydantic/pydantic/pull/6869)
- Deprecate `Field.include` by [@hramezani](https://togithub.com/hramezani) in [#6852](https://togithub.com/pydantic/pydantic/pull/6852)
- Fix typo in default factory error msg by [@hramezani](https://togithub.com/hramezani) in [#6880](https://togithub.com/pydantic/pydantic/pull/6880)
- Simplify handling of typing.Annotated in GenerateSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6887](https://togithub.com/pydantic/pydantic/pull/6887)
- Re-enable fastapi tests in CI by [@dmontagu](https://togithub.com/dmontagu) in [#6883](https://togithub.com/pydantic/pydantic/pull/6883)
- Make it harder to hit collisions with json schema defrefs by [@dmontagu](https://togithub.com/dmontagu) in [#6566](https://togithub.com/pydantic/pydantic/pull/6566)
- Cleaner error for invalid input to `Path` fields by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6903](https://togithub.com/pydantic/pydantic/pull/6903)
- :memo: support Coordinate Type by [@yezz123](https://togithub.com/yezz123) in [#6906](https://togithub.com/pydantic/pydantic/pull/6906)
- Fix `ForwardRef` wrapper for py 3.10.0 (shim until bpo-45166) by [@randomir](https://togithub.com/randomir) in [#6919](https://togithub.com/pydantic/pydantic/pull/6919)
- Fix misbehavior related to copying of RootModel by [@dmontagu](https://togithub.com/dmontagu) in [#6918](https://togithub.com/pydantic/pydantic/pull/6918)
- Fix issue with recursion error caused by ParamSpec by [@dmontagu](https://togithub.com/dmontagu) in [#6923](https://togithub.com/pydantic/pydantic/pull/6923)
- Add section about Constrained classes to the Migration Guide by [@Kludex](https://togithub.com/Kludex) in [#6924](https://togithub.com/pydantic/pydantic/pull/6924)
- Use `main` branch for badge links by [@Viicos](https://togithub.com/Viicos) in [#6925](https://togithub.com/pydantic/pydantic/pull/6925)
- Add test for v1/v2 Annotated discrepancy by [@carlbordum](https://togithub.com/carlbordum) in [#6926](https://togithub.com/pydantic/pydantic/pull/6926)
- Make the v1 mypy plugin work with both v1 and v2 by [@dmontagu](https://togithub.com/dmontagu) in [#6921](https://togithub.com/pydantic/pydantic/pull/6921)
- Fix issue where generic models couldn't be parametrized with BaseModel by [@dmontagu](https://togithub.com/dmontagu) in [#6933](https://togithub.com/pydantic/pydantic/pull/6933)
- Remove xfail for discriminated union with alias by [@dmontagu](https://togithub.com/dmontagu) in [#6938](https://togithub.com/pydantic/pydantic/pull/6938)
- add field_serializer to computed_field by [@andresliszt](https://togithub.com/andresliszt) in [#6965](https://togithub.com/pydantic/pydantic/pull/6965)
- Use union_schema with Type\[Union\[...]] by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#6952](https://togithub.com/pydantic/pydantic/pull/6952)
- Fix inherited typeddict attributes / config by [@adriangb](https://togithub.com/adriangb) in [#6981](https://togithub.com/pydantic/pydantic/pull/6981)
- fix dataclass annotated before validator called twice by [@davidhewitt](https://togithub.com/davidhewitt) in [#6998](https://togithub.com/pydantic/pydantic/pull/6998)
- Update test-fastapi deselected tests by [@hramezani](https://togithub.com/hramezani) in [#7014](https://togithub.com/pydantic/pydantic/pull/7014)
- Fix validator doc format by [@hramezani](https://togithub.com/hramezani) in [#7015](https://togithub.com/pydantic/pydantic/pull/7015)
- Fix typo in docstring of model_json_schema by [@AdamVinch-Federated](https://togithub.com/AdamVinch-Federated) in [#7032](https://togithub.com/pydantic/pydantic/pull/7032)
- remove unused "type ignores" with pyright by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7026](https://togithub.com/pydantic/pydantic/pull/7026)
- Add benchmark representing FastAPI startup time by [@adriangb](https://togithub.com/adriangb) in [#7030](https://togithub.com/pydantic/pydantic/pull/7030)
- Fix json_encoders for Enum subclasses by [@adriangb](https://togithub.com/adriangb) in [#7029](https://togithub.com/pydantic/pydantic/pull/7029)
- Update docstring of `ser_json_bytes` regarding base64 encoding by [@Viicos](https://togithub.com/Viicos) in [#7052](https://togithub.com/pydantic/pydantic/pull/7052)
- Allow `@validate_call` to work on async methods by [@adriangb](https://togithub.com/adriangb) in [#7046](https://togithub.com/pydantic/pydantic/pull/7046)
- Fix: mypy error with `Settings` and `SettingsConfigDict` by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#7002](https://togithub.com/pydantic/pydantic/pull/7002)
- Fix some typos (repeated words and it's/its) by [@eumiro](https://togithub.com/eumiro) in [#7063](https://togithub.com/pydantic/pydantic/pull/7063)
- Fix the typo in docstring by [@harunyasar](https://togithub.com/harunyasar) in [#7062](https://togithub.com/pydantic/pydantic/pull/7062)
- Docs: Fix broken URL in the pydantic-settings package recommendation by [@swetjen](https://togithub.com/swetjen) in [#6995](https://togithub.com/pydantic/pydantic/pull/6995)
- Handle constraints being applied to schemas that don't accept it by [@adriangb](https://togithub.com/adriangb) in [#6951](https://togithub.com/pydantic/pydantic/pull/6951)
- Replace almost_equal_floats with math.isclose by [@eumiro](https://togithub.com/eumiro) in [#7082](https://togithub.com/pydantic/pydantic/pull/7082)
- bump pydantic-core to 2.5.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#7077](https://togithub.com/pydantic/pydantic/pull/7077)
- Add `short_version` and use it in links by [@hramezani](https://togithub.com/hramezani) in [#7115](https://togithub.com/pydantic/pydantic/pull/7115)
- π Add usage link to `RootModel` by [@Kludex](https://togithub.com/Kludex) in [#7113](https://togithub.com/pydantic/pydantic/pull/7113)
- Revert "Fix default port for mongosrv DSNs ([#6827](https://togithub.com/pydantic/pydantic/issues/6827))" by [@Kludex](https://togithub.com/Kludex) in [#7116](https://togithub.com/pydantic/pydantic/pull/7116)
- Clarify validate_default and \_Unset handling in usage docs and migration guide by [@benbenbang](https://togithub.com/benbenbang) in [#6950](https://togithub.com/pydantic/pydantic/pull/6950)
- Tweak documentation of `Field.exclude` by [@Viicos](https://togithub.com/Viicos) in [#7086](https://togithub.com/pydantic/pydantic/pull/7086)
- Do not require `validate_assignment` to use `Field.frozen` by [@Viicos](https://togithub.com/Viicos) in [#7103](https://togithub.com/pydantic/pydantic/pull/7103)
- tweaks to `_core_utils` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7040](https://togithub.com/pydantic/pydantic/pull/7040)
- Make DefaultDict working with set by [@hramezani](https://togithub.com/hramezani) in [#7126](https://togithub.com/pydantic/pydantic/pull/7126)
- Don't always require typing.Generic as a base for partially parametrized models by [@dmontagu](https://togithub.com/dmontagu) in [#7119](https://togithub.com/pydantic/pydantic/pull/7119)
- Fix issue with JSON schema incorrectly using parent class core schema by [@dmontagu](https://togithub.com/dmontagu) in [#7020](https://togithub.com/pydantic/pydantic/pull/7020)
- Fix xfailed test related to TypedDict and alias_generator by [@dmontagu](https://togithub.com/dmontagu) in [#6940](https://togithub.com/pydantic/pydantic/pull/6940)
- Improve error message for NameEmail by [@dmontagu](https://togithub.com/dmontagu) in [#6939](https://togithub.com/pydantic/pydantic/pull/6939)
- Fix generic computed fields by [@dmontagu](https://togithub.com/dmontagu) in [#6988](https://togithub.com/pydantic/pydantic/pull/6988)
- Reflect namedtuple default values during validation by [@dmontagu](https://togithub.com/dmontagu) in [#7144](https://togithub.com/pydantic/pydantic/pull/7144)
- Update dependencies, fix pydantic-core usage, fix CI issues by [@dmontagu](https://togithub.com/dmontagu) in [#7150](https://togithub.com/pydantic/pydantic/pull/7150)
- Add mypy 1.5.0 by [@hramezani](https://togithub.com/hramezani) in [#7118](https://togithub.com/pydantic/pydantic/pull/7118)
- Handle non-json native enum values by [@adriangb](https://togithub.com/adriangb) in [#7056](https://togithub.com/pydantic/pydantic/pull/7056)
- document `round_trip` in Json type documentation by [@jc-louis](https://togithub.com/jc-louis) in [#7137](https://togithub.com/pydantic/pydantic/pull/7137)
- Relax signature checks to better support builtins and C extension functions as validators by [@adriangb](https://togithub.com/adriangb) in [#7101](https://togithub.com/pydantic/pydantic/pull/7101)
- add union_mode='left_to_right' by [@davidhewitt](https://togithub.com/davidhewitt) in [#7151](https://togithub.com/pydantic/pydantic/pull/7151)
- Include an error message hint for inherited ordering by [@yvalencia91](https://togithub.com/yvalencia91) in [#7124](https://togithub.com/pydantic/pydantic/pull/7124)
- Fix one docs link and resolve some warnings for two others by [@dmontagu](https://togithub.com/dmontagu) in [#7153](https://togithub.com/pydantic/pydantic/pull/7153)
- Include Field extra keys name in warning by [@hramezani](https://togithub.com/hramezani) in [#7136](https://togithub.com/pydantic/pydantic/pull/7136)
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.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
>=1.9.0,<2
->>=2.3,<3
Release Notes
pydantic/pydantic (pydantic)
### [`v2.3.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v230-2023-08-23) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.2.1...v2.3.0) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.3.0) - π₯ Remove orphaned changes file from repo by [@lig](https://togithub.com/lig) in [#7168](https://togithub.com/pydantic/pydantic/pull/7168) - Add copy button on documentation by [@Kludex](https://togithub.com/Kludex) in [#7190](https://togithub.com/pydantic/pydantic/pull/7190) - Fix docs on JSON type by [@Kludex](https://togithub.com/Kludex) in [#7189](https://togithub.com/pydantic/pydantic/pull/7189) - Update mypy 1.5.0 to 1.5.1 in CI by [@hramezani](https://togithub.com/hramezani) in [#7191](https://togithub.com/pydantic/pydantic/pull/7191) - fix download links badge by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7200](https://togithub.com/pydantic/pydantic/pull/7200) - add 2.2.1 to changelog by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7212](https://togithub.com/pydantic/pydantic/pull/7212) - Make ModelWrapValidator protocols generic by [@dmontagu](https://togithub.com/dmontagu) in [#7154](https://togithub.com/pydantic/pydantic/pull/7154) - Correct `Field(..., exclude: bool)` docs by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7214](https://togithub.com/pydantic/pydantic/pull/7214) - Make shadowing attributes a warning instead of an error by [@adriangb](https://togithub.com/adriangb) in [#7193](https://togithub.com/pydantic/pydantic/pull/7193) - Document `Base64Str` and `Base64Bytes` by [@Kludex](https://togithub.com/Kludex) in [#7192](https://togithub.com/pydantic/pydantic/pull/7192) - Fix `config.defer_build` for serialization first cases by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7024](https://togithub.com/pydantic/pydantic/pull/7024) - clean Model docstrings in JSON Schema by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7210](https://togithub.com/pydantic/pydantic/pull/7210) - fix [#7228](https://togithub.com/pydantic/pydantic/pull/7228) (typo): docs in `validators.md` to correct `validate_default` kwarg by [@lmmx](https://togithub.com/lmmx) in [#7229](https://togithub.com/pydantic/pydantic/pull/7229) - β Implement `tzinfo.fromutc` method for `TzInfo` in `pydantic-core` by [@lig](https://togithub.com/lig) in [#7019](https://togithub.com/pydantic/pydantic/pull/7019) - Support `__get_validators__` by [@hramezani](https://togithub.com/hramezani) in [#7197](https://togithub.com/pydantic/pydantic/pull/7197) ### [`v2.2.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v221-2023-08-18) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.2.0...v2.2.1) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.2.1) - Make `xfail`ing test for root model extra stop `xfail`ing by [@dmontagu](https://togithub.com/dmontagu) in [#6937](https://togithub.com/pydantic/pydantic/pull/6937) - Optimize recursion detection by stopping on the second visit for the same object by [@mciucu](https://togithub.com/mciucu) in [#7160](https://togithub.com/pydantic/pydantic/pull/7160) - fix link in docs by [@tlambert03](https://togithub.com/tlambert03) in [#7166](https://togithub.com/pydantic/pydantic/pull/7166) - Replace MiMalloc w/ default allocator by [@adriangb](https://togithub.com/adriangb) in [pydantic/pydantic-core#900](https://togithub.com/pydantic/pydantic-core/pull/900) - Bump pydantic-core to 2.6.1 and prepare 2.2.1 release by [@adriangb](https://togithub.com/adriangb) in [#7176](https://togithub.com/pydantic/pydantic/pull/7176) ### [`v2.2.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v220-2023-08-17) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.1.1...v2.2.0) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.2.0) - Split "pipx install" setup command into two commands on the documentation site by [@nomadmtb](https://togithub.com/nomadmtb) in [#6869](https://togithub.com/pydantic/pydantic/pull/6869) - Deprecate `Field.include` by [@hramezani](https://togithub.com/hramezani) in [#6852](https://togithub.com/pydantic/pydantic/pull/6852) - Fix typo in default factory error msg by [@hramezani](https://togithub.com/hramezani) in [#6880](https://togithub.com/pydantic/pydantic/pull/6880) - Simplify handling of typing.Annotated in GenerateSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6887](https://togithub.com/pydantic/pydantic/pull/6887) - Re-enable fastapi tests in CI by [@dmontagu](https://togithub.com/dmontagu) in [#6883](https://togithub.com/pydantic/pydantic/pull/6883) - Make it harder to hit collisions with json schema defrefs by [@dmontagu](https://togithub.com/dmontagu) in [#6566](https://togithub.com/pydantic/pydantic/pull/6566) - Cleaner error for invalid input to `Path` fields by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6903](https://togithub.com/pydantic/pydantic/pull/6903) - :memo: support Coordinate Type by [@yezz123](https://togithub.com/yezz123) in [#6906](https://togithub.com/pydantic/pydantic/pull/6906) - Fix `ForwardRef` wrapper for py 3.10.0 (shim until bpo-45166) by [@randomir](https://togithub.com/randomir) in [#6919](https://togithub.com/pydantic/pydantic/pull/6919) - Fix misbehavior related to copying of RootModel by [@dmontagu](https://togithub.com/dmontagu) in [#6918](https://togithub.com/pydantic/pydantic/pull/6918) - Fix issue with recursion error caused by ParamSpec by [@dmontagu](https://togithub.com/dmontagu) in [#6923](https://togithub.com/pydantic/pydantic/pull/6923) - Add section about Constrained classes to the Migration Guide by [@Kludex](https://togithub.com/Kludex) in [#6924](https://togithub.com/pydantic/pydantic/pull/6924) - Use `main` branch for badge links by [@Viicos](https://togithub.com/Viicos) in [#6925](https://togithub.com/pydantic/pydantic/pull/6925) - Add test for v1/v2 Annotated discrepancy by [@carlbordum](https://togithub.com/carlbordum) in [#6926](https://togithub.com/pydantic/pydantic/pull/6926) - Make the v1 mypy plugin work with both v1 and v2 by [@dmontagu](https://togithub.com/dmontagu) in [#6921](https://togithub.com/pydantic/pydantic/pull/6921) - Fix issue where generic models couldn't be parametrized with BaseModel by [@dmontagu](https://togithub.com/dmontagu) in [#6933](https://togithub.com/pydantic/pydantic/pull/6933) - Remove xfail for discriminated union with alias by [@dmontagu](https://togithub.com/dmontagu) in [#6938](https://togithub.com/pydantic/pydantic/pull/6938) - add field_serializer to computed_field by [@andresliszt](https://togithub.com/andresliszt) in [#6965](https://togithub.com/pydantic/pydantic/pull/6965) - Use union_schema with Type\[Union\[...]] by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#6952](https://togithub.com/pydantic/pydantic/pull/6952) - Fix inherited typeddict attributes / config by [@adriangb](https://togithub.com/adriangb) in [#6981](https://togithub.com/pydantic/pydantic/pull/6981) - fix dataclass annotated before validator called twice by [@davidhewitt](https://togithub.com/davidhewitt) in [#6998](https://togithub.com/pydantic/pydantic/pull/6998) - Update test-fastapi deselected tests by [@hramezani](https://togithub.com/hramezani) in [#7014](https://togithub.com/pydantic/pydantic/pull/7014) - Fix validator doc format by [@hramezani](https://togithub.com/hramezani) in [#7015](https://togithub.com/pydantic/pydantic/pull/7015) - Fix typo in docstring of model_json_schema by [@AdamVinch-Federated](https://togithub.com/AdamVinch-Federated) in [#7032](https://togithub.com/pydantic/pydantic/pull/7032) - remove unused "type ignores" with pyright by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7026](https://togithub.com/pydantic/pydantic/pull/7026) - Add benchmark representing FastAPI startup time by [@adriangb](https://togithub.com/adriangb) in [#7030](https://togithub.com/pydantic/pydantic/pull/7030) - Fix json_encoders for Enum subclasses by [@adriangb](https://togithub.com/adriangb) in [#7029](https://togithub.com/pydantic/pydantic/pull/7029) - Update docstring of `ser_json_bytes` regarding base64 encoding by [@Viicos](https://togithub.com/Viicos) in [#7052](https://togithub.com/pydantic/pydantic/pull/7052) - Allow `@validate_call` to work on async methods by [@adriangb](https://togithub.com/adriangb) in [#7046](https://togithub.com/pydantic/pydantic/pull/7046) - Fix: mypy error with `Settings` and `SettingsConfigDict` by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#7002](https://togithub.com/pydantic/pydantic/pull/7002) - Fix some typos (repeated words and it's/its) by [@eumiro](https://togithub.com/eumiro) in [#7063](https://togithub.com/pydantic/pydantic/pull/7063) - Fix the typo in docstring by [@harunyasar](https://togithub.com/harunyasar) in [#7062](https://togithub.com/pydantic/pydantic/pull/7062) - Docs: Fix broken URL in the pydantic-settings package recommendation by [@swetjen](https://togithub.com/swetjen) in [#6995](https://togithub.com/pydantic/pydantic/pull/6995) - Handle constraints being applied to schemas that don't accept it by [@adriangb](https://togithub.com/adriangb) in [#6951](https://togithub.com/pydantic/pydantic/pull/6951) - Replace almost_equal_floats with math.isclose by [@eumiro](https://togithub.com/eumiro) in [#7082](https://togithub.com/pydantic/pydantic/pull/7082) - bump pydantic-core to 2.5.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#7077](https://togithub.com/pydantic/pydantic/pull/7077) - Add `short_version` and use it in links by [@hramezani](https://togithub.com/hramezani) in [#7115](https://togithub.com/pydantic/pydantic/pull/7115) - π Add usage link to `RootModel` by [@Kludex](https://togithub.com/Kludex) in [#7113](https://togithub.com/pydantic/pydantic/pull/7113) - Revert "Fix default port for mongosrv DSNs ([#6827](https://togithub.com/pydantic/pydantic/issues/6827))" by [@Kludex](https://togithub.com/Kludex) in [#7116](https://togithub.com/pydantic/pydantic/pull/7116) - Clarify validate_default and \_Unset handling in usage docs and migration guide by [@benbenbang](https://togithub.com/benbenbang) in [#6950](https://togithub.com/pydantic/pydantic/pull/6950) - Tweak documentation of `Field.exclude` by [@Viicos](https://togithub.com/Viicos) in [#7086](https://togithub.com/pydantic/pydantic/pull/7086) - Do not require `validate_assignment` to use `Field.frozen` by [@Viicos](https://togithub.com/Viicos) in [#7103](https://togithub.com/pydantic/pydantic/pull/7103) - tweaks to `_core_utils` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7040](https://togithub.com/pydantic/pydantic/pull/7040) - Make DefaultDict working with set by [@hramezani](https://togithub.com/hramezani) in [#7126](https://togithub.com/pydantic/pydantic/pull/7126) - Don't always require typing.Generic as a base for partially parametrized models by [@dmontagu](https://togithub.com/dmontagu) in [#7119](https://togithub.com/pydantic/pydantic/pull/7119) - Fix issue with JSON schema incorrectly using parent class core schema by [@dmontagu](https://togithub.com/dmontagu) in [#7020](https://togithub.com/pydantic/pydantic/pull/7020) - Fix xfailed test related to TypedDict and alias_generator by [@dmontagu](https://togithub.com/dmontagu) in [#6940](https://togithub.com/pydantic/pydantic/pull/6940) - Improve error message for NameEmail by [@dmontagu](https://togithub.com/dmontagu) in [#6939](https://togithub.com/pydantic/pydantic/pull/6939) - Fix generic computed fields by [@dmontagu](https://togithub.com/dmontagu) in [#6988](https://togithub.com/pydantic/pydantic/pull/6988) - Reflect namedtuple default values during validation by [@dmontagu](https://togithub.com/dmontagu) in [#7144](https://togithub.com/pydantic/pydantic/pull/7144) - Update dependencies, fix pydantic-core usage, fix CI issues by [@dmontagu](https://togithub.com/dmontagu) in [#7150](https://togithub.com/pydantic/pydantic/pull/7150) - Add mypy 1.5.0 by [@hramezani](https://togithub.com/hramezani) in [#7118](https://togithub.com/pydantic/pydantic/pull/7118) - Handle non-json native enum values by [@adriangb](https://togithub.com/adriangb) in [#7056](https://togithub.com/pydantic/pydantic/pull/7056) - document `round_trip` in Json type documentation by [@jc-louis](https://togithub.com/jc-louis) in [#7137](https://togithub.com/pydantic/pydantic/pull/7137) - Relax signature checks to better support builtins and C extension functions as validators by [@adriangb](https://togithub.com/adriangb) in [#7101](https://togithub.com/pydantic/pydantic/pull/7101) - add union_mode='left_to_right' by [@davidhewitt](https://togithub.com/davidhewitt) in [#7151](https://togithub.com/pydantic/pydantic/pull/7151) - Include an error message hint for inherited ordering by [@yvalencia91](https://togithub.com/yvalencia91) in [#7124](https://togithub.com/pydantic/pydantic/pull/7124) - Fix one docs link and resolve some warnings for two others by [@dmontagu](https://togithub.com/dmontagu) in [#7153](https://togithub.com/pydantic/pydantic/pull/7153) - Include Field extra keys name in warning by [@hramezani](https://togithub.com/hramezani) in [#7136](https://togithub.com/pydantic/pydantic/pull/7136) ### [`v2.1.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v211-2023-07-25) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.1.0...v2.1.1) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.1.1) - Skip FieldInfo merging when unnecessary by [@dmontagu](https://togithub.com/dmontagu) in [#6862](https://togithub.com/pydantic/pydantic/pull/6862) ### [`v2.1.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v210-2023-07-25) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0.3...v2.1.0) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.1.0) - Add `StringConstraints` for use as Annotated metadata by [@adriangb](https://togithub.com/adriangb) in [#6605](https://togithub.com/pydantic/pydantic/pull/6605) - Try to fix intermittently failing CI by [@adriangb](https://togithub.com/adriangb) in [#6683](https://togithub.com/pydantic/pydantic/pull/6683) - Remove redundant example of optional vs default. by [@ehiggs-deliverect](https://togithub.com/ehiggs-deliverect) in [#6676](https://togithub.com/pydantic/pydantic/pull/6676) - Docs update by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6692](https://togithub.com/pydantic/pydantic/pull/6692) - Remove the Validate always section in validator docs by [@adriangb](https://togithub.com/adriangb) in [#6679](https://togithub.com/pydantic/pydantic/pull/6679) - Fix recursion error in json schema generation by [@adriangb](https://togithub.com/adriangb) in [#6720](https://togithub.com/pydantic/pydantic/pull/6720) - Fix incorrect subclass check for secretstr by [@AlexVndnblcke](https://togithub.com/AlexVndnblcke) in [#6730](https://togithub.com/pydantic/pydantic/pull/6730) - update pdm / pdm lockfile to 2.8.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#6714](https://togithub.com/pydantic/pydantic/pull/6714) - unpin pdm on more CI jobs by [@davidhewitt](https://togithub.com/davidhewitt) in [#6755](https://togithub.com/pydantic/pydantic/pull/6755) - improve source locations for auxiliary packages in docs by [@davidhewitt](https://togithub.com/davidhewitt) in [#6749](https://togithub.com/pydantic/pydantic/pull/6749) - Assume builtins don't accept an info argument by [@adriangb](https://togithub.com/adriangb) in [#6754](https://togithub.com/pydantic/pydantic/pull/6754) - Fix bug where calling `help(BaseModelSubclass)` raises errors by [@hramezani](https://togithub.com/hramezani) in [#6758](https://togithub.com/pydantic/pydantic/pull/6758) - Fix mypy plugin handling of `@model_validator(mode="after")` by [@ljodal](https://togithub.com/ljodal) in [#6753](https://togithub.com/pydantic/pydantic/pull/6753) - update pydantic-core to 2.3.1 by [@davidhewitt](https://togithub.com/davidhewitt) in [#6756](https://togithub.com/pydantic/pydantic/pull/6756) - Mypy plugin for settings by [@hramezani](https://togithub.com/hramezani) in [#6760](https://togithub.com/pydantic/pydantic/pull/6760) - Use `contentSchema` keyword for JSON schema by [@dmontagu](https://togithub.com/dmontagu) in [#6715](https://togithub.com/pydantic/pydantic/pull/6715) - fast-path checking finite decimals by [@davidhewitt](https://togithub.com/davidhewitt) in [#6769](https://togithub.com/pydantic/pydantic/pull/6769) - Docs update by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6771](https://togithub.com/pydantic/pydantic/pull/6771) - Improve json schema doc by [@hramezani](https://togithub.com/hramezani) in [#6772](https://togithub.com/pydantic/pydantic/pull/6772) - Update validator docs by [@adriangb](https://togithub.com/adriangb) in [#6695](https://togithub.com/pydantic/pydantic/pull/6695) - Fix typehint for wrap validator by [@dmontagu](https://togithub.com/dmontagu) in [#6788](https://togithub.com/pydantic/pydantic/pull/6788) - π Fix validation warning for unions of Literal and other type by [@lig](https://togithub.com/lig) in [#6628](https://togithub.com/pydantic/pydantic/pull/6628) - Update documentation for generics support in V2 by [@tpdorsey](https://togithub.com/tpdorsey) in [#6685](https://togithub.com/pydantic/pydantic/pull/6685) - add pydantic-core build info to `version_info()` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6785](https://togithub.com/pydantic/pydantic/pull/6785) - Fix pydantic dataclasses that use slots with default values by [@dmontagu](https://togithub.com/dmontagu) in [#6796](https://togithub.com/pydantic/pydantic/pull/6796) - Fix inheritance of hash function for frozen models by [@dmontagu](https://togithub.com/dmontagu) in [#6789](https://togithub.com/pydantic/pydantic/pull/6789) - β¨ Add `SkipJsonSchema` annotation by [@Kludex](https://togithub.com/Kludex) in [#6653](https://togithub.com/pydantic/pydantic/pull/6653) - Error if an invalid field name is used with Field by [@dmontagu](https://togithub.com/dmontagu) in [#6797](https://togithub.com/pydantic/pydantic/pull/6797) - Add `GenericModel` to `MOVED_IN_V2` by [@adriangb](https://togithub.com/adriangb) in [#6776](https://togithub.com/pydantic/pydantic/pull/6776) - Remove unused code from `docs/usage/types/custom.md` by [@hramezani](https://togithub.com/hramezani) in [#6803](https://togithub.com/pydantic/pydantic/pull/6803) - Fix `float` -> `Decimal` coercion precision loss by [@adriangb](https://togithub.com/adriangb) in [#6810](https://togithub.com/pydantic/pydantic/pull/6810) - remove email validation from the north star benchmark by [@davidhewitt](https://togithub.com/davidhewitt) in [#6816](https://togithub.com/pydantic/pydantic/pull/6816) - Fix link to mypy by [@progsmile](https://togithub.com/progsmile) in [#6824](https://togithub.com/pydantic/pydantic/pull/6824) - Improve initialization hooks example by [@hramezani](https://togithub.com/hramezani) in [#6822](https://togithub.com/pydantic/pydantic/pull/6822) - Fix default port for mongosrv DSNs by [@dmontagu](https://togithub.com/dmontagu) in [#6827](https://togithub.com/pydantic/pydantic/pull/6827) - Improve API documentation, in particular more links between usage and API docs by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6780](https://togithub.com/pydantic/pydantic/pull/6780) - update pydantic-core to 2.4.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#6831](https://togithub.com/pydantic/pydantic/pull/6831) - Fix `annotated_types.MaxLen` validator for custom sequence types by [@ImogenBits](https://togithub.com/ImogenBits) in [#6809](https://togithub.com/pydantic/pydantic/pull/6809) - Update V1 by [@hramezani](https://togithub.com/hramezani) in [#6833](https://togithub.com/pydantic/pydantic/pull/6833) - Make it so callable JSON schema extra works by [@dmontagu](https://togithub.com/dmontagu) in [#6798](https://togithub.com/pydantic/pydantic/pull/6798) - Fix serialization issue with `InstanceOf` by [@dmontagu](https://togithub.com/dmontagu) in [#6829](https://togithub.com/pydantic/pydantic/pull/6829) - Add back support for `json_encoders` by [@adriangb](https://togithub.com/adriangb) in [#6811](https://togithub.com/pydantic/pydantic/pull/6811) - Update field annotations when building the schema by [@dmontagu](https://togithub.com/dmontagu) in [#6838](https://togithub.com/pydantic/pydantic/pull/6838) - Use `WeakValueDictionary` to fix generic memory leak by [@dmontagu](https://togithub.com/dmontagu) in [#6681](https://togithub.com/pydantic/pydantic/pull/6681) - Add `config.defer_build` to optionally make model building lazy by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6823](https://togithub.com/pydantic/pydantic/pull/6823) - delegate `UUID` serialization to pydantic-core by [@davidhewitt](https://togithub.com/davidhewitt) in [#6850](https://togithub.com/pydantic/pydantic/pull/6850) - Update `json_encoders` docs by [@adriangb](https://togithub.com/adriangb) in [#6848](https://togithub.com/pydantic/pydantic/pull/6848) - Fix error message for `staticmethod`/`classmethod` order with validate_call by [@dmontagu](https://togithub.com/dmontagu) in [#6686](https://togithub.com/pydantic/pydantic/pull/6686) - Improve documentation for `Config` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6847](https://togithub.com/pydantic/pydantic/pull/6847) - Update serialization doc to mention `Field.exclude` takes priority over call-time `include/exclude` by [@hramezani](https://togithub.com/hramezani) in [#6851](https://togithub.com/pydantic/pydantic/pull/6851) - Allow customizing core schema generation by making `GenerateSchema` public by [@adriangb](https://togithub.com/adriangb) in [#6737](https://togithub.com/pydantic/pydantic/pull/6737) ### [`v2.0.3`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v203-2023-07-05) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0.2...v2.0.3) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.3) - Mention PyObject (v1) moving to ImportString (v2) in migration doc by [@slafs](https://togithub.com/slafs) in [#6456](https://togithub.com/pydantic/pydantic/pull/6456) - Fix release-tweet CI by [@Kludex](https://togithub.com/Kludex) in [#6461](https://togithub.com/pydantic/pydantic/pull/6461) - Revise the section on required / optional / nullable fields. by [@ybressler](https://togithub.com/ybressler) in [#6468](https://togithub.com/pydantic/pydantic/pull/6468) - Warn if a type hint is not in fact a type by [@adriangb](https://togithub.com/adriangb) in [#6479](https://togithub.com/pydantic/pydantic/pull/6479) - Replace TransformSchema with GetPydanticSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6484](https://togithub.com/pydantic/pydantic/pull/6484) - Fix the un-hashability of various annotation types, for use in caching generic containers by [@dmontagu](https://togithub.com/dmontagu) in [#6480](https://togithub.com/pydantic/pydantic/pull/6480) - PYD-164: Rework custom types docs by [@adriangb](https://togithub.com/adriangb) in [#6490](https://togithub.com/pydantic/pydantic/pull/6490) - Fix ci by [@adriangb](https://togithub.com/adriangb) in [#6507](https://togithub.com/pydantic/pydantic/pull/6507) - Fix forward ref in generic by [@adriangb](https://togithub.com/adriangb) in [#6511](https://togithub.com/pydantic/pydantic/pull/6511) - Fix generation of serialization JSON schemas for core_schema.ChainSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6515](https://togithub.com/pydantic/pydantic/pull/6515) - Document the change in `Field.alias` behavior in Pydantic V2 by [@hramezani](https://togithub.com/hramezani) in [#6508](https://togithub.com/pydantic/pydantic/pull/6508) - Give better error message attempting to compute the json schema of a model with undefined fields by [@dmontagu](https://togithub.com/dmontagu) in [#6519](https://togithub.com/pydantic/pydantic/pull/6519) - Document `alias_priority` by [@tpdorsey](https://togithub.com/tpdorsey) in [#6520](https://togithub.com/pydantic/pydantic/pull/6520) - Add redirect for types documentation by [@tpdorsey](https://togithub.com/tpdorsey) in [#6513](https://togithub.com/pydantic/pydantic/pull/6513) - Allow updating docs without release by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6551](https://togithub.com/pydantic/pydantic/pull/6551) - Ensure docs tests always run in the right folder by [@dmontagu](https://togithub.com/dmontagu) in [#6487](https://togithub.com/pydantic/pydantic/pull/6487) - Defer evaluation of return type hints for serializer functions by [@dmontagu](https://togithub.com/dmontagu) in [#6516](https://togithub.com/pydantic/pydantic/pull/6516) - Disable E501 from Ruff and rely on just Black by [@adriangb](https://togithub.com/adriangb) in [#6552](https://togithub.com/pydantic/pydantic/pull/6552) - Update JSON Schema documentation for V2 by [@tpdorsey](https://togithub.com/tpdorsey) in [#6492](https://togithub.com/pydantic/pydantic/pull/6492) - Add documentation of cyclic reference handling by [@dmontagu](https://togithub.com/dmontagu) in [#6493](https://togithub.com/pydantic/pydantic/pull/6493) - Remove the need for change files by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6556](https://togithub.com/pydantic/pydantic/pull/6556) - add "north star" benchmark by [@davidhewitt](https://togithub.com/davidhewitt) in [#6547](https://togithub.com/pydantic/pydantic/pull/6547) - Update Dataclasses docs by [@tpdorsey](https://togithub.com/tpdorsey) in [#6470](https://togithub.com/pydantic/pydantic/pull/6470) - β»οΈ Use different error message on v1 redirects by [@Kludex](https://togithub.com/Kludex) in [#6595](https://togithub.com/pydantic/pydantic/pull/6595) - β¬ Upgrade `pydantic-core` to v2.2.0 by [@lig](https://togithub.com/lig) in [#6589](https://togithub.com/pydantic/pydantic/pull/6589) - Fix serialization for IPvAny by [@dmontagu](https://togithub.com/dmontagu) in [#6572](https://togithub.com/pydantic/pydantic/pull/6572) - Improve CI by using PDM instead of pip to install typing-extensions by [@adriangb](https://togithub.com/adriangb) in [#6602](https://togithub.com/pydantic/pydantic/pull/6602) - Add `enum` error type docs by [@lig](https://togithub.com/lig) in [#6603](https://togithub.com/pydantic/pydantic/pull/6603) - π Fix `max_length` for unicode strings by [@lig](https://togithub.com/lig) in [#6559](https://togithub.com/pydantic/pydantic/pull/6559) - Add documentation for accessing features via `pydantic.v1` by [@tpdorsey](https://togithub.com/tpdorsey) in [#6604](https://togithub.com/pydantic/pydantic/pull/6604) - Include extra when iterating over a model by [@adriangb](https://togithub.com/adriangb) in [#6562](https://togithub.com/pydantic/pydantic/pull/6562) - Fix typing of model_validator by [@adriangb](https://togithub.com/adriangb) in [#6514](https://togithub.com/pydantic/pydantic/pull/6514) - Touch up Decimal validator by [@adriangb](https://togithub.com/adriangb) in [#6327](https://togithub.com/pydantic/pydantic/pull/6327) - Fix various docstrings using fixed pytest-examples by [@dmontagu](https://togithub.com/dmontagu) in [#6607](https://togithub.com/pydantic/pydantic/pull/6607) - Handle function validators in a discriminated union by [@dmontagu](https://togithub.com/dmontagu) in [#6570](https://togithub.com/pydantic/pydantic/pull/6570) - Review json_schema.md by [@tpdorsey](https://togithub.com/tpdorsey) in [#6608](https://togithub.com/pydantic/pydantic/pull/6608) - Make validate_call work on basemodel methods by [@dmontagu](https://togithub.com/dmontagu) in [#6569](https://togithub.com/pydantic/pydantic/pull/6569) - add test for big int json serde by [@davidhewitt](https://togithub.com/davidhewitt) in [#6614](https://togithub.com/pydantic/pydantic/pull/6614) - Fix pydantic dataclass problem with dataclasses.field default_factory by [@hramezani](https://togithub.com/hramezani) in [#6616](https://togithub.com/pydantic/pydantic/pull/6616) - Fixed mypy type inference for TypeAdapter by [@zakstucke](https://togithub.com/zakstucke) in [#6617](https://togithub.com/pydantic/pydantic/pull/6617) - Make it work to use None as a generic parameter by [@dmontagu](https://togithub.com/dmontagu) in [#6609](https://togithub.com/pydantic/pydantic/pull/6609) - Make it work to use `$ref` as an alias by [@dmontagu](https://togithub.com/dmontagu) in [#6568](https://togithub.com/pydantic/pydantic/pull/6568) - add note to migration guide about changes to `AnyUrl` etc by [@davidhewitt](https://togithub.com/davidhewitt) in [#6618](https://togithub.com/pydantic/pydantic/pull/6618) - π Support defining `json_schema_extra` on `RootModel` using `Field` by [@lig](https://togithub.com/lig) in [#6622](https://togithub.com/pydantic/pydantic/pull/6622) - Update pre-commit to prevent commits to main branch on accident by [@dmontagu](https://togithub.com/dmontagu) in [#6636](https://togithub.com/pydantic/pydantic/pull/6636) - Fix PDM CI for python 3.7 on MacOS/windows by [@dmontagu](https://togithub.com/dmontagu) in [#6627](https://togithub.com/pydantic/pydantic/pull/6627) - Produce more accurate signatures for pydantic dataclasses by [@dmontagu](https://togithub.com/dmontagu) in [#6633](https://togithub.com/pydantic/pydantic/pull/6633) - Updates to Url types for Pydantic V2 by [@tpdorsey](https://togithub.com/tpdorsey) in [#6638](https://togithub.com/pydantic/pydantic/pull/6638) - Fix list markdown in `transform` docstring by [@StefanBRas](https://togithub.com/StefanBRas) in [#6649](https://togithub.com/pydantic/pydantic/pull/6649) - simplify slots_dataclass construction to appease mypy by [@davidhewitt](https://togithub.com/davidhewitt) in [#6639](https://togithub.com/pydantic/pydantic/pull/6639) - Update TypedDict schema generation docstring by [@adriangb](https://togithub.com/adriangb) in [#6651](https://togithub.com/pydantic/pydantic/pull/6651) - Detect and lint-error for prints by [@dmontagu](https://togithub.com/dmontagu) in [#6655](https://togithub.com/pydantic/pydantic/pull/6655) - Add xfailing test for pydantic-core PR 766 by [@dmontagu](https://togithub.com/dmontagu) in [#6641](https://togithub.com/pydantic/pydantic/pull/6641) - Ignore unrecognized fields from dataclasses metadata by [@dmontagu](https://togithub.com/dmontagu) in [#6634](https://togithub.com/pydantic/pydantic/pull/6634) - Make non-existent class getattr a mypy error by [@dmontagu](https://togithub.com/dmontagu) in [#6658](https://togithub.com/pydantic/pydantic/pull/6658) - Update pydantic-core to 2.3.0 by [@hramezani](https://togithub.com/hramezani) in [#6648](https://togithub.com/pydantic/pydantic/pull/6648) - Use OrderedDict from typing_extensions by [@dmontagu](https://togithub.com/dmontagu) in [#6664](https://togithub.com/pydantic/pydantic/pull/6664) - Fix typehint for JSON schema extra callable by [@dmontagu](https://togithub.com/dmontagu) in [#6659](https://togithub.com/pydantic/pydantic/pull/6659) ### [`v2.0.2`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v202-2023-07-05) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0.1...v2.0.2) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.2) - Fix bug where round-trip pickling/unpickling a `RootModel` would change the value of `__dict__`, [#6457](https://togithub.com/pydantic/pydantic/pull/6457) by [@dmontagu](https://togithub.com/dmontagu) - Allow single-item discriminated unions, [#6405](https://togithub.com/pydantic/pydantic/pull/6405) by [@dmontagu](https://togithub.com/dmontagu) - Fix issue with union parsing of enums, [#6440](https://togithub.com/pydantic/pydantic/pull/6440) by [@dmontagu](https://togithub.com/dmontagu) - Docs: Fixed `constr` documentation, renamed old `regex` to new `pattern`, [#6452](https://togithub.com/pydantic/pydantic/pull/6452) by [@miili](https://togithub.com/miili) - Change `GenerateJsonSchema.generate_definitions` signature, [#6436](https://togithub.com/pydantic/pydantic/pull/6436) by [@dmontagu](https://togithub.com/dmontagu) See the full changelog [here](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.2) ### [`v2.0.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v201-2023-07-04) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v2.0...v2.0.1) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.1) First patch release of Pydantic V2 - Extra fields added via `setattr` (i.e. `m.some_extra_field = 'extra_value'`) are added to `.model_extra` if `model_config` `extra='allowed'`. Fixed [#6333](https://togithub.com/pydantic/pydantic/pull/6333), [#6365](https://togithub.com/pydantic/pydantic/pull/6365) by [@aaraney](https://togithub.com/aaraney) - Automatically unpack JSON schema '$ref' for custom types, [#6343](https://togithub.com/pydantic/pydantic/pull/6343) by [@adriangb](https://togithub.com/adriangb) - Fix tagged unions multiple processing in submodels, [#6340](https://togithub.com/pydantic/pydantic/pull/6340) by [@suharnikov](https://togithub.com/suharnikov) See the full changelog [here](https://togithub.com/pydantic/pydantic/releases/tag/v2.0.1) ### [`v2.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v220-2023-08-17) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.10.12...v2.0) [GitHub release](https://togithub.com/pydantic/pydantic/releases/tag/v2.2.0) - Split "pipx install" setup command into two commands on the documentation site by [@nomadmtb](https://togithub.com/nomadmtb) in [#6869](https://togithub.com/pydantic/pydantic/pull/6869) - Deprecate `Field.include` by [@hramezani](https://togithub.com/hramezani) in [#6852](https://togithub.com/pydantic/pydantic/pull/6852) - Fix typo in default factory error msg by [@hramezani](https://togithub.com/hramezani) in [#6880](https://togithub.com/pydantic/pydantic/pull/6880) - Simplify handling of typing.Annotated in GenerateSchema by [@dmontagu](https://togithub.com/dmontagu) in [#6887](https://togithub.com/pydantic/pydantic/pull/6887) - Re-enable fastapi tests in CI by [@dmontagu](https://togithub.com/dmontagu) in [#6883](https://togithub.com/pydantic/pydantic/pull/6883) - Make it harder to hit collisions with json schema defrefs by [@dmontagu](https://togithub.com/dmontagu) in [#6566](https://togithub.com/pydantic/pydantic/pull/6566) - Cleaner error for invalid input to `Path` fields by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#6903](https://togithub.com/pydantic/pydantic/pull/6903) - :memo: support Coordinate Type by [@yezz123](https://togithub.com/yezz123) in [#6906](https://togithub.com/pydantic/pydantic/pull/6906) - Fix `ForwardRef` wrapper for py 3.10.0 (shim until bpo-45166) by [@randomir](https://togithub.com/randomir) in [#6919](https://togithub.com/pydantic/pydantic/pull/6919) - Fix misbehavior related to copying of RootModel by [@dmontagu](https://togithub.com/dmontagu) in [#6918](https://togithub.com/pydantic/pydantic/pull/6918) - Fix issue with recursion error caused by ParamSpec by [@dmontagu](https://togithub.com/dmontagu) in [#6923](https://togithub.com/pydantic/pydantic/pull/6923) - Add section about Constrained classes to the Migration Guide by [@Kludex](https://togithub.com/Kludex) in [#6924](https://togithub.com/pydantic/pydantic/pull/6924) - Use `main` branch for badge links by [@Viicos](https://togithub.com/Viicos) in [#6925](https://togithub.com/pydantic/pydantic/pull/6925) - Add test for v1/v2 Annotated discrepancy by [@carlbordum](https://togithub.com/carlbordum) in [#6926](https://togithub.com/pydantic/pydantic/pull/6926) - Make the v1 mypy plugin work with both v1 and v2 by [@dmontagu](https://togithub.com/dmontagu) in [#6921](https://togithub.com/pydantic/pydantic/pull/6921) - Fix issue where generic models couldn't be parametrized with BaseModel by [@dmontagu](https://togithub.com/dmontagu) in [#6933](https://togithub.com/pydantic/pydantic/pull/6933) - Remove xfail for discriminated union with alias by [@dmontagu](https://togithub.com/dmontagu) in [#6938](https://togithub.com/pydantic/pydantic/pull/6938) - add field_serializer to computed_field by [@andresliszt](https://togithub.com/andresliszt) in [#6965](https://togithub.com/pydantic/pydantic/pull/6965) - Use union_schema with Type\[Union\[...]] by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#6952](https://togithub.com/pydantic/pydantic/pull/6952) - Fix inherited typeddict attributes / config by [@adriangb](https://togithub.com/adriangb) in [#6981](https://togithub.com/pydantic/pydantic/pull/6981) - fix dataclass annotated before validator called twice by [@davidhewitt](https://togithub.com/davidhewitt) in [#6998](https://togithub.com/pydantic/pydantic/pull/6998) - Update test-fastapi deselected tests by [@hramezani](https://togithub.com/hramezani) in [#7014](https://togithub.com/pydantic/pydantic/pull/7014) - Fix validator doc format by [@hramezani](https://togithub.com/hramezani) in [#7015](https://togithub.com/pydantic/pydantic/pull/7015) - Fix typo in docstring of model_json_schema by [@AdamVinch-Federated](https://togithub.com/AdamVinch-Federated) in [#7032](https://togithub.com/pydantic/pydantic/pull/7032) - remove unused "type ignores" with pyright by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7026](https://togithub.com/pydantic/pydantic/pull/7026) - Add benchmark representing FastAPI startup time by [@adriangb](https://togithub.com/adriangb) in [#7030](https://togithub.com/pydantic/pydantic/pull/7030) - Fix json_encoders for Enum subclasses by [@adriangb](https://togithub.com/adriangb) in [#7029](https://togithub.com/pydantic/pydantic/pull/7029) - Update docstring of `ser_json_bytes` regarding base64 encoding by [@Viicos](https://togithub.com/Viicos) in [#7052](https://togithub.com/pydantic/pydantic/pull/7052) - Allow `@validate_call` to work on async methods by [@adriangb](https://togithub.com/adriangb) in [#7046](https://togithub.com/pydantic/pydantic/pull/7046) - Fix: mypy error with `Settings` and `SettingsConfigDict` by [@JeanArhancet](https://togithub.com/JeanArhancet) in [#7002](https://togithub.com/pydantic/pydantic/pull/7002) - Fix some typos (repeated words and it's/its) by [@eumiro](https://togithub.com/eumiro) in [#7063](https://togithub.com/pydantic/pydantic/pull/7063) - Fix the typo in docstring by [@harunyasar](https://togithub.com/harunyasar) in [#7062](https://togithub.com/pydantic/pydantic/pull/7062) - Docs: Fix broken URL in the pydantic-settings package recommendation by [@swetjen](https://togithub.com/swetjen) in [#6995](https://togithub.com/pydantic/pydantic/pull/6995) - Handle constraints being applied to schemas that don't accept it by [@adriangb](https://togithub.com/adriangb) in [#6951](https://togithub.com/pydantic/pydantic/pull/6951) - Replace almost_equal_floats with math.isclose by [@eumiro](https://togithub.com/eumiro) in [#7082](https://togithub.com/pydantic/pydantic/pull/7082) - bump pydantic-core to 2.5.0 by [@davidhewitt](https://togithub.com/davidhewitt) in [#7077](https://togithub.com/pydantic/pydantic/pull/7077) - Add `short_version` and use it in links by [@hramezani](https://togithub.com/hramezani) in [#7115](https://togithub.com/pydantic/pydantic/pull/7115) - π Add usage link to `RootModel` by [@Kludex](https://togithub.com/Kludex) in [#7113](https://togithub.com/pydantic/pydantic/pull/7113) - Revert "Fix default port for mongosrv DSNs ([#6827](https://togithub.com/pydantic/pydantic/issues/6827))" by [@Kludex](https://togithub.com/Kludex) in [#7116](https://togithub.com/pydantic/pydantic/pull/7116) - Clarify validate_default and \_Unset handling in usage docs and migration guide by [@benbenbang](https://togithub.com/benbenbang) in [#6950](https://togithub.com/pydantic/pydantic/pull/6950) - Tweak documentation of `Field.exclude` by [@Viicos](https://togithub.com/Viicos) in [#7086](https://togithub.com/pydantic/pydantic/pull/7086) - Do not require `validate_assignment` to use `Field.frozen` by [@Viicos](https://togithub.com/Viicos) in [#7103](https://togithub.com/pydantic/pydantic/pull/7103) - tweaks to `_core_utils` by [@samuelcolvin](https://togithub.com/samuelcolvin) in [#7040](https://togithub.com/pydantic/pydantic/pull/7040) - Make DefaultDict working with set by [@hramezani](https://togithub.com/hramezani) in [#7126](https://togithub.com/pydantic/pydantic/pull/7126) - Don't always require typing.Generic as a base for partially parametrized models by [@dmontagu](https://togithub.com/dmontagu) in [#7119](https://togithub.com/pydantic/pydantic/pull/7119) - Fix issue with JSON schema incorrectly using parent class core schema by [@dmontagu](https://togithub.com/dmontagu) in [#7020](https://togithub.com/pydantic/pydantic/pull/7020) - Fix xfailed test related to TypedDict and alias_generator by [@dmontagu](https://togithub.com/dmontagu) in [#6940](https://togithub.com/pydantic/pydantic/pull/6940) - Improve error message for NameEmail by [@dmontagu](https://togithub.com/dmontagu) in [#6939](https://togithub.com/pydantic/pydantic/pull/6939) - Fix generic computed fields by [@dmontagu](https://togithub.com/dmontagu) in [#6988](https://togithub.com/pydantic/pydantic/pull/6988) - Reflect namedtuple default values during validation by [@dmontagu](https://togithub.com/dmontagu) in [#7144](https://togithub.com/pydantic/pydantic/pull/7144) - Update dependencies, fix pydantic-core usage, fix CI issues by [@dmontagu](https://togithub.com/dmontagu) in [#7150](https://togithub.com/pydantic/pydantic/pull/7150) - Add mypy 1.5.0 by [@hramezani](https://togithub.com/hramezani) in [#7118](https://togithub.com/pydantic/pydantic/pull/7118) - Handle non-json native enum values by [@adriangb](https://togithub.com/adriangb) in [#7056](https://togithub.com/pydantic/pydantic/pull/7056) - document `round_trip` in Json type documentation by [@jc-louis](https://togithub.com/jc-louis) in [#7137](https://togithub.com/pydantic/pydantic/pull/7137) - Relax signature checks to better support builtins and C extension functions as validators by [@adriangb](https://togithub.com/adriangb) in [#7101](https://togithub.com/pydantic/pydantic/pull/7101) - add union_mode='left_to_right' by [@davidhewitt](https://togithub.com/davidhewitt) in [#7151](https://togithub.com/pydantic/pydantic/pull/7151) - Include an error message hint for inherited ordering by [@yvalencia91](https://togithub.com/yvalencia91) in [#7124](https://togithub.com/pydantic/pydantic/pull/7124) - Fix one docs link and resolve some warnings for two others by [@dmontagu](https://togithub.com/dmontagu) in [#7153](https://togithub.com/pydantic/pydantic/pull/7153) - Include Field extra keys name in warning by [@hramezani](https://togithub.com/hramezani) in [#7136](https://togithub.com/pydantic/pydantic/pull/7136)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.
This PR has been generated by Mend Renovate. View repository job log here.