fix(deps): update all non-major dependencies
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
faker (changelog) | dev | minor |
28.1.0 -> 28.4.1
|
polyfactory (changelog) | dev | minor |
2.16.2 -> 2.21.0
|
pre-commit/mirrors-mypy | repository | minor |
v1.4.1 -> v1.15.0
|
pre-commit/pre-commit-hooks | repository | minor |
v4.4.0 -> v4.6.0
|
psf/black | repository | minor |
23.3.0 -> 23.12.1
|
pycqa/flake8 | repository | minor |
6.0.0 -> 6.1.0
|
pydantic (changelog) | dependencies | minor |
2.8.2 -> 2.11.3
|
pydantic-settings (changelog) | dependencies | minor |
2.4.0 -> 2.9.1
|
pytest (changelog) | dev | patch |
8.3.2 -> 8.3.5
|
pytest-env | dev | patch |
1.1.3 -> 1.1.5
|
python-gitlab (changelog) | dependencies | minor |
4.10.0 -> 4.13.0
|
python-poetry/poetry | repository | patch |
1.8.2 -> 1.8.5
|
registry.gitlab.developers.cam.ac.uk/uis/devops/lib/ucam-faas-python | final | minor |
0.7.1 -> 0.8.0
|
timothycrosley/isort | repository | minor |
5.12.0 -> 5.13.2
|
ucam-faas | dependencies | minor |
^0.7.1 -> ^0.8.0
|
uis/devops/continuous-delivery/ci-templates | repository | minor |
v4.5.0 -> v4.6.0
|
Note: The pre-commit
manager in Renovate is not supported by the pre-commit
maintainers or community. Please do not report any problems there, instead create a Discussion in the Renovate repository if you have any questions.
Release Notes
joke2k/faker (faker)
v28.4.1
- Fix issue where Faker does not properly convert min/max float values to
Decimal
. Thanks @bdjellabaldebaran.
v28.4.0
- Add
it_IT
lorem provider. Thanks @gianni-di-noia.
v28.3.0
- Fix male forms of female surnames in
uk_UA
.Thanks @AlexLitvino.
v28.2.0
- Add
es_ES
isbn provider. Thanks @mondeja.
litestar-org/polyfactory (polyfactory)
v2.21.0
🌟
Sponsors A huge 'Thank you!' to all other sponsors across Polar.sh, OpenCollective and GitHub Sponsors!
What's Changed
Bug Fixes
(4ae69c8) - Handle pydantic v1 URL and email correctly (#685) by @Xdynix in #685
(18d8579) - Make type alias detection work with typing_extensions 4.13 (#684) by @airwoodix in #684
### Features
(9940230) - Document overriding SQLA column mapping (#671) by @adhtruong in #671
(cc789b5) - Support new type and annotated mapping (#680) by @adhtruong in #680
(36395d9) - Issue 678 use pydantic field examples (#679) by @stardust85 in #679
(02fed72) - Add release command (#687) by @adhtruong in #687
Miscellaneous Tasks
(e0c6941) - Remove sonar (#672) by @adhtruong in #672
Refactor
(00aa862) - Deprecate FieldMeta.random (#663) by @adhtruong in #663
(ade1115) - Migrate to typos (#675) by @adhtruong in #675
New Contributors
- @Xdynix made their first contribution in https://github.com/litestar-org/polyfactory/pull/685
- @airwoodix made their first contribution in https://github.com/litestar-org/polyfactory/pull/684
- @stardust85 made their first contribution in https://github.com/litestar-org/polyfactory/pull/679
Full Changelog: https://github.com/litestar-org/polyfactory/compare/v2.20.0...v2.21.0
v2.20.0
🌟
Sponsors A huge 'Thank you!' to all other sponsors across Polar.sh, OpenCollective and GitHub Sponsors!
What's Changed
### New Features
- feat: described an ability to use async data in factory fields; refactored factories/base and some tests by @nisemenov in https://github.com/litestar-org/polyfactory/pull/641
- feat: simplify pytest plugin by @adhtruong in https://github.com/litestar-org/polyfactory/pull/652
- feat: add_providers to easily add new type provider by @iloveitaly in https://github.com/litestar-org/polyfactory/pull/659
- feat: improve random range by @adhtruong in https://github.com/litestar-org/polyfactory/pull/653
- feat: improve create factory typing by @adhtruong in https://github.com/litestar-org/polyfactory/pull/657
### Fixes
- fix: allow non-hashable type args by @adhtruong in https://github.com/litestar-org/polyfactory/pull/643
- fix(pyproject.toml): dont allow faker version less then 5.0.0 by @T0nd0Tara in https://github.com/litestar-org/polyfactory/pull/646
- build: update dependencies and ignores by @adhtruong in https://github.com/litestar-org/polyfactory/pull/648
- fix(#634): added a generate function to support SQL Numeric field by @nisemenov in https://github.com/litestar-org/polyfactory/pull/636
- fix: ignore dataclass types in pydantic field parsing by @adhtruong in https://github.com/litestar-org/polyfactory/pull/660
New Contributors
- @T0nd0Tara made their first contribution in https://github.com/litestar-org/polyfactory/pull/646
- @iloveitaly made their first contribution in https://github.com/litestar-org/polyfactory/pull/659
Full Changelog: https://github.com/litestar-org/polyfactory/compare/v2.19.0...v2.20.0
v2.19.0
🌟
Sponsors Thanks to these incredible business sponsors:
Scalar (@scalar), Telemetry Sports (via @chris-telemetry), Stok (@stok-team)
A huge 'Thank you!' to all other sponsors across Polar.sh, OpenCollective and GitHub Sponsors!
What's Changed
🚀
New Features - feat(sqla_factory): added set_association_proxy attribute by @nisemenov in https://github.com/litestar-org/polyfactory/pull/629
🔧
Fixes - fix: lock PDM version to support 3.8 by @adhtruong in https://github.com/litestar-org/polyfactory/pull/609
- fix: update security alert by @adhtruong in https://github.com/litestar-org/polyfactory/pull/615
- fix: Pydantic 2.10 compatibility by @adhtruong in https://github.com/litestar-org/polyfactory/pull/613
- fix: ensure ABC are not considered a factory type by @adhtruong in https://github.com/litestar-org/polyfactory/pull/628
- fix(sqla_factory): added an async context manager in SQLAASyncPersistence by @nisemenov in https://github.com/litestar-org/polyfactory/pull/630
🚆
Infra - build: update pre-commit dependencies by @adhtruong in https://github.com/litestar-org/polyfactory/pull/614
- build: migrate to uv by @adhtruong in https://github.com/litestar-org/polyfactory/pull/612
- chore(deps): bump astral-sh/setup-uv from 4 to 5 by @dependabot in https://github.com/litestar-org/polyfactory/pull/622
- refactor: update Pydantic imports by @adhtruong in https://github.com/litestar-org/polyfactory/pull/625
- build: support 3.13 by @adhtruong in https://github.com/litestar-org/polyfactory/pull/599
- chore(deps): bump dawidd6/action-download-artifact from 3 to 7 by @dependabot in https://github.com/litestar-org/polyfactory/pull/619
- build: change deprecated action by @adhtruong in https://github.com/litestar-org/polyfactory/pull/626
New Contributors
- @nisemenov made their first contribution in https://github.com/litestar-org/polyfactory/pull/630
Full Changelog: https://github.com/litestar-org/polyfactory/compare/v2.18.1...v2.19.0
v2.18.1
🌟
Sponsors Thanks to these incredible business sponsors:
Scalar (@scalar), Telemetry Sports (via @chris-telemetry), Stok (@stok-team)
A huge 'Thank you!' to all other sponsors across Polar.sh, OpenCollective and GitHub Sponsors!
What's Changed
- fix: handle nullable SQLA constraints by @adhtruong in https://github.com/litestar-org/polyfactory/pull/602
- chore(release): bump release version by @adhtruong in https://github.com/litestar-org/polyfactory/pull/608
Full Changelog: https://github.com/litestar-org/polyfactory/compare/v2.18.0...v2.18.1
v2.18.0
🌟
Sponsors Thanks to these incredible business sponsors:
Scalar (@scalar), Telemetry Sports (via @chris-telemetry), Stok (@stok-team)
A huge 'Thank you!' to all other sponsors across Polar.sh, OpenCollective and GitHub Sponsors!
What's Changed
🚀
New Features - Handle SQLA column constraints by @adhtruong in https://github.com/litestar-org/polyfactory/pull/594
🚆
Infra - Update docs preview upload by @adhtruong in https://github.com/litestar-org/polyfactory/pull/597
- Add SQLA async to test dependencies by @adhtruong in https://github.com/litestar-org/polyfactory/pull/595
Full Changelog: https://github.com/litestar-org/polyfactory/compare/v2.17.0...v2.18.0
v2.17.0
🌟
Sponsors Thanks to these incredible business sponsors:
Scalar (@scalar), Telemetry Sports (via @chris-telemetry), Stok (@stok-team)
A huge 'Thank you!' to all other sponsors across Polar.sh, OpenCollective and GitHub Sponsors!
What's Changed
- fix: constrained 0 length lists by @marcozzxx810 in https://github.com/litestar-org/polyfactory/pull/570
- build: update pre-commit dependencies by @adhtruong in https://github.com/litestar-org/polyfactory/pull/571
- fix: use provider map for any in coverage by @adhtruong in https://github.com/litestar-org/polyfactory/pull/574
- fix: tuple randomized length by @adhtruong in https://github.com/litestar-org/polyfactory/pull/573
- feat(#579): enhance register_fixture return type annotation by @giulioindev in https://github.com/litestar-org/polyfactory/pull/581
- docs: swap word with its antonym to match the context by @UncleGoogle in https://github.com/litestar-org/polyfactory/pull/575
- fix: Adjust min/max items to valid lengths for Set[Enum] fields by @adrianeboyd in https://github.com/litestar-org/polyfactory/pull/567
- fix: handle Optional type recursive models by @adhtruong in https://github.com/litestar-org/polyfactory/pull/584
- fix: handle recursive collections by @adhtruong in https://github.com/litestar-org/polyfactory/pull/587
- chore(release): bump release version by @adhtruong in https://github.com/litestar-org/polyfactory/pull/588
New Contributors
- @marcozzxx810 made their first contribution in https://github.com/litestar-org/polyfactory/pull/570
- @giulioindev made their first contribution in https://github.com/litestar-org/polyfactory/pull/581
- @UncleGoogle made their first contribution in https://github.com/litestar-org/polyfactory/pull/575
- @adrianeboyd made their first contribution in https://github.com/litestar-org/polyfactory/pull/567
Full Changelog: https://github.com/litestar-org/polyfactory/compare/v2.16.2...v2.17.0
pre-commit/mirrors-mypy (pre-commit/mirrors-mypy)
v1.15.0
v1.14.1
v1.14.0
v1.13.0
v1.12.1
v1.12.0
v1.11.2
v1.11.1
v1.11.0
v1.10.1
v1.10.0
v1.9.0
v1.8.0
v1.7.1
v1.7.0
v1.6.1
v1.6.0
v1.5.1
v1.5.0
pre-commit/pre-commit-hooks (pre-commit/pre-commit-hooks)
v4.6.0
: pre-commit-hooks v4.6.0
Features
-
requirements-txt-fixer
: remove duplicate packages.- #1014 MR by @vhoulbreque-withings.
- #960 issue @csibe17.
Migrating
-
fix-encoding-pragma
: deprecated -- will be removed in 5.0.0. use pyupgrade or some other tool.
v4.5.0
: pre-commit-hooks v4.5.0
Features
-
requirements-txt-fixer
: also sortconstraints.txt
by default.- #857 MR by @lev-blit.
- #830 issue by @PLPeeters.
-
debug-statements
: addbpdb
debugger.
Fixes
-
file-contents-sorter
: fix sorting an empty file.- #944 MR by @RoelAdriaans.
- #935 issue by @paduszyk.
-
double-quote-string-fixer
: don't rewrite inside f-strings in 3.12+.- #973 MR by @asottile.
- #971 issue by @XuehaiPan.
Migrating
- now requires python >= 3.8.
- #926 MR by @asottile.
- #927 MR by @asottile.
psf/black (psf/black)
v23.12.1
Packaging
- Fixed a bug that included dependencies from the
d
extra by default (#4108)
v23.12.0
Highlights
It's almost 2024, which means it's time for a new edition of Black's stable style! Together with this release, we'll put out an alpha release 24.1a1 showcasing the draft 2024 stable style, which we'll finalize in the January release. Please try it out and share your feedback.
This release (23.12.0) will still produce the 2023 style. Most but not all of the
changes in --preview
mode will be in the 2024 stable style.
Stable style
- Fix bug where
# fmt: off
automatically dedents when used with the--line-ranges
option, even when it is not within the specified line range. (#4084) - Fix feature detection for parenthesized context managers (#4104)
Preview style
- Prefer more equal signs before a break when splitting chained assignments (#4010)
- Standalone form feed characters at the module level are no longer removed (#4021)
- Additional cases of immediately nested tuples, lists, and dictionaries are now indented less (#4012)
- Allow empty lines at the beginning of all blocks, except immediately before a docstring (#4060)
- Fix crash in preview mode when using a short
--line-length
(#4086) - Keep suites consisting of only an ellipsis on their own lines if they are not functions or class definitions (#4066) (#4103)
Configuration
-
--line-ranges
now skips Black's internal stability check in--safe
mode. This avoids a crash on rare inputs that have many unformatted same-content lines. (#4034)
Packaging
- Upgrade to mypy 1.7.1 (#4049) (#4069)
- Faster compiled wheels are now available for CPython 3.12 (#4070)
Integrations
- Enable 3.12 CI (#4035)
- Build docker images in parallel (#4054)
- Build docker images with 3.12 (#4055)
v23.11.0
Highlights
- Support formatting ranges of lines with the new
--line-ranges
command-line option (#4020)
Stable style
- Fix crash on formatting bytes strings that look like docstrings (#4003)
- Fix crash when whitespace followed a backslash before newline in a docstring (#4008)
- Fix standalone comments inside complex blocks crashing Black (#4016)
- Fix crash on formatting code like
await (a ** b)
(#3994) - No longer treat leading f-strings as docstrings. This matches Python's behaviour and fixes a crash (#4019)
Preview style
- Multiline dicts and lists that are the sole argument to a function are now indented less (#3964)
- Multiline unpacked dicts and lists as the sole argument to a function are now also indented less (#3992)
- In f-string debug expressions, quote types that are visible in the final string are now preserved (#4005)
- Fix a bug where long
case
blocks were not split into multiple lines. Also enable general trailing comma rules oncase
blocks (#4024) - Keep requiring two empty lines between module-level docstring and first function or class definition (#4028)
- Add support for single-line format skip with other comments on the same line (#3959)
Configuration
- Consistently apply force exclusion logic before resolving symlinks (#4015)
- Fix a bug in the matching of absolute path names in
--include
(#3976)
Performance
- Fix mypyc builds on arm64 on macOS (#4017)
Integrations
- Black's pre-commit integration will now run only on git hooks appropriate for a code formatter (#3940)
v23.10.1
Highlights
- Maintenance release to get a fix out for GitHub Action edge case (#3957)
Preview style
- Fix merging implicit multiline strings that have inline comments (#3956)
- Allow empty first line after block open before a comment or compound statement (#3967)
Packaging
- Change Dockerfile to hatch + compile black (#3965)
Integrations
- The summary output for GitHub workflows is now suppressible using the
summary
parameter. (#3958) - Fix the action failing when Black check doesn't pass (#3957)
Documentation
- It is known Windows documentation CI is broken https://github.com/psf/black/issues/3968
v23.10.0
Stable style
- Fix comments getting removed from inside parenthesized strings (#3909)
Preview style
- Fix long lines with power operators getting split before the line length (#3942)
- Long type hints are now wrapped in parentheses and properly indented when split across multiple lines (#3899)
- Magic trailing commas are now respected in return types. (#3916)
- Require one empty line after module-level docstrings. (#3932)
- Treat raw triple-quoted strings as docstrings (#3947)
Configuration
- Fix cache versioning logic when
BLACK_CACHE_DIR
is set (#3937)
Parser
- Fix bug where attributes named
type
were not accepted insidematch
statements (#3950) - Add support for PEP 695 type aliases containing lambdas and other unusual expressions (#3949)
Output
- Black no longer attempts to provide special errors for attempting to format Python 2 code (#3933)
- Black will more consistently print stacktraces on internal errors in verbose mode (#3938)
Integrations
- The action output displayed in the job summary is now wrapped in Markdown (#3914)
v23.9.1
Due to various issues, the previous release (23.9.0) did not include compiled mypyc wheels, which make Black significantly faster. These issues have now been fixed, and this release should come with compiled wheels once again.
There will be no wheels for Python 3.12 due to a bug in mypyc. We will provide 3.12 wheels in a future release as soon as the mypyc bug is fixed.
Packaging
- Upgrade to mypy 1.5.1 (#3864)
Performance
- Store raw tuples instead of NamedTuples in Black's cache, improving performance and decreasing the size of the cache (#3877)
v23.9.0
Preview style
- More concise formatting for dummy implementations (#3796)
- In stub files, add a blank line between a statement with a body (e.g an
if sys.version_info > (3, x):
) and a function definition on the same level (#3862) - Fix a bug whereby spaces were removed from walrus operators within subscript(#3823)
Configuration
- Black now applies exclusion and ignore logic before resolving symlinks (#3846)
Performance
- Avoid importing
IPython
if notebook cells do not contain magics (#3782) - Improve caching by comparing file hashes as fallback for mtime and size (#3821)
Blackd
- Fix an issue in
blackd
with single character input (#3558)
Integrations
- Black now has an
official pre-commit mirror. Swapping
https://github.com/psf/black
tohttps://github.com/psf/black-pre-commit-mirror
in your.pre-commit-config.yaml
will make Black about 2x faster (#3828) - The
.black.env
folder specified byENV_PATH
will now be removed on the completion of the GitHub Action (#3759)
v23.7.0
Highlights
- Runtime support for Python 3.7 has been removed. Formatting 3.7 code will still be supported until further notice (#3765)
Stable style
- Fix a bug where an illegal trailing comma was added to return type annotations using PEP 604 unions (#3735)
- Fix several bugs and crashes where comments in stub files were removed or mishandled under some circumstances (#3745)
- Fix a crash with multi-line magic comments like
type: ignore
within parentheses (#3740) - Fix error in AST validation when Black removes trailing whitespace in a type comment (#3773)
Preview style
- Implicitly concatenated strings used as function args are no longer wrapped inside parentheses (#3640)
- Remove blank lines between a class definition and its docstring (#3692)
Configuration
- The
--workers
argument to Black can now be specified via theBLACK_NUM_WORKERS
environment variable (#3743) -
.pytest_cache
,.ruff_cache
and.vscode
are now excluded by default (#3691) - Fix Black not honouring
pyproject.toml
settings when running--stdin-filename
and thepyproject.toml
found isn't in the current working directory (#3719) -
Black will now error if
exclude
andextend-exclude
have invalid data types inpyproject.toml
, instead of silently doing the wrong thing (#3764)
Packaging
- Upgrade mypyc from 0.991 to 1.3 (#3697)
- Remove patching of Click that mitigated errors on Python 3.6 with
LANG=C
(#3768)
Parser
- Add support for the new PEP 695 syntax in Python 3.12 (#3703)
Performance
- Speed up Black significantly when the cache is full (#3751)
- Avoid importing
IPython
in a case where we wouldn't need it (#3748)
Output
- Use aware UTC datetimes internally, avoids deprecation warning on Python 3.12 (#3728)
- Change verbose logging to exactly mirror Black's logic for source discovery (#3749)
Blackd
- The
blackd
argument parser now shows the default values for options in their help text (#3712)
Integrations
- Black is now tested with
PYTHONWARNDEFAULTENCODING = 1
(#3763) - Update GitHub Action to display black output in the job summary (#3688)
Documentation
pydantic/pydantic (pydantic)
v2.11.3
What's Changed
Packaging
Fixes
v2.11.2
What's Changed
Fixes
- Bump
pydantic-core
to v2.33.1 by @Viicos in #11678 - Make sure
__pydantic_private__
exists before setting private attributes by @Viicos in #11666 - Do not override
FieldInfo._complete
when using field from parent class by @Viicos in #11668 - Provide the available definitions when applying discriminated unions by @Viicos in #11670
- Do not expand root type in the mypy plugin for variables by @Viicos in #11676
- Mention the attribute name in model fields deprecation message by @Viicos in #11674
- Properly validate parameterized mappings by @Viicos in #11658
v2.11.1
What's Changed
Fixes
- Do not override
'definitions-ref'
schemas containing serialization schemas or metadata by @Viicos in #11644
v2.11.0
What's Changed
Pydantic v2.11 is a version strongly focused on build time performance of Pydantic models (and core schema generation in general). See the blog post for more details.
Packaging
New Features
- Add
encoded_string()
method to the URL types by @YassinNouh21 in #11580 - Add support for
defer_build
with@validate_call
decorator by @Viicos in #11584 - Allow
@with_config
decorator to be used with keyword arguments by @Viicos in #11608 - Simplify customization of default value inclusion in JSON Schema generation by @Viicos in #11634
- Add
generate_arguments_schema()
function by @Viicos in #11572
Fixes
- Allow generic typed dictionaries to be used for unpacked variadic keyword parameters by @Viicos in #11571
- Fix runtime error when computing model string representation involving cached properties and self-referenced models by @Viicos in #11579
- Preserve other steps when using the ellipsis in the pipeline API by @Viicos in #11626
- Fix deferred discriminator application logic by @Viicos in #11591
New Contributors
- @cmenon12 made their first contribution in #11562
- @Jeukoh made their first contribution in #11611
v2.10.6
What's Changed
Fixes
- Fix JSON Schema reference collection with
'examples'
keys by @Viicos in #11325 - Fix url python serialization by @sydney-runkle in #11331
v2.10.5
What's Changed
Fixes
- Remove custom MRO implementation of Pydantic models by @Viicos in #11184
- Fix URL serialization for unions by @sydney-runkle in #11233
v2.10.4
What's Changed
Packaging
- Bump
pydantic-core
to v2.27.2 by @davidhewitt in #11138
Fixes
- Fix for comparison of
AnyUrl
objects by @alexprabhat99 in #11082 - Properly fetch PEP 695 type params for functions, do not fetch annotations from signature by @Viicos in #11093
- Include JSON Schema input core schema in function schemas by @Viicos in #11085
- Add
len
to_BaseUrl
to avoid TypeError by @Kharianne in #11111 - Make sure the type reference is removed from the seen references by @Viicos in #11143
New Contributors
- @FyZzyss made their first contribution in #10789
- @tamird made their first contribution in #10948
- @felixxm made their first contribution in #11077
- @alexprabhat99 made their first contribution in #11082
- @Kharianne made their first contribution in #11111
v2.10.3
What's Changed
Fixes
- Set fields when
defer_build
is set on Pydantic dataclasses by @Viicos in #10984 - Do not resolve the JSON Schema reference for
dict
core schema keys by @Viicos in #10989 - Use the globals of the function when evaluating the return type for
PlainSerializer
andWrapSerializer
functions by @Viicos in #11008 - Fix host required enforcement for urls to be compatible with v2.9 behavior by @sydney-runkle in #11027
- Add a
default_factory_takes_validated_data
property toFieldInfo
by @Viicos in #11034 - Fix url json schema in
serialization
mode by @sydney-runkle in #11035
v2.10.2
What's Changed
Fixes
- Only evaluate FieldInfo annotations if required during schema building by @Viicos in #10769
- Do not evaluate annotations for private fields by @Viicos in #10962
- Support serialization as any for
Secret
types andUrl
types by @sydney-runkle in #10947 - Fix type hint of
Field.default
to be compatible with Python 3.8 and 3.9 by @Viicos in #10972 - Add hashing support for URL types by @sydney-runkle in #10975
- Hide
BaseModel.__replace__
definition from type checkers by @Viicos in #10979
v2.10.1
What's Changed
Packaging
- Bump
pydantic-core
version tov2.27.1
by @sydney-runkle in #10938
Fixes
- Use the correct frame when instantiating a parametrized
TypeAdapter
by @Viicos in #10893 - Relax check for validated data in
default_factory
utils by @sydney-runkle in #10909 - Fix type checking issue with
model_fields
andmodel_computed_fields
by @sydney-runkle in #10911 - Use the parent configuration during schema generation for stdlib
dataclass
es by @sydney-runkle in #10928 - Use the
globals
of the function when evaluating the return type of serializers andcomputed_field
s by @Viicos in #10929 - Fix URL constraint application by @sydney-runkle in #10922
- Fix URL equality with different validation methods by @sydney-runkle in #10934
- Fix JSON schema title when specified as
''
by @sydney-runkle in #10936 - Fix
python
mode serialization forcomplex
inference by @sydney-runkle in pydantic-core#1549
New Contributors
v2.10.0
The code released in v2.10.0 is practically identical to that of v2.10.0b2.
See the v2.10 release blog post for the highlights!
What's Changed
Packaging
- Bump
pydantic-core
tov2.27.0
by @sydney-runkle in #10825 - Replaced pdm with uv by @frfahim in #10727
New Features
- Support
fractions.Fraction
by @sydney-runkle in #10318 - Support
Hashable
for json validation by @sydney-runkle in #10324 - Add a
SocketPath
type forlinux
systems by @theunkn0wn1 in #10378 - Allow arbitrary refs in JSON schema
examples
by @sydney-runkle in #10417 - Support
defer_build
for Pydantic dataclasses by @Viicos in #10313 - Adding v1 / v2 incompatibility warning for nested v1 model by @sydney-runkle in #10431
- Add support for unpacked
TypedDict
to type hint variadic keyword arguments with@validate_call
by @Viicos in #10416 - Support compiled patterns in
protected_namespaces
by @sydney-runkle in #10522 - Add support for
propertyNames
in JSON schema by @FlorianSW in #10478 - Adding
__replace__
protocol for Python 3.13+ support by @sydney-runkle in #10596 - Expose public
sort
method for JSON schema generation by @sydney-runkle in #10595 - Add runtime validation of
@validate_call
callable argument by @kc0506 in #10627 - Add
experimental_allow_partial
support by @samuelcolvin in #10748 - Support default factories taking validated data as an argument by @Viicos in #10678
- Allow subclassing
ValidationError
andPydanticCustomError
by @Youssefares in pydantic/pydantic-core#1413 - Add
trailing-strings
support toexperimental_allow_partial
by @sydney-runkle in #10825 - Add
rebuild()
method forTypeAdapter
and simplifydefer_build
patterns by @sydney-runkle in #10537 - Improve
TypeAdapter
instance repr by @sydney-runkle in #10872
Changes
- Don't allow customization of
SchemaGenerator
until interface is more stable by @sydney-runkle in #10303 - Cleanly
defer_build
onTypeAdapters
, removing experimental flag by @sydney-runkle in #10329 - Fix
mro
of generic subclass by @kc0506 in #10100 - Strip whitespaces on JSON Schema title generation by @sydney-runkle in #10404
- Use
b64decode
andb64encode
forBase64Bytes
type by @sydney-runkle in #10486 - Relax protected namespace config default by @sydney-runkle in #10441
- Revalidate parametrized generics if instance's origin is subclass of OG class by @sydney-runkle in #10666
- Warn if configuration is specified on the
@dataclass
decorator and with the__pydantic_config__
attribute by @sydney-runkle in #10406 - Recommend against using
Ellipsis
(...) withField
by @Viicos in #10661 - Migrate to subclassing instead of annotated approach for pydantic url types by @sydney-runkle in #10662
- Change JSON schema generation of
Literal
s andEnums
by @Viicos in #10692 - Simplify unions involving
Any
orNever
when replacing type variables by @Viicos in #10338 - Do not require padding when decoding
base64
bytes by @bschoenmaeckers in pydantic/pydantic-core#1448 - Support dates all the way to 1BC by @changhc in pydantic/speedate#77
Performance
- Schema cleaning: skip unnecessary copies during schema walking by @Viicos in #10286
- Refactor namespace logic for annotations evaluation by @Viicos in #10530
- Improve email regexp on edge cases by @AlekseyLobanov in #10601
-
CoreMetadata
refactor with an emphasis on documentation, schema build time performance, and reducing complexity by @sydney-runkle in #10675
Fixes
- Remove guarding check on
computed_field
withfield_serializer
by @nix010 in #10390 - Fix
Predicate
issue inv2.9.0
by @sydney-runkle in #10321 - Fixing
annotated-types
bound by @sydney-runkle in #10327 - Turn
tzdata
install requirement into optionaltimezone
dependency by @jakob-keller in #10331 - Use correct types namespace when building
namedtuple
core schemas by @Viicos in #10337 - Fix evaluation of stringified annotations during namespace inspection by @Viicos in #10347
- Fix
IncEx
type alias definition by @Viicos in #10339 - Do not error when trying to evaluate annotations of private attributes by @Viicos in #10358
- Fix nested type statement by @kc0506 in #10369
- Improve typing of
ModelMetaclass.mro
by @Viicos in #10372 - Fix class access of deprecated
computed_field
s by @Viicos in #10391 - Make sure
inspect.iscoroutinefunction
works on coroutines decorated with@validate_call
by @MovisLi in #10374 - Fix
NameError
when usingvalidate_call
with PEP 695 on a class by @kc0506 in #10380 - Fix
ZoneInfo
with various invalid types by @sydney-runkle in #10408 - Fix
PydanticUserError
on emptymodel_config
with annotations by @cdwilson in #10412 - Fix variance issue in
_IncEx
type alias, only allowTrue
by @Viicos in #10414 - Fix serialization schema generation when using
PlainValidator
by @Viicos in #10427 - Fix schema generation error when serialization schema holds references by @Viicos in #10444
- Inline references if possible when generating schema for
json_schema_input_type
by @Viicos in #10439 - Fix recursive arguments in
Representation
by @Viicos in #10480 - Fix representation for builtin function types by @kschwab in #10479
- Add python validators for decimal constraints (
max_digits
anddecimal_places
) by @sydney-runkle in #10506 - Only fetch
__pydantic_core_schema__
from the current class during schema generation by @Viicos in #10518 - Fix
stacklevel
on deprecation warnings forBaseModel
by @sydney-runkle in #10520 - Fix warning
stacklevel
inBaseModel.__init__
by @Viicos in #10526 - Improve error handling for in-evaluable refs for discriminator application by @sydney-runkle in #10440
- Change the signature of
ConfigWrapper.core_config
to take the title directly by @Viicos in #10562 - Do not use the previous config from the stack for dataclasses without config by @Viicos in #10576
- Fix serialization for IP types with
mode='python'
by @sydney-runkle in #10594 - Support constraint application for
Base64Etc
types by @sydney-runkle in #10584 - Fix
validate_call
ignoringField
inAnnotated
by @kc0506 in #10610 - Raise an error when
Self
is invalid by @kc0506 in #10609 - Using
core_schema.InvalidSchema
instead of metadata injection + checks by @sydney-runkle in #10523 - Tweak type alias logic by @kc0506 in #10643
- Support usage of
type
withtyping.Self
and type aliases by @kc0506 in #10621 - Use overloads for
Field
andPrivateAttr
functions by @Viicos in #10651 - Clean up the
mypy
plugin implementation by @Viicos in #10669 - Properly check for
typing_extensions
variant ofTypeAliasType
by @Daraan in #10713 - Allow any mapping in
BaseModel.model_copy()
by @Viicos in #10751 - Fix
isinstance
behavior for urls by @sydney-runkle in #10766 - Ensure
cached_property
can be set on Pydantic models by @Viicos in #10774 - Fix equality checks for primitives in literals by @sydney-runkle in pydantic/pydantic-core#1459
- Properly enforce
host_required
for URLs by @Viicos in pydantic/pydantic-core#1488 - Fix when
coerce_numbers_to_str
enabled and string has invalid Unicode character by @andrey-berenda in pydantic/pydantic-core#1515 - Fix serializing
complex
values inEnum
s by @changhc in pydantic/pydantic-core#1524 - Refactor
_typing_extra
module by @Viicos in #10725 - Support intuitive equality for urls by @sydney-runkle in #10798
- Add
bytearray
toTypeAdapter.validate_json
signature by @samuelcolvin in #10802 - Ensure class access of method descriptors is performed when used as a default with
Field
by @Viicos in #10816 - Fix circular import with
validate_call
by @sydney-runkle in #10807 - Fix error when using type aliases referencing other type aliases by @Viicos in #10809
- Fix
IncEx
type alias to be compatible with mypy by @Viicos in #10813 - Make
__signature__
a lazy property, do not deepcopy defaults by @Viicos in #10818 - Make
__signature__
lazy for dataclasses, too by @sydney-runkle in #10832 - Subclass all single host url classes from
AnyUrl
to preserve behavior from v2.9 by @sydney-runkle in #10856
New Contributors
- @jakob-keller made their first contribution in #10331
- @MovisLi made their first contribution in #10374
- @joaopalmeiro made their first contribution in #10405
- @theunkn0wn1 made their first contribution in #10378
- @cdwilson made their first contribution in #10412
- @dlax made their first contribution in #10421
- @kschwab made their first contribution in #10479
- @santibreo made their first contribution in #10453
- @FlorianSW made their first contribution in #10478
- @tkasuz made their first contribution in #10555
- @AlekseyLobanov made their first contribution in #10601
- @NiclasvanEyk made their first contribution in #10667
- @mschoettle made their first contribution in #10677
- @Daraan made their first contribution in #10713
- @k4nar made their first contribution in #10736
- @UriyaHarpeness made their first contribution in #10740
- @frfahim made their first contribution in #10727
v2.9.2
What's Changed
Fixes
- Do not error when trying to evaluate annotations of private attributes by @Viicos in #10358
- Adding notes on designing sound
Callable
discriminators by @sydney-runkle in #10400 - Fix serialization schema generation when using
PlainValidator
by @Viicos in #10427 - Fix
Union
serialization warnings by @sydney-runkle in pydantic/pydantic-core#1449 - Fix variance issue in
_IncEx
type alias, only allowTrue
by @Viicos in #10414 - Fix
ZoneInfo
validation with various invalid types by @sydney-runkle in #10408
v2.9.1
What's Changed
Fixes
- Fix Predicate issue in v2.9.0 by @sydney-runkle in #10321
- Fixing
annotated-types
bound to>=0.6.0
by @sydney-runkle in #10327 - Turn
tzdata
install requirement into optionaltimezone
dependency by @jakob-keller in #10331 - Fix
IncExc
type alias definition by @Viicos in #10339 - Use correct types namespace when building namedtuple core schemas by @Viicos in #10337
- Fix evaluation of stringified annotations during namespace inspection by @Viicos in #10347
- Fix tagged union serialization with alias generators by @sydney-runkle in pydantic/pydantic-core#1442
v2.9.0
The code released in v2.9.0 is practically identical to that of v2.9.0b2.
What's Changed
Packaging
- Bump
ruff
tov0.5.0
andpyright
tov1.1.369
by @sydney-runkle in #9801 - Bump
pydantic-extra-types
tov2.9.0
by @sydney-runkle in #9832 - Support compatibility with
pdm v2.18.1
by @Viicos in #10138 - Bump
v1
version stub tov1.10.18
by @sydney-runkle in #10214 - Bump
pydantic-core
tov2.23.2
by @sydney-runkle in #10311
New Features
- Add support for
ZoneInfo
by @Youssefares in #9896 - Add
Config.val_json_bytes
by @josh-newman in #9770 - Add DSN for Snowflake by @aditkumar72 in #10128
- Support
complex
number by @changhc in #9654 - Add support for
annotated_types.Not
by @aditkumar72 in #10210 - Allow
WithJsonSchema
to inject$ref
s w/http
orhttps
links by @dAIsySHEng1 in #9863 - Allow validators to customize validation JSON schema by @Viicos in #10094
- Support parametrized
PathLike
types by @nix010 in #9764 - Add tagged union serializer that attempts to use
str
orcallable
discriminators to select the correct serializer by @sydney-runkle in in pydantic/pydantic-core#1397
Changes
- Breaking Change: Merge
dict
typejson_schema_extra
by @sydney-runkle in #9792- For more info (how to replicate old behavior) on this change, see here
- Refactor annotation injection for known (often generic) types by @sydney-runkle in #9979
- Move annotation compatibility errors to validation phase by @sydney-runkle in #9999
- Improve runtime errors for string constraints like
pattern
for incompatible types by @sydney-runkle in #10158 - Remove
'allOf'
JSON schema workarounds by @dpeachey in #10029 - Remove
typed_dict_cls
data fromCoreMetadata
by @sydney-runkle in #10180 - Deprecate passing a dict to the
Examples
class by @Viicos in #10181 - Remove
initial_metadata
from internal metadata construct by @sydney-runkle in #10194 - Use
re.Pattern.search
instead ofre.Pattern.match
for consistency withrust
behavior by @tinez in pydantic/pydantic-core#1368 - Show value of wrongly typed data in
pydantic-core
serialization warning by @BoxyUwU in pydantic/pydantic-core#1377 - Breaking Change: in
pydantic-core
, changemetadata
type hint in core schemas fromAny
->Dict[str, Any] | None
by @sydney-runkle in pydantic/pydantic-core#1411 - Raise helpful warning when
self
isn't returned from model validator by @sydney-runkle in #10255
Performance
- Initial start at improving import times for modules, using caching primarily by @sydney-runkle in #10009
- Using cached internal import for
BaseModel
by @sydney-runkle in #10013 - Simplify internal generics logic - remove generator overhead by @sydney-runkle in #10059
- Remove default module globals from types namespace by @sydney-runkle in #10123
- Performance boost: skip caching parent namespaces in most cases by @sydney-runkle in #10113
- Update ns stack with already copied ns by @sydney-runkle in #10267
Minor Internal Improvements
-
⚡ Speed upmultiple_of_validator()
by 31% inpydantic/_internal/_validators.py
by @misrasaurabh1 in #9839 -
⚡ Speed upModelPrivateAttr.__set_name__()
by 18% inpydantic/fields.py
by @misrasaurabh1 in #9841 -
⚡ Speed updataclass()
by 7% inpydantic/dataclasses.py
by @misrasaurabh1 in #9843 -
⚡ Speed up function_field_name_for_signature
by 37% inpydantic/_internal/_signature.py
by @misrasaurabh1 in #9951 -
⚡ Speed up methodGenerateSchema._unpack_refs_defs
by 26% inpydantic/_internal/_generate_schema.py
by @misrasaurabh1 in #9949 -
⚡ Speed up functionapply_each_item_validators
by 100% inpydantic/_internal/_generate_schema.py
by @misrasaurabh1 in #9950 -
⚡ Speed up methodConfigWrapper.core_config
by 28% inpydantic/_internal/_config.py
by @misrasaurabh1 in #9953
Fixes
- Respect
use_enum_values
onLiteral
types by @kwint in #9787 - Prevent type error for exotic
BaseModel/RootModel
inheritance by @dmontagu in #9913 - Fix typing issue with field_validator-decorated methods by @dmontagu in #9914
- Replace
str
type annotation withAny
in validator factories in documentation on validators by @maximilianfellhuber in #9885 - Fix
ComputedFieldInfo.wrapped_property
pointer when a property setter is assigned by @tlambert03 in #9892 - Fix recursive typing of
main.IncEnx
by @tlambert03 in #9924 - Allow usage of
type[Annotated[...]]
by @Viicos in #9932 -
mypy
plugin: handle frozen fields on a per-field basis by @dmontagu in #9935 - Fix typo in
invalid-annotated-type
error code by @sydney-runkle in #9948 - Simplify schema generation for
uuid
,url
, andip
types by @sydney-runkle in #9975 - Move
date
schemas to_generate_schema.py
by @sydney-runkle in #9976 - Move
decimal.Decimal
validation to_generate_schema.py
by @sydney-runkle in #9977 - Simplify IP address schema in
_std_types_schema.py
by @sydney-runkle in #9959 - Fix type annotations for some potentially generic
GenerateSchema.match_type
options by @sydney-runkle in #9961 - Add class name to "has conflict" warnings by @msabramo in #9964
- Fix
dataclass
ignoringdefault_factory
passed in Annotated by @kc0506 in #9971 - Fix
Sequence
ignoringdiscriminator
by @kc0506 in #9980 - Fix typing for
IPvAnyAddress
andIPvAnyInterface
by @haoyun in #9990 - Fix false positives on v1 models in
mypy
plugin forfrom_orm
check requiring from_attributes=True config by @radekwlsk in #9938 - Apply
strict=True
to__init__
inmypy
plugin by @kc0506 in #9998 - Refactor application of
deque
annotations by @sydney-runkle in #10018 - Raise a better user error when failing to evaluate a forward reference by @Viicos in #10030
- Fix evaluation of
__pydantic_extra__
annotation in specific circumstances by @Viicos in #10070 - Fix
frozen
enforcement fordataclasses
by @sydney-runkle in #10066 - Remove logic to handle unused
__get_pydantic_core_schema__
signature by @Viicos in #10075 - Use
is_annotated
consistently by @Viicos in #10095 - Fix
PydanticDeprecatedSince26
typo by @kc0506 in #10101 - Improve
pyright
tests, refactor model decorators signatures by @Viicos in #10092 - Fix
ip
serialization logic by @sydney-runkle in #10112 - Warn when frozen defined twice for
dataclasses
by @mochi22 in #10082 - Do not compute JSON Schema default when plain serializers are used with
when_used
set to'json-unless-none'
and the default value isNone
by @Viicos in #10121 - Fix
ImportString
special cases by @sydney-runkle in #10137 - Blacklist default globals to support exotic user code with
__
prefixed annotations by @sydney-runkle in #10136 - Handle
nullable
schemas withserialization
schema available during JSON Schema generation by @Viicos in #10132 - Reorganize
BaseModel
annotations by @kc0506 in #10110 - Fix core schema simplification when serialization schemas are involved in specific scenarios by @Viicos in #10155
- Add support for stringified annotations when using
PrivateAttr
withAnnotated
by @Viicos in #10157 - Fix JSON Schema
number
type for literal and enum schemas by @Viicos in #10172 - Fix JSON Schema generation of fields with plain validators in serialization mode by @Viicos in #10167
- Fix invalid JSON Schemas being generated for functions in certain scenarios by @Viicos in #10188
- Make sure generated JSON Schemas are valid in tests by @Viicos in #10182
- Fix key error with custom serializer by @sydney-runkle in #10200
- Add 'wss' for allowed schemes in NatsDsn by @swelborn in #10224
- Fix
Mapping
andMutableMapping
annotations to use mapping schema instead of dict schema by @sydney-runkle in #10020 - Fix JSON Schema generation for constrained dates by @Viicos in #10185
- Fix discriminated union bug regression when using enums by @kfreezen in pydantic/pydantic-core#1286
- Fix
field_serializer
with computed field when using*
by @nix010 in pydantic/pydantic-core#1349 - Try each option in
Union
serializer before inference by @sydney-runkle in pydantic/pydantic-core#1398 - Fix
float
serialization behavior instrict
mode by @sydney-runkle in pydantic/pydantic-core#1400 - Introduce
exactness
into Decimal validation logic to improve union validation behavior by @sydney-runkle in in pydantic/pydantic-core#1405 - Fix new warnings assertions to use
pytest.warns()
by @mgorny in #10241 - Fix a crash when cleaning the namespace in
ModelMetaclass
by @Viicos in #10242 - Fix parent namespace issue with model rebuilds by @sydney-runkle in #10257
- Remove defaults filter for namespace by @sydney-runkle in #10261
- Use identity instead of equality after validating model in
__init__
by @Viicos in #10264 - Support
BigInt
serialization forint
subclasses by @kxx317 in pydantic/pydantic-core#1417 - Support signature for wrap validators without
info
by @sydney-runkle in #10277 - Ensure
__pydantic_complete__
is set when rebuildingdataclasses
by @Viicos in #10291 - Respect
schema_generator
config value inTypeAdapter
by @sydney-runkle in #10300
New Contributors
pydantic
- @kwint made their first contribution in #9787
- @seekinginfiniteloop made their first contribution in #9822
- @a-alexander made their first contribution in #9848
- @maximilianfellhuber made their first contribution in #9885
- @karmaBonfire made their first contribution in #9945
- @s-rigaud made their first contribution in #9958
- @msabramo made their first contribution in #9964
- @DimaCybr made their first contribution in #9972
- @kc0506 made their first contribution in #9971
- @haoyun made their first contribution in #9990
- @radekwlsk made their first contribution in #9938
- @dpeachey made their first contribution in #10029
- @BoxyUwU made their first contribution in #10085
- @mochi22 made their first contribution in #10082
- @aditkumar72 made their first contribution in #10128
- @changhc made their first contribution in #9654
- @insumanth made their first contribution in #10229
- @AdolfoVillalobos made their first contribution in #10240
- @bllchmbrs made their first contribution in #10270
pydantic-core
- @kfreezen made their first contribution in pydantic/pydantic-core#1286
- @tinez made their first contribution in pydantic/pydantic-core#1368
- @fft001 made their first contribution in pydantic/pydantic-core#1362
- @nix010 made their first contribution in pydantic/pydantic-core#1349
- @BoxyUwU made their first contribution in pydantic/pydantic-core#1379
- @candleindark made their first contribution in pydantic/pydantic-core#1404
- @changhc made their first contribution in pydantic/pydantic-core#1331
pydantic/pydantic-settings (pydantic-settings)
v2.9.1
v2.9.0
What's Changed
- Drop support for Python 3.8 by @Viicos in https://github.com/pydantic/pydantic-settings/pull/560
- Switch to
typing-inspection
by @Viicos in https://github.com/pydantic/pydantic-settings/pull/556 - Introduce
uv
for Project Management by @KanchiShimono in https://github.com/pydantic/pydantic-settings/pull/547 - Refactor sources.py into a subpackage (#546) by @ezwiefel in https://github.com/pydantic/pydantic-settings/pull/548
- chore: cleanup by @CodeWithEmad in https://github.com/pydantic/pydantic-settings/pull/563
- Fix typo in documentation by @CodeWithEmad in https://github.com/pydantic/pydantic-settings/pull/564
- Add support for AWS Secrets Manager by @mavwolverine in https://github.com/pydantic/pydantic-settings/pull/532
- Fix minor typo: conotations => connotations by @svenevs in https://github.com/pydantic/pydantic-settings/pull/577
- Azure Key Vault: Don't load disabled secret by @AndreuCodina in https://github.com/pydantic/pydantic-settings/pull/578
- Add support for GCP Secret Manager by @ezwiefel in https://github.com/pydantic/pydantic-settings/pull/567
- CLI JSON Optional Default by @kschwab in https://github.com/pydantic/pydantic-settings/pull/581
- Fix for env nested enum. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/589
- CLI submodel suppress. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/587
- Cli retrieve unknown args by @kschwab in https://github.com/pydantic/pydantic-settings/pull/588
- Update pydantic by @hramezani in https://github.com/pydantic/pydantic-settings/pull/593
- Fix check in CI by @hramezani in https://github.com/pydantic/pydantic-settings/pull/595
New Contributors
- @ezwiefel made their first contribution in https://github.com/pydantic/pydantic-settings/pull/548
- @CodeWithEmad made their first contribution in https://github.com/pydantic/pydantic-settings/pull/563
- @mavwolverine made their first contribution in https://github.com/pydantic/pydantic-settings/pull/532
- @svenevs made their first contribution in https://github.com/pydantic/pydantic-settings/pull/577
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.8.1...v2.9.0
v2.8.1
What's Changed
- Fix for init source kwarg alias resolution. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/550
- Revert usage of positional only argument in
BaseSettings.__init__
by @Viicos in https://github.com/pydantic/pydantic-settings/pull/557 - Revert use of
object
instead ofAny
by @Viicos in https://github.com/pydantic/pydantic-settings/pull/559 - Prepare release 2.8.1 by @hramezani in https://github.com/pydantic/pydantic-settings/pull/558
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.8.0...v2.8.1
v2.8.0
What's Changed
- CLI support for optional and variadic positional args by @kschwab in https://github.com/pydantic/pydantic-settings/pull/519
- Improve env_prefix config doc by @hramezani in https://github.com/pydantic/pydantic-settings/pull/523
- Add env_nested_max_split setting by @gsakkis in https://github.com/pydantic/pydantic-settings/pull/534
- Avoid using
Any
inBaseSettings
signature to avoid mypy errors by @Viicos in https://github.com/pydantic/pydantic-settings/pull/529 - Asynchronous CLI methods in CliApp by @KanchiShimono in https://github.com/pydantic/pydantic-settings/pull/533
- Don't explode env vars if env_nested_delimiter is empty by @gsakkis in https://github.com/pydantic/pydantic-settings/pull/540
- Prepare release 2.8.0 by @hramezani in https://github.com/pydantic/pydantic-settings/pull/541
New Contributors
- @gsakkis made their first contribution in https://github.com/pydantic/pydantic-settings/pull/534
- @KanchiShimono made their first contribution in https://github.com/pydantic/pydantic-settings/pull/533
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.7.1...v2.8.0
v2.7.1
What's Changed
- Move preferred alias resolution to private method by @kschwab in https://github.com/pydantic/pydantic-settings/pull/507
- Prepare release 2.7.1 by @hramezani in https://github.com/pydantic/pydantic-settings/pull/511
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.7.0...v2.7.1
v2.7.0
What's Changed
- Fix
test_protected_namespace_defaults
with -Wdefault by @CyberTailor in https://github.com/pydantic/pydantic-settings/pull/462 - Make tests more robust to the running environment by @CyberTailor in https://github.com/pydantic/pydantic-settings/pull/464
- Fix rendering of annotations in code example by @Viicos in https://github.com/pydantic/pydantic-settings/pull/470
- Fix alias resolution for default settings source. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/468
- Use the class name in the
__repr__
implementations by @dlax in https://github.com/pydantic/pydantic-settings/pull/465 - Fix default help text for union of submodels. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/472
- Add support for CliMutuallyExclusiveGroup. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/473
- Disable abbreviations on internal parser. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/477
- Fix Secret field parsing by @hramezani in https://github.com/pydantic/pydantic-settings/pull/478
- Fix alias resolution to use preferred key. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/481
- Strip annotated when getting submodels during CLI parsing. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/490
- Removing return type from the function in test by @hramezani in https://github.com/pydantic/pydantic-settings/pull/491
- Relax default protected_namespaces by @hramezani in https://github.com/pydantic/pydantic-settings/pull/483
- Add support for CLI kebab case flag. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/489
- Change reference of default values validation in documentation by @Viicos in https://github.com/pydantic/pydantic-settings/pull/496
- Improve field value parsing by adding
NoDecode
andForceDecode
annotations by @hramezani in https://github.com/pydantic/pydantic-settings/pull/492 - Fix attribute error on Python 3.9 with typing.Sequence by @hramezani in https://github.com/pydantic/pydantic-settings/pull/497
- Prepare release 2.7.0 by @hramezani in https://github.com/pydantic/pydantic-settings/pull/499
New Contributors
- @CyberTailor made their first contribution in https://github.com/pydantic/pydantic-settings/pull/462
- @dlax made their first contribution in https://github.com/pydantic/pydantic-settings/pull/465
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.6.1...v2.7.0
v2.6.1
What's Changed
- Add Python 3.13 support by @hramezani in https://github.com/pydantic/pydantic-settings/pull/450
- Fixes #452 - Adding support for populate_by_name by @hozn in https://github.com/pydantic/pydantic-settings/pull/454
- Refactor path_type_label by @aberenda-optifino in https://github.com/pydantic/pydantic-settings/pull/458
- Revert "Fix context not passed to field validators bug (#417)" by @hramezani in https://github.com/pydantic/pydantic-settings/pull/459
New Contributors
- @hozn made their first contribution in https://github.com/pydantic/pydantic-settings/pull/454
- @aberenda-optifino made their first contribution in https://github.com/pydantic/pydantic-settings/pull/458
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.6.0...v2.6.1
v2.6.0
What's Changed
- Fix nested model field with alias parsing by @hramezani in https://github.com/pydantic/pydantic-settings/pull/400
- Fix PathType typing in case of sequence by @just-maiyak in https://github.com/pydantic/pydantic-settings/pull/402
- Add
cli_ignore_unknown_args
config option. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/405 - Fix AzureKeyVaultSettingsSource problem in case of field with underscore by @hramezani in https://github.com/pydantic/pydantic-settings/pull/415
- Add
cli_flag_prefix_char
config option. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/418 - Fix nested model AliasChoices in validation alias by @hramezani in https://github.com/pydantic/pydantic-settings/pull/411
- Add CLI App Support by @kschwab in https://github.com/pydantic/pydantic-settings/pull/389
- Fix context not passed to field validators bug by @hramezani in https://github.com/pydantic/pydantic-settings/pull/417
- Fix a regression in dotenv optional nested field by @hramezani in https://github.com/pydantic/pydantic-settings/pull/423
- Put tests for non-default sources in separate files by @makukha in https://github.com/pydantic/pydantic-settings/pull/429
- Update nested model partial update docs example. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/433
- Add support for suppressing fields from CLI help. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/436
- Fix bug in dotenv source when there is env with and without prefix by @hramezani in https://github.com/pydantic/pydantic-settings/pull/440
- Prepare release 2.6.0 by @hramezani in https://github.com/pydantic/pydantic-settings/pull/444
New Contributors
- @just-maiyak made their first contribution in https://github.com/pydantic/pydantic-settings/pull/402
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.5.2...v2.6.0
v2.5.2
What's Changed
- Second fix for the TypeError bug introduced in 2.5 by @hramezani in https://github.com/pydantic/pydantic-settings/pull/396
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.5.1...v2.5.2
v2.5.1
What's Changed
- Fix TypeError introduced in 2.5 by @hramezani in https://github.com/pydantic/pydantic-settings/pull/392
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.5.0...v2.5.1
v2.5.0
What's Changed
- Fix a bug in nested vanila dataclass by @hramezani in https://github.com/pydantic/pydantic-settings/pull/357
- CLI Improve Docstring Help Text by @kschwab in https://github.com/pydantic/pydantic-settings/pull/359
- Cli fix default or none object help text by @kschwab in https://github.com/pydantic/pydantic-settings/pull/364
- Determine RootModel complexity from root type by @user1584 in https://github.com/pydantic/pydantic-settings/pull/344
- Add CLI bool flags by @kschwab in https://github.com/pydantic/pydantic-settings/pull/365
- CLI arg list whitespaces fix. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/369
- Add
nested_model_default_partial_update
flag andDefaultSettingsSource
by @kschwab in https://github.com/pydantic/pydantic-settings/pull/348 - Parse enum fixes. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/367
- Fixes CLI help text for function types by @kschwab in https://github.com/pydantic/pydantic-settings/pull/370
- Add get_subcommand function. by @kschwab in https://github.com/pydantic/pydantic-settings/pull/341
- Cli prefix validation alias fix by @kschwab in https://github.com/pydantic/pydantic-settings/pull/375
- CLI ignore external parser list fix by @kschwab in https://github.com/pydantic/pydantic-settings/pull/379
- Enable multiple secrets dirs by @makukha in https://github.com/pydantic/pydantic-settings/pull/372
- Add CLI subcommand union and alias support by @kschwab in https://github.com/pydantic/pydantic-settings/pull/380
- Fix dotenv settings source problem in handling extra variables with same prefix in name by @hramezani in https://github.com/pydantic/pydantic-settings/pull/386
New Contributors
- @user1584 made their first contribution in https://github.com/pydantic/pydantic-settings/pull/344
- @makukha made their first contribution in https://github.com/pydantic/pydantic-settings/pull/372
Full Changelog: https://github.com/pydantic/pydantic-settings/compare/v2.4.0...v2.5.0
pytest-dev/pytest (pytest)
v8.3.5
pytest 8.3.5 (2025-03-02)
Bug fixes
-
#11777: Fixed issue where sequences were still being shortened even with
-vv
verbosity. -
#12888: Fixed broken input when using Python 3.13+ and a
libedit
build of Python, such as on macOS or with uv-managed Python binaries from thepython-build-standalone
project. This could manifest e.g. by a broken prompt when usingPdb
, or seeing empty inputs with manual usage ofinput()
and suspended capturing. -
#13026: Fixed
AttributeError
{.interpreted-text role="class"} crash when using--import-mode=importlib
when top-level directory same name as another module of the standard library. -
#13053: Fixed a regression in pytest 8.3.4 where, when using
--import-mode=importlib
, a directory containing py file with the same name would cause anImportError
- #13083: Fixed issue where pytest could crash if one of the collected directories got removed during collection.
Improved documentation
-
#12842: Added dedicated page about using types with pytest.
See
types
{.interpreted-text role="ref"} for detailed usage.
Contributor-facing changes
-
#13112: Fixed selftest failures in
test_terminal.py
with Pygments >= 2.19.0 -
#13256: Support for Towncrier versions released in 2024 has been re-enabled
when building Sphinx docs -- by
webknjaz
{.interpreted-text role="user"}.
v8.3.4
pytest 8.3.4 (2024-12-01)
Bug fixes
-
#12592: Fixed
KeyError
{.interpreted-text role="class"} crash when using--import-mode=importlib
in a directory layout where a directory contains a child directory with the same name. -
#12818: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the
AST
, like executing. -
#12849: ANSI escape codes for colored output now handled correctly in
pytest.fail
{.interpreted-text role="func"} with [pytrace=False]{.title-ref}. -
#9353:
pytest.approx
{.interpreted-text role="func"} now uses strict equality when given booleans.
Improved documentation
-
#10558: Fix ambiguous docstring of
pytest.Config.getoption
{.interpreted-text role="func"}. -
#10829: Improve documentation on the current handling of the
--basetemp
option and its lack of retention functionality (temporary directory location and retention
{.interpreted-text role="ref"}). -
#12866: Improved cross-references concerning the
recwarn
{.interpreted-text role="fixture"} fixture. -
#12966: Clarify
filterwarnings
{.interpreted-text role="ref"} docs on filter precedence/order when using multiple@pytest.mark.filterwarnings <pytest.mark.filterwarnings ref>
{.interpreted-text role="ref"} marks.
Contributor-facing changes
- #12497: Fixed two failing pdb-related tests on Python 3.13.
v8.3.3
pytest 8.3.3 (2024-09-09)
Bug fixes
-
#12446: Avoid calling
@property
(and other instance descriptors) during fixture discovery -- byasottile
{.interpreted-text role="user"} -
#12659: Fixed the issue of not displaying assertion failure differences when using the parameter
--import-mode=importlib
in pytest>=8.1. -
#12667: Fixed a regression where type change in [ExceptionInfo.errisinstance]{.title-ref} caused [mypy]{.title-ref} to fail.
-
#12744: Fixed typing compatibility with Python 3.9 or less -- replaced [typing.Self]{.title-ref} with [typing_extensions.Self]{.title-ref} -- by
Avasam
{.interpreted-text role="user"} -
#12745: Fixed an issue with backslashes being incorrectly converted in nodeid paths on Windows, ensuring consistent path handling across environments.
-
#6682: Fixed bug where the verbosity levels where not being respected when printing the "msg" part of failed assertion (as in
assert condition, msg
). -
#9422: Fix bug where disabling the terminal plugin via
-p no:terminal
would cause crashes related to missing theverbose
option.-- by
GTowers1
{.interpreted-text role="user"}
Improved documentation
- #12663: Clarify that the [pytest_deselected]{.title-ref} hook should be called from [pytest_collection_modifyitems]{.title-ref} hook implementations when items are deselected.
- #12678: Remove erroneous quotes from [tmp_path_retention_policy]{.title-ref} example in docs.
Miscellaneous internal changes
- #12769: Fix typos discovered by codespell and add codespell to pre-commit hooks.
pytest-dev/pytest-env (pytest-env)
v1.1.5
What's Changed
- Improve the CI by @gaborbernat in https://github.com/pytest-dev/pytest-env/pull/101
Full Changelog: https://github.com/pytest-dev/pytest-env/compare/1.1.4...1.1.5
v1.1.4
Full Changelog: https://github.com/pytest-dev/pytest-env/compare/1.1.3...1.1.4
python-gitlab/python-gitlab (python-gitlab)
v4.13.0
Chores
-
deps: Update all non-major dependencies (
c3efb37
)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Features
-
api: Add support for project Pages API
(
0ee0e02
)
v4.12.2
Bug Fixes
When an error occurs, raise GitlabHeadError
in project.files.head()
method.
Closes: #3004
v4.12.1
Bug Fixes
-
ci: Do not rely on GitLab.com runner arch variables (#3003,
c848d12
) -
files: Correctly raise GitlabGetError in get method (
190ec89
)
Chores
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
-
deps: Update gitlab/gitlab-ee docker tag to v17.4.1-ee.0
(
64eed5d
)
v4.12.0
Bug Fixes
- fix(api): head requests for projectfilemanager
Co-authored-by: Patrick Evans patrick.evans@gehealthcare.com
Co-authored-by: Nejc Habjan hab.nejc@gmail.com
Chores
pylint 3.3.1 appears to have added "too-many-positional-arguments" check with a value of 5.
I don't disagree with this, but we have many functions which exceed this value. We might think about converting some of positional arguments over to keyword arguments in the future. But that is for another time.
For now disable the check across the project.
-
deps: Update all non-major dependencies (
ae132e7
) -
deps: Update all non-major dependencies (
10ee58a
) -
deps: Update dependency types-setuptools to v75 (
a2ab54c
) -
deps: Update gitlab/gitlab-ee docker tag to v17.3.2-ee.0 (
5cd1ab2
) -
deps: Update gitlab/gitlab-ee docker tag to v17.4.0-ee.0 (
8601808
)
Features
v4.11.1
Bug Fixes
-
client: Ensure type evaluations are postponed
(
b41b2de
)
v4.11.0
Chores
-
deps: Update all non-major dependencies (
fac8bf9
) -
deps: Update all non-major dependencies (
88c7529
) -
deps: Update dependency types-setuptools to v74 (
bdfaddb
) -
pre-commit: Add deps (
fe5e608
)
Documentation
-
objects: Fix typo in get latest pipeline
(
b9f5c12
)
Features
-
Add a minimal GraphQL client (
d6b1b0a
) -
api: Add exclusive GET attrs for /groups/:id/members (
d44ddd2
) -
api: Add exclusive GET attrs for /projects/:id/members (
e637808
) -
client: Add retry handling to GraphQL client (
8898c38
) -
client: Make retries configurable in GraphQL (
145870e
)
Refactoring
-
client: Move retry logic into utility
(
3235c48
)
python-poetry/poetry (python-poetry/poetry)
v1.8.5
Changed
- Require
pkginfo>=1.12
to fix an issue with an unknown metadata version 2.4 (#9888). - Do not fail if the unknown metadata version is only a minor version update (#9888).
v1.8.4
Added
- Add official support for Python 3.13 (#9523).
Changed
- Require
virtualenv>=20.26.6
to mitigate potential command injection when runningpoetry shell
in untrusted projects (#9757).
1.9.1
)
poetry-core (- Add
3.13
to the list of available Python versions (#747).
v1.8.3
Added
- Add support for untagged CPython builds with versions ending with a
+
(#9207).
Changed
- Require
pkginfo>=1.10
to ensure support for packages with metadata version 2.3 (#9130). - Improve locking on FIPS systems (#9152).
Fixed
- Fix an issue where unrecognized package metadata versions silently resulted in empty dependencies (#9203, #9226).
- Fix an issue where trailing slashes in git URLs where not handled correctly (#9205).
- Fix an issue where
poetry self
commands printed a warning that the current project cannot be installed (#9302). - Fix an issue where
poetry install
sporadically failed with aKeyError
due to a race condition (#9335).
Docs
- Fix incorrect information about
poetry shell
(#9060). - Add a git subdirectory example to
poetry add
(#9080). - Mention interactive credential configuration (#9074).
- Add notes for optional advanced installation steps (#9098).
- Add reference to configuration credentials in documentation of poetry
publish
(#9110). - Improve documentation for configuring credentials via environment variables (#9121).
- Remove misleading wording around virtual environments (#9213).
- Remove outdated advice regarding seeding keyring backends (#9164).
- Add a
pyproject.toml
example for a dependency with multiple extras (#9138). - Clarify help of
poetry add
(#9230). - Add a note how to configure credentials for TestPyPI for
poetry publish
(#9255). - Fix information about the
--readme
option inpoetry new
(#9260). - Clarify what is special about the Python constraint in
dependencies
(#9256). - Update how to uninstall plugins via
pipx
(#9320).
timothycrosley/isort (timothycrosley/isort)
v5.13.2
- Apply the bracket fix from issue #471 only for use_parentheses=True (#2184) @bp72
- Confine pre-commit to stages (#2213) @davidculley
- Fixed colors extras (#2212) @staticdev
v5.13.1
- Fixed integration tests (#2208) @bp72
- Fixed normalizing imports from more than one level of parent modules (issue/2152) (#2191) @bp72
- Remove optional dependencies without extras (#2207) @staticdev
v5.13.0
- Cleanup deprecated extras (#2089) @staticdev
- Fixed #1989: settings lookup when working in stream based mode
- Fixed 80 line length for wemake linter (#2183) @skatromb
- Add support for Python 3.12 (#2175) @hugovk
- Fixed: add newest version to pre-commit docs (#2190) @AzulGarza
- Fixed assertions in test_git_hook (#2196) @mgorny
- Removed check for include_trailing_comma for the Hanging Indent wrap mode (#2192) @bp72
- Use the standard library tomllib on sufficiently new python (#2202) @eli-schwartz
- Update pre-commit.md version number (#2197) @nicobako
- doc: Update black_compatibility.md (#2177) @JSS95
- Fixed safety sept 2023 (#2178) @staticdev
- docs: fix black profile documentation (#2163) @nijel
- Fixed typo: indended -> indented (#2161) @vadimkerr
- Docs(configuration/options.md): fix missing trailing spaces for hard linebreak (#2157) @JoeyTeng
- Update pre-commit.md (#2148) @godiard
- chore: move configurations to pyproject.toml (#2115) @SauravMaheshkar
- Fixed typo in README (#2112) @stefmolin
- Update version in pre-commit setup to avoid installation issue with poetry (#2103) @stefmolin
- Skip .pytype directory by default. (#2098) @manueljacob
- Fixed a tip block styling in the Config Files section (#2097) @Klavionik
- Do not cache configuration files (#1995) @kaste
- Derive settings_path from --filename (#1992) @kaste
- Fixed year of version 5.12.0 in CHANGELOG.md (#2082) @DjLegolas
uis/devops/ucam-faas-python/ucam-faas (ucam-faas)
v0.8.0
Changed
- Loosen gunicorn dependency constraint to allow gunicorn >=22.0.0
v0.7.2
Added
- Release docker images through multi-stage-docker-build CI template
uis/devops/continuous-delivery/ci-templates (uis/devops/continuous-delivery/ci-templates)
v4.6.0
v4.5.1
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.