JohannesBuchner/imagehash
### [`v4.3.0`](https://togithub.com/JohannesBuchner/imagehash/compare/v4.2.1...v4.3.0)
[Compare Source](https://togithub.com/JohannesBuchner/imagehash/compare/v4.2.1...v4.3.0)
arrow-py/arrow
### [`v1.2.3`](https://togithub.com/arrow-py/arrow/blob/HEAD/CHANGELOG.rst#123-2022-06-25)
[Compare Source](https://togithub.com/arrow-py/arrow/compare/1.2.2...1.2.3)
- \[NEW] Added Amharic, Armenian, Georgian, Laotian and Uzbek locales.
- \[FIX] Updated Danish locale and associated tests.
- \[INTERNAl] Small fixes to CI.
carpedm20/emoji
### [`v2.1.0`](https://togithub.com/carpedm20/emoji/blob/HEAD/CHANGES.md#210)
[Compare Source](https://togithub.com/carpedm20/emoji/compare/v2.0.0...v2.1.0)
- Added Farsi support
- Added Trove classifiers for Python 3.10 and 3.11
pydantic/pydantic
### [`v1.10.2`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v1102-2022-09-05)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.10.1...v1.10.2)
- **Revert Change:** Revert percent encoding of URL parts which was originally added in [#4224](https://togithub.com/pydantic/pydantic/issues/4224), [#4470](https://togithub.com/pydantic/pydantic/issues/4470) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- Prevent long (length > `4_300`) strings/bytes as input to int fields, see
[python/cpython#95778](https://togithub.com/python/cpython/issues/95778) and
[CVE-2020-10735](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10735), [#1477](https://togithub.com/pydantic/pydantic/issues/1477) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- fix: dataclass wrapper was not always called, [#4477](https://togithub.com/pydantic/pydantic/issues/4477) by [@PrettyWood](https://togithub.com/PrettyWood)
- Use `tomllib` on Python 3.11 when parsing `mypy` configuration, [#4476](https://togithub.com/pydantic/pydantic/issues/4476) by [@hauntsaninja](https://togithub.com/hauntsaninja)
- Basic fix of `GenericModel` cache to detect order of arguments in `Union` models, [#4474](https://togithub.com/pydantic/pydantic/issues/4474) by [@sveinugu](https://togithub.com/sveinugu)
- Fix mypy plugin when using bare types like `list` and `dict` as `default_factory`, [#4457](https://togithub.com/pydantic/pydantic/issues/4457) by [@samuelcolvin](https://togithub.com/samuelcolvin)
### [`v1.10.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v1101-2022-08-31)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.10.0...v1.10.1)
- Add `__hash__` method to `pydancic.color.Color` class, [#4454](https://togithub.com/pydantic/pydantic/issues/4454) by [@czaki](https://togithub.com/czaki)
### [`v1.10.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v1100-2022-08-30)
[Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.9.2...v1.10.0)
- Refactor the whole *pydantic* `dataclass` decorator to really act like its standard lib equivalent.
It hence keeps `__eq__`, `__hash__`, ... and makes comparison with its non-validated version possible.
It also fixes usage of `frozen` dataclasses in fields and usage of `default_factory` in nested dataclasses.
The support of `Config.extra` has been added.
Finally, config customization directly via a `dict` is now possible, [#2557](https://togithub.com/pydantic/pydantic/issues/2557) by [@PrettyWood](https://togithub.com/PrettyWood)
**BREAKING CHANGES:**
- The `compiled` boolean (whether *pydantic* is compiled with cython) has been moved from `main.py` to `version.py`
- Now that `Config.extra` is supported, `dataclass` ignores by default extra arguments (like `BaseModel`)
- Fix PEP487 `__set_name__` protocol in `BaseModel` for PrivateAttrs, [#4407](https://togithub.com/pydantic/pydantic/issues/4407) by [@tlambert03](https://togithub.com/tlambert03)
- Allow for custom parsing of environment variables via `parse_env_var` in `Config`, [#4406](https://togithub.com/pydantic/pydantic/issues/4406) by [@acmiyaguchi](https://togithub.com/acmiyaguchi)
- Rename `master` to `main`, [#4405](https://togithub.com/pydantic/pydantic/issues/4405) by [@hramezani](https://togithub.com/hramezani)
- Fix `StrictStr` does not raise `ValidationError` when `max_length` is present in `Field`, [#4388](https://togithub.com/pydantic/pydantic/issues/4388) by [@hramezani](https://togithub.com/hramezani)
- Make `SecretStr` and `SecretBytes` hashable, [#4387](https://togithub.com/pydantic/pydantic/issues/4387) by [@chbndrhnns](https://togithub.com/chbndrhnns)
- Fix `StrictBytes` does not raise `ValidationError` when `max_length` is present in `Field`, [#4380](https://togithub.com/pydantic/pydantic/issues/4380) by [@JeanArhancet](https://togithub.com/JeanArhancet)
- Add support for bare `type`, [#4375](https://togithub.com/pydantic/pydantic/issues/4375) by [@hramezani](https://togithub.com/hramezani)
- Support Python 3.11, including binaries for 3.11 in PyPI, [#4374](https://togithub.com/pydantic/pydantic/issues/4374) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- Add support for `re.Pattern`, [#4366](https://togithub.com/pydantic/pydantic/issues/4366) by [@hramezani](https://togithub.com/hramezani)
- Fix `__post_init_post_parse__` is incorrectly passed keyword arguments when no `__post_init__` is defined, [#4361](https://togithub.com/pydantic/pydantic/issues/4361) by [@hramezani](https://togithub.com/hramezani)
- Fix implicitly importing `ForwardRef` and `Callable` from `pydantic.typing` instead of `typing` and also expose `MappingIntStrAny`, [#4358](https://togithub.com/pydantic/pydantic/issues/4358) by [@aminalaee](https://togithub.com/aminalaee)
- remove `Any` types from the `dataclass` decorator so it can be used with the `disallow_any_expr` mypy option, [#4356](https://togithub.com/pydantic/pydantic/issues/4356) by [@DetachHead](https://togithub.com/DetachHead)
- moved repo to `pydantic/pydantic`, [#4348](https://togithub.com/pydantic/pydantic/issues/4348) by [@yezz123](https://togithub.com/yezz123)
- fix "extra fields not permitted" error when dataclass with `Extra.forbid` is validated multiple times, [#4343](https://togithub.com/pydantic/pydantic/issues/4343) by [@detachhead](https://togithub.com/detachhead)
- Add Python 3.9 and 3.10 examples to docs, [#4339](https://togithub.com/pydantic/pydantic/issues/4339) by [@Bobronium](https://togithub.com/Bobronium)
- Discriminated union models now use `oneOf` instead of `anyOf` when generating OpenAPI schema definitions, [#4335](https://togithub.com/pydantic/pydantic/issues/4335) by [@MaxwellPayne](https://togithub.com/MaxwellPayne)
- Allow type checkers to infer inner type of `Json` type. `Json[list[str]]` will be now inferred as `list[str]`,
`Json[Any]` should be used instead of plain `Json`.
Runtime behaviour is not changed, [#4332](https://togithub.com/pydantic/pydantic/issues/4332) by [@Bobronium](https://togithub.com/Bobronium)
- Allow empty string aliases by using a `alias is not None` check, rather than `bool(alias)`, [#4253](https://togithub.com/pydantic/pydantic/issues/4253) by [@sergeytsaplin](https://togithub.com/sergeytsaplin)
- Update `ForwardRef`s in `Field.outer_type_`, [#4249](https://togithub.com/pydantic/pydantic/issues/4249) by [@JacobHayes](https://togithub.com/JacobHayes)
- The use of `__dataclass_transform__` has been replaced by `typing_extensions.dataclass_transform`, which is the preferred way to mark pydantic models as a dataclass under [PEP 681](https://peps.python.org/pep-0681/), [#4241](https://togithub.com/pydantic/pydantic/issues/4241) by [@multimeric](https://togithub.com/multimeric)
- Use parent model's `Config` when validating nested `NamedTuple` fields, [#4219](https://togithub.com/pydantic/pydantic/issues/4219) by [@synek](https://togithub.com/synek)
- Update `BaseModel.construct` to work with aliased Fields, [#4192](https://togithub.com/pydantic/pydantic/issues/4192) by [@kylebamos](https://togithub.com/kylebamos)
- Catch certain raised errors in `smart_deepcopy` and revert to `deepcopy` if so, [#4184](https://togithub.com/pydantic/pydantic/issues/4184) by [@coneybeare](https://togithub.com/coneybeare)
- Add `Config.anystr_upper` and `to_upper` kwarg to constr and conbytes, [#4165](https://togithub.com/pydantic/pydantic/issues/4165) by [@satheler](https://togithub.com/satheler)
- Fix JSON schema for `set` and `frozenset` when they include default values, [#4155](https://togithub.com/pydantic/pydantic/issues/4155) by [@aminalaee](https://togithub.com/aminalaee)
- Teach the mypy plugin that methods decorated by `@validator` are classmethods, [#4102](https://togithub.com/pydantic/pydantic/issues/4102) by [@DMRobertson](https://togithub.com/DMRobertson)
- Improve mypy plugin's ability to detect required fields, [#4086](https://togithub.com/pydantic/pydantic/issues/4086) by [@richardxia](https://togithub.com/richardxia)
- Support fields of type `Type[]` in schema, [#4051](https://togithub.com/pydantic/pydantic/issues/4051) by [@aminalaee](https://togithub.com/aminalaee)
- Add `default` value in JSON Schema when `const=True`, [#4031](https://togithub.com/pydantic/pydantic/issues/4031) by [@aminalaee](https://togithub.com/aminalaee)
- Adds reserved word check to signature generation logic, [#4011](https://togithub.com/pydantic/pydantic/issues/4011) by [@strue36](https://togithub.com/strue36)
- Fix Json strategy failure for the complex nested field, [#4005](https://togithub.com/pydantic/pydantic/issues/4005) by [@sergiosim](https://togithub.com/sergiosim)
- Add JSON-compatible float constraint `allow_inf_nan`, [#3994](https://togithub.com/pydantic/pydantic/issues/3994) by [@tiangolo](https://togithub.com/tiangolo)
- Remove undefined behaviour when `env_prefix` had characters in common with `env_nested_delimiter`, [#3975](https://togithub.com/pydantic/pydantic/issues/3975) by [@arsenron](https://togithub.com/arsenron)
- Support generics model with `create_model`, [#3945](https://togithub.com/pydantic/pydantic/issues/3945) by [@hot123s](https://togithub.com/hot123s)
- allow submodels to overwrite extra field info, [#3934](https://togithub.com/pydantic/pydantic/issues/3934) by [@PrettyWood](https://togithub.com/PrettyWood)
- Document and test structural pattern matching ([PEP 636](https://peps.python.org/pep-0636/)) on `BaseModel`, [#3920](https://togithub.com/pydantic/pydantic/issues/3920) by [@irgolic](https://togithub.com/irgolic)
- Fix incorrect deserialization of python timedelta object to ISO 8601 for negative time deltas.
Minus was serialized in incorrect place ("P-1DT23H59M59.888735S" instead of correct "-P1DT23H59M59.888735S"), [#3899](https://togithub.com/pydantic/pydantic/issues/3899) by [@07pepa](https://togithub.com/07pepa)
- Fix validation of discriminated union fields with an alias when passing a model instance, [#3846](https://togithub.com/pydantic/pydantic/issues/3846) by [@chornsby](https://togithub.com/chornsby)
- Add a CockroachDsn type to validate CockroachDB connection strings. The type
supports the following schemes: `cockroachdb`, `cockroachdb+psycopg2` and `cockroachdb+asyncpg`, [#3839](https://togithub.com/pydantic/pydantic/issues/3839) by [@blubber](https://togithub.com/blubber)
- Fix MyPy plugin to not override pre-existing `__init__` method in models, [#3824](https://togithub.com/pydantic/pydantic/issues/3824) by [@patrick91](https://togithub.com/patrick91)
- Fix mypy version checking, [#3783](https://togithub.com/pydantic/pydantic/issues/3783) by [@KotlinIsland](https://togithub.com/KotlinIsland)
- support overwriting dunder attributes of `BaseModel` instances, [#3777](https://togithub.com/pydantic/pydantic/issues/3777) by [@PrettyWood](https://togithub.com/PrettyWood)
- Added `ConstrainedDate` and `condate`, [#3740](https://togithub.com/pydantic/pydantic/issues/3740) by [@hottwaj](https://togithub.com/hottwaj)
- Support `kw_only` in dataclasses, [#3670](https://togithub.com/pydantic/pydantic/issues/3670) by [@detachhead](https://togithub.com/detachhead)
- Add comparison method for `Color` class, [#3646](https://togithub.com/pydantic/pydantic/issues/3646) by [@aminalaee](https://togithub.com/aminalaee)
- Drop support for python3.6, associated cleanup, [#3605](https://togithub.com/pydantic/pydantic/issues/3605) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- created new function `to_lower_camel()` for "non pascal case" camel case, [#3463](https://togithub.com/pydantic/pydantic/issues/3463) by [@schlerp](https://togithub.com/schlerp)
- Add checks to `default` and `default_factory` arguments in Mypy plugin, [#3430](https://togithub.com/pydantic/pydantic/issues/3430) by [@klaa97](https://togithub.com/klaa97)
- fix mangling of `inspect.signature` for `BaseModel`, [#3413](https://togithub.com/pydantic/pydantic/issues/3413) by [@fix-inspect-signature](https://togithub.com/fix-inspect-signature)
- Adds the `SecretField` abstract class so that all the current and future secret fields like `SecretStr` and `SecretBytes` will derive from it, [#3409](https://togithub.com/pydantic/pydantic/issues/3409) by [@expobrain](https://togithub.com/expobrain)
- Support multi hosts validation in `PostgresDsn`, [#3337](https://togithub.com/pydantic/pydantic/issues/3337) by [@rglsk](https://togithub.com/rglsk)
- Fix parsing of very small numeric timedelta values, [#3315](https://togithub.com/pydantic/pydantic/issues/3315) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- Update `SecretsSettingsSource` to respect `config.case_sensitive`, [#3273](https://togithub.com/pydantic/pydantic/issues/3273) by [@JeanArhancet](https://togithub.com/JeanArhancet)
- Add MongoDB network data source name (DSN) schema, [#3229](https://togithub.com/pydantic/pydantic/issues/3229) by [@snosratiershad](https://togithub.com/snosratiershad)
- Add support for multiple dotenv files, [#3222](https://togithub.com/pydantic/pydantic/issues/3222) by [@rekyungmin](https://togithub.com/rekyungmin)
- Raise an explicit `ConfigError` when multiple fields are incorrectly set for a single validator, [#3215](https://togithub.com/pydantic/pydantic/issues/3215) by [@SunsetOrange](https://togithub.com/SunsetOrange)
- Allow ellipsis on `Field`s inside `Annotated` for `TypedDicts` required, [#3133](https://togithub.com/pydantic/pydantic/issues/3133) by [@ezegomez](https://togithub.com/ezegomez)
- Catch overflow errors in `int_validator`, [#3112](https://togithub.com/pydantic/pydantic/issues/3112) by [@ojii](https://togithub.com/ojii)
- Adds a `__rich_repr__` method to `Representation` class which enables pretty printing with [Rich](https://togithub.com/willmcgugan/rich), [#3099](https://togithub.com/pydantic/pydantic/issues/3099) by [@willmcgugan](https://togithub.com/willmcgugan)
- Add percent encoding in `AnyUrl` and descendent types, [#3061](https://togithub.com/pydantic/pydantic/issues/3061) by [@FaresAhmedb](https://togithub.com/FaresAhmedb)
- `validate_arguments` decorator now supports `alias`, [#3019](https://togithub.com/pydantic/pydantic/issues/3019) by [@MAD-py](https://togithub.com/MAD-py)
- Avoid `__dict__` and `__weakref__` attributes in `AnyUrl` and IP address fields, [#2890](https://togithub.com/pydantic/pydantic/issues/2890) by [@nuno-andre](https://togithub.com/nuno-andre)
- Add ability to use `Final` in a field type annotation, [#2766](https://togithub.com/pydantic/pydantic/issues/2766) by [@uriyyo](https://togithub.com/uriyyo)
- Update requirement to `typing_extensions>=4.1.0` to guarantee `dataclass_transform` is available, [#4424](https://togithub.com/pydantic/pydantic/issues/4424) by [@commonism](https://togithub.com/commonism)
- Add Explosion and AWS to main sponsors, [#4413](https://togithub.com/pydantic/pydantic/issues/4413) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- Update documentation for `copy_on_model_validation` to reflect recent changes, [#4369](https://togithub.com/pydantic/pydantic/issues/4369) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- Runtime warning if `__slots__` is passed to `create_model`, `__slots__` is then ignored, [#4432](https://togithub.com/pydantic/pydantic/issues/4432) by [@samuelcolvin](https://togithub.com/samuelcolvin)
- Add type hints to `BaseSettings.Config` to avoid mypy errors, also correct mypy version compatibility notice in docs, [#4450](https://togithub.com/pydantic/pydantic/issues/4450) by [@samuelcolvin](https://togithub.com/samuelcolvin)
Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
^4.2.1
->^4.3.0
~=4.2.1
->~=4.3.0
^1.2.2
->^1.2.3
~=1.2.2
->~=1.2.3
^2.0.0
->^2.1.0
~=2.0.0
->~=2.1.0
^1.9.2
->^1.10.2
~=1.9.2
->~=1.10.2
Release Notes
JohannesBuchner/imagehash
### [`v4.3.0`](https://togithub.com/JohannesBuchner/imagehash/compare/v4.2.1...v4.3.0) [Compare Source](https://togithub.com/JohannesBuchner/imagehash/compare/v4.2.1...v4.3.0)arrow-py/arrow
### [`v1.2.3`](https://togithub.com/arrow-py/arrow/blob/HEAD/CHANGELOG.rst#123-2022-06-25) [Compare Source](https://togithub.com/arrow-py/arrow/compare/1.2.2...1.2.3) - \[NEW] Added Amharic, Armenian, Georgian, Laotian and Uzbek locales. - \[FIX] Updated Danish locale and associated tests. - \[INTERNAl] Small fixes to CI.carpedm20/emoji
### [`v2.1.0`](https://togithub.com/carpedm20/emoji/blob/HEAD/CHANGES.md#210) [Compare Source](https://togithub.com/carpedm20/emoji/compare/v2.0.0...v2.1.0) - Added Farsi support - Added Trove classifiers for Python 3.10 and 3.11pydantic/pydantic
### [`v1.10.2`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v1102-2022-09-05) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.10.1...v1.10.2) - **Revert Change:** Revert percent encoding of URL parts which was originally added in [#4224](https://togithub.com/pydantic/pydantic/issues/4224), [#4470](https://togithub.com/pydantic/pydantic/issues/4470) by [@samuelcolvin](https://togithub.com/samuelcolvin) - Prevent long (length > `4_300`) strings/bytes as input to int fields, see [python/cpython#95778](https://togithub.com/python/cpython/issues/95778) and [CVE-2020-10735](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10735), [#1477](https://togithub.com/pydantic/pydantic/issues/1477) by [@samuelcolvin](https://togithub.com/samuelcolvin) - fix: dataclass wrapper was not always called, [#4477](https://togithub.com/pydantic/pydantic/issues/4477) by [@PrettyWood](https://togithub.com/PrettyWood) - Use `tomllib` on Python 3.11 when parsing `mypy` configuration, [#4476](https://togithub.com/pydantic/pydantic/issues/4476) by [@hauntsaninja](https://togithub.com/hauntsaninja) - Basic fix of `GenericModel` cache to detect order of arguments in `Union` models, [#4474](https://togithub.com/pydantic/pydantic/issues/4474) by [@sveinugu](https://togithub.com/sveinugu) - Fix mypy plugin when using bare types like `list` and `dict` as `default_factory`, [#4457](https://togithub.com/pydantic/pydantic/issues/4457) by [@samuelcolvin](https://togithub.com/samuelcolvin) ### [`v1.10.1`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v1101-2022-08-31) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.10.0...v1.10.1) - Add `__hash__` method to `pydancic.color.Color` class, [#4454](https://togithub.com/pydantic/pydantic/issues/4454) by [@czaki](https://togithub.com/czaki) ### [`v1.10.0`](https://togithub.com/pydantic/pydantic/blob/HEAD/HISTORY.md#v1100-2022-08-30) [Compare Source](https://togithub.com/pydantic/pydantic/compare/v1.9.2...v1.10.0) - Refactor the whole *pydantic* `dataclass` decorator to really act like its standard lib equivalent. It hence keeps `__eq__`, `__hash__`, ... and makes comparison with its non-validated version possible. It also fixes usage of `frozen` dataclasses in fields and usage of `default_factory` in nested dataclasses. The support of `Config.extra` has been added. Finally, config customization directly via a `dict` is now possible, [#2557](https://togithub.com/pydantic/pydantic/issues/2557) by [@PrettyWood](https://togithub.com/PrettyWood)**BREAKING CHANGES:** - The `compiled` boolean (whether *pydantic* is compiled with cython) has been moved from `main.py` to `version.py` - Now that `Config.extra` is supported, `dataclass` ignores by default extra arguments (like `BaseModel`) - Fix PEP487 `__set_name__` protocol in `BaseModel` for PrivateAttrs, [#4407](https://togithub.com/pydantic/pydantic/issues/4407) by [@tlambert03](https://togithub.com/tlambert03) - Allow for custom parsing of environment variables via `parse_env_var` in `Config`, [#4406](https://togithub.com/pydantic/pydantic/issues/4406) by [@acmiyaguchi](https://togithub.com/acmiyaguchi) - Rename `master` to `main`, [#4405](https://togithub.com/pydantic/pydantic/issues/4405) by [@hramezani](https://togithub.com/hramezani) - Fix `StrictStr` does not raise `ValidationError` when `max_length` is present in `Field`, [#4388](https://togithub.com/pydantic/pydantic/issues/4388) by [@hramezani](https://togithub.com/hramezani) - Make `SecretStr` and `SecretBytes` hashable, [#4387](https://togithub.com/pydantic/pydantic/issues/4387) by [@chbndrhnns](https://togithub.com/chbndrhnns) - Fix `StrictBytes` does not raise `ValidationError` when `max_length` is present in `Field`, [#4380](https://togithub.com/pydantic/pydantic/issues/4380) by [@JeanArhancet](https://togithub.com/JeanArhancet) - Add support for bare `type`, [#4375](https://togithub.com/pydantic/pydantic/issues/4375) by [@hramezani](https://togithub.com/hramezani) - Support Python 3.11, including binaries for 3.11 in PyPI, [#4374](https://togithub.com/pydantic/pydantic/issues/4374) by [@samuelcolvin](https://togithub.com/samuelcolvin) - Add support for `re.Pattern`, [#4366](https://togithub.com/pydantic/pydantic/issues/4366) by [@hramezani](https://togithub.com/hramezani) - Fix `__post_init_post_parse__` is incorrectly passed keyword arguments when no `__post_init__` is defined, [#4361](https://togithub.com/pydantic/pydantic/issues/4361) by [@hramezani](https://togithub.com/hramezani) - Fix implicitly importing `ForwardRef` and `Callable` from `pydantic.typing` instead of `typing` and also expose `MappingIntStrAny`, [#4358](https://togithub.com/pydantic/pydantic/issues/4358) by [@aminalaee](https://togithub.com/aminalaee) - remove `Any` types from the `dataclass` decorator so it can be used with the `disallow_any_expr` mypy option, [#4356](https://togithub.com/pydantic/pydantic/issues/4356) by [@DetachHead](https://togithub.com/DetachHead) - moved repo to `pydantic/pydantic`, [#4348](https://togithub.com/pydantic/pydantic/issues/4348) by [@yezz123](https://togithub.com/yezz123) - fix "extra fields not permitted" error when dataclass with `Extra.forbid` is validated multiple times, [#4343](https://togithub.com/pydantic/pydantic/issues/4343) by [@detachhead](https://togithub.com/detachhead) - Add Python 3.9 and 3.10 examples to docs, [#4339](https://togithub.com/pydantic/pydantic/issues/4339) by [@Bobronium](https://togithub.com/Bobronium) - Discriminated union models now use `oneOf` instead of `anyOf` when generating OpenAPI schema definitions, [#4335](https://togithub.com/pydantic/pydantic/issues/4335) by [@MaxwellPayne](https://togithub.com/MaxwellPayne) - Allow type checkers to infer inner type of `Json` type. `Json[list[str]]` will be now inferred as `list[str]`, `Json[Any]` should be used instead of plain `Json`. Runtime behaviour is not changed, [#4332](https://togithub.com/pydantic/pydantic/issues/4332) by [@Bobronium](https://togithub.com/Bobronium) - Allow empty string aliases by using a `alias is not None` check, rather than `bool(alias)`, [#4253](https://togithub.com/pydantic/pydantic/issues/4253) by [@sergeytsaplin](https://togithub.com/sergeytsaplin) - Update `ForwardRef`s in `Field.outer_type_`, [#4249](https://togithub.com/pydantic/pydantic/issues/4249) by [@JacobHayes](https://togithub.com/JacobHayes) - The use of `__dataclass_transform__` has been replaced by `typing_extensions.dataclass_transform`, which is the preferred way to mark pydantic models as a dataclass under [PEP 681](https://peps.python.org/pep-0681/), [#4241](https://togithub.com/pydantic/pydantic/issues/4241) by [@multimeric](https://togithub.com/multimeric) - Use parent model's `Config` when validating nested `NamedTuple` fields, [#4219](https://togithub.com/pydantic/pydantic/issues/4219) by [@synek](https://togithub.com/synek) - Update `BaseModel.construct` to work with aliased Fields, [#4192](https://togithub.com/pydantic/pydantic/issues/4192) by [@kylebamos](https://togithub.com/kylebamos) - Catch certain raised errors in `smart_deepcopy` and revert to `deepcopy` if so, [#4184](https://togithub.com/pydantic/pydantic/issues/4184) by [@coneybeare](https://togithub.com/coneybeare) - Add `Config.anystr_upper` and `to_upper` kwarg to constr and conbytes, [#4165](https://togithub.com/pydantic/pydantic/issues/4165) by [@satheler](https://togithub.com/satheler) - Fix JSON schema for `set` and `frozenset` when they include default values, [#4155](https://togithub.com/pydantic/pydantic/issues/4155) by [@aminalaee](https://togithub.com/aminalaee) - Teach the mypy plugin that methods decorated by `@validator` are classmethods, [#4102](https://togithub.com/pydantic/pydantic/issues/4102) by [@DMRobertson](https://togithub.com/DMRobertson) - Improve mypy plugin's ability to detect required fields, [#4086](https://togithub.com/pydantic/pydantic/issues/4086) by [@richardxia](https://togithub.com/richardxia) - Support fields of type `Type[]` in schema, [#4051](https://togithub.com/pydantic/pydantic/issues/4051) by [@aminalaee](https://togithub.com/aminalaee) - Add `default` value in JSON Schema when `const=True`, [#4031](https://togithub.com/pydantic/pydantic/issues/4031) by [@aminalaee](https://togithub.com/aminalaee) - Adds reserved word check to signature generation logic, [#4011](https://togithub.com/pydantic/pydantic/issues/4011) by [@strue36](https://togithub.com/strue36) - Fix Json strategy failure for the complex nested field, [#4005](https://togithub.com/pydantic/pydantic/issues/4005) by [@sergiosim](https://togithub.com/sergiosim) - Add JSON-compatible float constraint `allow_inf_nan`, [#3994](https://togithub.com/pydantic/pydantic/issues/3994) by [@tiangolo](https://togithub.com/tiangolo) - Remove undefined behaviour when `env_prefix` had characters in common with `env_nested_delimiter`, [#3975](https://togithub.com/pydantic/pydantic/issues/3975) by [@arsenron](https://togithub.com/arsenron) - Support generics model with `create_model`, [#3945](https://togithub.com/pydantic/pydantic/issues/3945) by [@hot123s](https://togithub.com/hot123s) - allow submodels to overwrite extra field info, [#3934](https://togithub.com/pydantic/pydantic/issues/3934) by [@PrettyWood](https://togithub.com/PrettyWood) - Document and test structural pattern matching ([PEP 636](https://peps.python.org/pep-0636/)) on `BaseModel`, [#3920](https://togithub.com/pydantic/pydantic/issues/3920) by [@irgolic](https://togithub.com/irgolic) - Fix incorrect deserialization of python timedelta object to ISO 8601 for negative time deltas. Minus was serialized in incorrect place ("P-1DT23H59M59.888735S" instead of correct "-P1DT23H59M59.888735S"), [#3899](https://togithub.com/pydantic/pydantic/issues/3899) by [@07pepa](https://togithub.com/07pepa) - Fix validation of discriminated union fields with an alias when passing a model instance, [#3846](https://togithub.com/pydantic/pydantic/issues/3846) by [@chornsby](https://togithub.com/chornsby) - Add a CockroachDsn type to validate CockroachDB connection strings. The type supports the following schemes: `cockroachdb`, `cockroachdb+psycopg2` and `cockroachdb+asyncpg`, [#3839](https://togithub.com/pydantic/pydantic/issues/3839) by [@blubber](https://togithub.com/blubber) - Fix MyPy plugin to not override pre-existing `__init__` method in models, [#3824](https://togithub.com/pydantic/pydantic/issues/3824) by [@patrick91](https://togithub.com/patrick91) - Fix mypy version checking, [#3783](https://togithub.com/pydantic/pydantic/issues/3783) by [@KotlinIsland](https://togithub.com/KotlinIsland) - support overwriting dunder attributes of `BaseModel` instances, [#3777](https://togithub.com/pydantic/pydantic/issues/3777) by [@PrettyWood](https://togithub.com/PrettyWood) - Added `ConstrainedDate` and `condate`, [#3740](https://togithub.com/pydantic/pydantic/issues/3740) by [@hottwaj](https://togithub.com/hottwaj) - Support `kw_only` in dataclasses, [#3670](https://togithub.com/pydantic/pydantic/issues/3670) by [@detachhead](https://togithub.com/detachhead) - Add comparison method for `Color` class, [#3646](https://togithub.com/pydantic/pydantic/issues/3646) by [@aminalaee](https://togithub.com/aminalaee) - Drop support for python3.6, associated cleanup, [#3605](https://togithub.com/pydantic/pydantic/issues/3605) by [@samuelcolvin](https://togithub.com/samuelcolvin) - created new function `to_lower_camel()` for "non pascal case" camel case, [#3463](https://togithub.com/pydantic/pydantic/issues/3463) by [@schlerp](https://togithub.com/schlerp) - Add checks to `default` and `default_factory` arguments in Mypy plugin, [#3430](https://togithub.com/pydantic/pydantic/issues/3430) by [@klaa97](https://togithub.com/klaa97) - fix mangling of `inspect.signature` for `BaseModel`, [#3413](https://togithub.com/pydantic/pydantic/issues/3413) by [@fix-inspect-signature](https://togithub.com/fix-inspect-signature) - Adds the `SecretField` abstract class so that all the current and future secret fields like `SecretStr` and `SecretBytes` will derive from it, [#3409](https://togithub.com/pydantic/pydantic/issues/3409) by [@expobrain](https://togithub.com/expobrain) - Support multi hosts validation in `PostgresDsn`, [#3337](https://togithub.com/pydantic/pydantic/issues/3337) by [@rglsk](https://togithub.com/rglsk) - Fix parsing of very small numeric timedelta values, [#3315](https://togithub.com/pydantic/pydantic/issues/3315) by [@samuelcolvin](https://togithub.com/samuelcolvin) - Update `SecretsSettingsSource` to respect `config.case_sensitive`, [#3273](https://togithub.com/pydantic/pydantic/issues/3273) by [@JeanArhancet](https://togithub.com/JeanArhancet) - Add MongoDB network data source name (DSN) schema, [#3229](https://togithub.com/pydantic/pydantic/issues/3229) by [@snosratiershad](https://togithub.com/snosratiershad) - Add support for multiple dotenv files, [#3222](https://togithub.com/pydantic/pydantic/issues/3222) by [@rekyungmin](https://togithub.com/rekyungmin) - Raise an explicit `ConfigError` when multiple fields are incorrectly set for a single validator, [#3215](https://togithub.com/pydantic/pydantic/issues/3215) by [@SunsetOrange](https://togithub.com/SunsetOrange) - Allow ellipsis on `Field`s inside `Annotated` for `TypedDicts` required, [#3133](https://togithub.com/pydantic/pydantic/issues/3133) by [@ezegomez](https://togithub.com/ezegomez) - Catch overflow errors in `int_validator`, [#3112](https://togithub.com/pydantic/pydantic/issues/3112) by [@ojii](https://togithub.com/ojii) - Adds a `__rich_repr__` method to `Representation` class which enables pretty printing with [Rich](https://togithub.com/willmcgugan/rich), [#3099](https://togithub.com/pydantic/pydantic/issues/3099) by [@willmcgugan](https://togithub.com/willmcgugan) - Add percent encoding in `AnyUrl` and descendent types, [#3061](https://togithub.com/pydantic/pydantic/issues/3061) by [@FaresAhmedb](https://togithub.com/FaresAhmedb) - `validate_arguments` decorator now supports `alias`, [#3019](https://togithub.com/pydantic/pydantic/issues/3019) by [@MAD-py](https://togithub.com/MAD-py) - Avoid `__dict__` and `__weakref__` attributes in `AnyUrl` and IP address fields, [#2890](https://togithub.com/pydantic/pydantic/issues/2890) by [@nuno-andre](https://togithub.com/nuno-andre) - Add ability to use `Final` in a field type annotation, [#2766](https://togithub.com/pydantic/pydantic/issues/2766) by [@uriyyo](https://togithub.com/uriyyo) - Update requirement to `typing_extensions>=4.1.0` to guarantee `dataclass_transform` is available, [#4424](https://togithub.com/pydantic/pydantic/issues/4424) by [@commonism](https://togithub.com/commonism) - Add Explosion and AWS to main sponsors, [#4413](https://togithub.com/pydantic/pydantic/issues/4413) by [@samuelcolvin](https://togithub.com/samuelcolvin) - Update documentation for `copy_on_model_validation` to reflect recent changes, [#4369](https://togithub.com/pydantic/pydantic/issues/4369) by [@samuelcolvin](https://togithub.com/samuelcolvin) - Runtime warning if `__slots__` is passed to `create_model`, `__slots__` is then ignored, [#4432](https://togithub.com/pydantic/pydantic/issues/4432) by [@samuelcolvin](https://togithub.com/samuelcolvin) - Add type hints to `BaseSettings.Config` to avoid mypy errors, also correct mypy version compatibility notice in docs, [#4450](https://togithub.com/pydantic/pydantic/issues/4450) by [@samuelcolvin](https://togithub.com/samuelcolvin)
Configuration
📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.