apischema
apischema copied to clipboard
Bump the benchmark group across 1 directory with 8 updates
Bumps the benchmark group with 8 updates in the /benchmark directory:
Package | From | To |
---|---|---|
cattrs | 23.1.2 |
23.2.3 |
marshmallow | 3.20.1 |
3.21.2 |
mashumaro | 3.10 |
3.13 |
matplotlib | 3.8.0 |
3.9.0 |
pandas | 2.1.1 |
2.2.2 |
pydantic | 2.4.2 |
2.7.2 |
typedload | 2.26 |
2.31 |
pyserde | 0.12.3 |
0.17.1 |
Updates cattrs
from 23.1.2 to 23.2.3
Release notes
Sourced from cattrs's releases.
v23.2.3
- Fix a regression when unstructuring dictionary values typed as
Any
. (#453 #462)- Fix a regression when unstructuring unspecialized generic classes. (#465 #466)
- Optimize function source code caching. (#445 #464)
- Generate unique files only in case of linecache enabled. (#445 #441)
v23.2.2
- Fix a regression when unstructuring
Any | None
. (#453)v23.2.1
23.2.1 (2023-11-18)
For the v23.2.0 release notes, see here.
v23.2.0
23.2.0 (2023-11-17)
Welcome to cattrs 23.2.0! Thanks to all our wonderful contributors, this release happens to have the largest changelog so far.
Here are some of the noteworthy additions, see below for the entire changelog.
More Powerful Unions in preconf
Courtesy of the union passthrough strategy, the following class (and others like it, this is just a complex example) will work out-of-the-box on any preconf converter:
@define class MyClass: my_field: str | Literal[1] | MyOtherClass
The strategy has been preapplied to all preconf converters, but it can be manually applied to any converter.
Default Disambiguation via Literals
When structuring a union of attrs classes, cattrs will default to the default union strategy.
This strategy works by finding required unique fields in the given classes. It has been enhanced with support for matching on fields annotated as Literals.
from typing import Literal </tr></table>
... (truncated)
Changelog
Sourced from cattrs's changelog.
23.2.3 (2023-11-30)
- Fix a regression when unstructuring dictionary values typed as
Any
. (#453 #462)- Fix a regression when unstructuring unspecialized generic classes. (#465 #466)
- Optimize function source code caching. (#445 #464)
- Generate unique files only in case of linecache enabled. (#445 #441)
23.2.2 (2023-11-21)
23.2.1 (2023-11-18)
23.2.0 (2023-11-17)
- Potentially breaking: skip attrs fields marked as
init=False
by default. This change is potentially breaking for unstructuring. See here for instructions on how to restore the old behavior. (#40 #395)- Potentially breaking: {py:func}
cattrs.gen.make_dict_structure_fn
and {py:func}cattrs.gen.typeddicts.make_dict_structure_fn
will use the values for thedetailed_validation
andforbid_extra_keys
parameters from the given converter by default now. If you're using these functions directly, the old behavior can be restored by passing in the desired values directly. (#410 #411)- Potentially breaking: The default union structuring strategy will also use fields annotated as
typing.Literal
to help guide structuring. See here for instructions on how to restore the old behavior. (#391)- Python 3.12 is now supported. Python 3.7 is no longer supported; use older releases there. (#424)
- Implement the
union passthrough
strategy, enabling much richer union handling for preconfigured converters. Learn more here.- Introduce the
use_class_methods
strategy. Learn more here. (#405)- The
omit
parameter of {py:func}cattrs.override
is now of typebool | None
(frombool
).None
is the new default and means to apply default cattrs handling to the attribute, which is to omit the attribute if it's marked asinit=False
, and keep it otherwise.- Converters can now be initialized with custom fallback hook factories for un/structuring. (#331 #441)
- Add support for
date
to preconfigured converters. (#420)- Add support for
datetime.date
s to the PyYAML preconfigured converter. (#393)- Fix {py:func}
format_exception() <cattrs.v.format_exception>
parameter working for recursive calls to {py:func}transform_error <cattrs.transform_error>
. (#389)- attrs aliases are now supported, although aliased fields still map to their attribute name instead of their alias by default when un/structuring. (#322 #391)
- Fix TypedDicts with periods in their field names.
... (truncated)
Commits
5dc43b3
v23.2.33f63212
Flesh out history48cb3d0
Fix unstructuring underspecified generics (#466)88d4758
Optimize linecaching (#464)5b1fa6a
Fix dict value unstructuring (#462)b47f446
Avoid linecache unique file generation in case of linecache disabled (#461)bed932c
v23.2.2281f324
Fix regression (#454)c098cd8
v23.2.125d15d6
Import typing_extensions.TypeAlias only on python < 3.11 (#447)- Additional commits viewable in compare view
Updates marshmallow
from 3.20.1 to 3.21.2
Changelog
Sourced from marshmallow's changelog.
3.21.2 (2024-05-01)
Bug fixes:
- Allow timestamp 0 in
fields.DateTime
(:issue:2133
). Thanks :user:flydzen
for reporting.3.21.1 (2024-03-04)
Bug fixes:
- Fix error message when field is declared as a class and not an instance (:issue:
2245
). Thanks :user:travnick
for reporting.3.21.0 (2024-02-26)
Bug fixes:
- Fix validation of
URL
fields to allow missing user field, per NWG RFC 3986 (:issue:2232
). Thanks :user:ddennerline3
for reporting and :user:deckar01
for the PR.Other changes:
- Backwards-incompatible:
__version__
,__parsed_version__
, and__version_info__
attributes are deprecated (:issue:2227
). Use feature detection orimportlib.metadata.version("marshmallow")
instead.3.20.2 (2024-01-09)
Bug fixes:
- Fix
Nested
field type hint for lambdaSchema
types (:pr:2164
). Thanks :user:somethingnew2-0
for the PR.Other changes:
- Officially support Python 3.12 (:pr:
2188
). Thanks :user:hugovk
for the PR.
Commits
511b8c5
Bump version and update changelog03f56a4
Merge pull request #2264 from marshmallow-code/allow_timestamp_058fbbcd
Encapsulate timestamp boolean check in utils6e72beb
DateTime field: reject timestamp True/False845f573
DateTime field: allow timestamp 0183c411
Merge pull request #2263 from marshmallow-code/pre-commit-ci-update-config2d6e5c2
Use format specifiers instead of percent formata2ee924
[pre-commit.ci] pre-commit autoupdate38dc356
[pre-commit.ci] pre-commit autoupdateccc8c72
Bump sphinx from 7.3.6 to 7.3.7- Additional commits viewable in compare view
Updates mashumaro
from 3.10 to 3.13
Release notes
Sourced from mashumaro's releases.
v3.13
Changes
- Added support for Python 3.13 (#208, #209)
- Added support for PEP 695 (#211)
- Added initial support for PEP 696 with typing-extensions 4.11.0 reference implementation (#216)
- Added support for
MappingProxyType
(#218)- Added
forbid_extra_keys
config option to reject extra keys on deserialization (#197, #198)- Added an alternative way to assign a field alias with
Alias(...)
annotation (#214), see updated documentation- Improved union encoding performance (#194)
- Fixed a case when
omit_default
didn't work forEnum
with basic types mixed in (#204)- Fixed
RecursionError
when annotatedSerializationStrategy
was used as a field serialization strategy (#219)v3.12
Changes
- Added support for associating multiple tags with a single variant by returning a list of tags from
variant_tagger_fn
(#184)- Added support for locally defined types (#180, #182, #189)
- Added support for
ForwardRef
in JSON Schema generation (#187)- Fixed serialization of
IntFlag
whenomit_default
is enabled (#188)- Improved type annotations for
serialization_strategy
config optionv3.11
Changes
- Added "codecs" feature to separate data models from serialization and work with top-level lists, dataclasses without mixins etc. (#108, #69), see updated documentation
- Added new
allow_deserialization_not_by_alias
config option to allow deserialization by both alias and field name, see documentation (Fatal1ty/mashumaro#175)- Fixed
UnserializableDataError
for generic serializable types and generic serialization strategies with postponed evaluation of annotations (#177)- Fixed regression when
ValueError
was not thrown if invalid value type was passed tofrom_*
method- Added
serialize_by_alias
dialect option- Added
namedtuple_as_dict
dialect option
Commits
bffc024
Bump version28c1521
Merge branch 'update-github-actions'a1845fa
Revert "Try to use Python 3.13 on Windows"e5abdda
Try to fix ignore_errors optionac64553
Fix duplicated sectione8c92a5
Set ignore_errors to ignore SyntaxError on old Python versions12612a0
Try to use Python 3.13 on Windowsc6c4181
Update actions1791aab
Merge pull request #220 from Fatal1ty/fix-field-annotated-strategyb00f834
Fix RecursionError on annotated serialization strategy for a dataclass field- Additional commits viewable in compare view
Updates matplotlib
from 3.8.0 to 3.9.0
Release notes
Sourced from matplotlib's releases.
REL: 3.9.0
Highlights of this release include:
- Plotting and Annotation improvements
- Axes.inset_axes is no longer experimental
- Legend support for Boxplot
- Percent sign in pie labels auto-escaped with usetex=True
- hatch parameter for stackplot
- Add option to plot only one half of violin plot
- axhline and axhspan on polar axes
- Subplot titles can now be automatically aligned
- axisartist can now be used together with standard Formatters
- Toggle minorticks on Axis
- StrMethodFormatter now respects axes.unicode_minus
- Figure, Axes, and Legend Layout
- Subfigures now have controllable zorders
- Getters for xmargin, ymargin and zmargin
- Mathtext improvements
- mathtext documentation improvements
- mathtext spacing corrections
- Widget Improvements
- Check and Radio Button widgets support clearing
- 3D plotting improvements
- Setting 3D axis limits now set the limits exactly
- Other improvements
- New BackendRegistry for plotting backends
- Add widths, heights and angles setter to EllipseCollection
- image.interpolation_stage rcParam
- Arrow patch position is now modifiable
- NonUniformImage now has mouseover support
REL: v3.9.0rc2
This is the second release candidate for the meso release 3.9.0.
REL: v3.8.4
This is the fourth micro release of the 3.8 series.
Highlights of the 3.8.4 release include:
- Enable building against numpy 2.0; released wheels are built against numpy 2
- macosx: Clean up single-shot timers correctly
- Add a draw during show for macos backend
- Fix color sequence data for Set2 and Set3
- gtk: Ensure pending draws are done before GTK draw
- Update "Created with" url in hand.svg
- Avoid modifying user input to Axes.bar
- fix quiver3d incorrect arrow colors
REL: v3.8.3
This is the third micro release of the 3.8 series.
... (truncated)
Commits
be56634
REL: v3.9.0846ce8a
DOC: Finish documentation for 3.9.08604f67
Merge pull request #28206 from meeseeksmachine/auto-backport-of-pr-28205-on-v...196c8db
TST: Followup corrections to #28205d8f3016
Backport PR #28205: TST: Fix tests with older versions of ipython4db5ac9
Merge pull request #28203 from QuLogic/auto-backport-of-pr-28164-on-v3.9.xef1a2db
Merge pull request #28204 from meeseeksmachine/auto-backport-of-pr-28195-on-v...e4384b8
Merge pull request #28191 from QuLogic/no-dev-theme3b65546
Backport PR #28195: TST: Prepare for pytest 91b526c3
Backport PR #28164: CI: Ensure code coverage is always uploaded- Additional commits viewable in compare view
Updates pandas
from 2.1.1 to 2.2.2
Release notes
Sourced from pandas's releases.
Pandas 2.2.2
We are pleased to announce the release of pandas 2.2.2. This release includes some new features, bug fixes, and performance improvements. We recommend that all users upgrade to this version.
See the full whatsnew for a list of all the changes. Pandas 2.2.2 supports Python 3.9 and higher.
The release will be available on the defaults and conda-forge channels:
conda install pandas
Or via PyPI:
python3 -m pip install --upgrade pandas
Please report any issues with the release on the pandas issue tracker.
Thanks to all the contributors who made this release possible.
Pandas 2.2.1
We are pleased to announce the release of pandas 2.2.1. This release includes some new features, bug fixes, and performance improvements. We recommend that all users upgrade to this version.
See the full whatsnew for a list of all the changes. Pandas 2.2.1 supports Python 3.9 and higher.
The release will be available on the defaults and conda-forge channels:
conda install pandas
Or via PyPI:
python3 -m pip install --upgrade pandas
Please report any issues with the release on the pandas issue tracker.
Thanks to all the contributors who made this release possible.
Pandas 2.2.0
We are pleased to announce the release of pandas 2.2.0. This release includes some new features, bug fixes, and performance improvements. We recommend that all users upgrade to this version.
See the full whatsnew for a list of all the changes. Pandas 2.2.0 supports Python 3.9 and higher.
The release will be available on the defaults and conda-forge channels:
conda install pandas
Or via PyPI:
... (truncated)
Commits
d9cdd2e
RLS: 2.2.298aeac9
Backport PR #58209: CI: Pin blosc to fix pytables (#58211)5466f15
Backport PR #58202: DOC/TST: Document numpy 2.0 support and add tests… (#58208)45b0b32
Backport PR #58203 on branch 2.2.x (DOC: Add release date/contributors for 2....c7ec566
Backport PR #58087 on branch 2.2.x (BLD: Build wheels using numpy 2.0rc1) (#5...691fc88
Backport PR #58181 on branch 2.2.x (CI: correct error msg in test_view_index)...a947587
Backport PR #58138 on branch 2.2.x (BLD: Fix nightlies not building) (#58140)b56842d
Backport PR #58100 on branch 2.2.x (MNT: fix compatibility with beautifulsoup...0f83d50
Revert "BLD: Pin numpy on 2.2.x" (#58093)e9b81ee
Backport PR #58126: BLD: Build wheels with numpy 2.0rc1 (#58127)- Additional commits viewable in compare view
Updates pydantic
from 2.4.2 to 2.7.2
Release notes
Sourced from pydantic's releases.
v2.7.2 (2024-05-28)
What's Changed
Packaging
- Bump
pydantic-core
tov2.18.3
by@sydney-runkle
in #9515Fixes
- Replace
__spec__.parent
with__package__
by@hramezani
in #9331- Fix validation of
int
s with leading unary minus by@RajatRajdeep
in pydantic/pydantic-core#1291- Fix
str
subclass validation for enums by@sydney-runkle
pydantic/pydantic-core#1273
pydantic/pydantic-core#1273- Support
BigInt
s inLiteral
s andEnum
s by@samuelcolvin
pydantic/pydantic-core#1297
pydantic/pydantic-core#1297- Fix: uuid - allow
str
subclass as input by@davidhewitt
pydantic/pydantic-core#1296
pydantic/pydantic-core#1296Full Changelog: https://github.com/pydantic/pydantic/compare/v2.7.1...v2.7.2/
v2.7.1 (2024-04-23)
What's Changed
Packaging
- Bump
pydantic-core
tov2.18.2
by@sydney-runkle
in #9307New Features
- Ftp and Websocket connection strings support by
@CherrySuryp
in #9205Changes
- Use field description for RootModel schema description when there is
…
by@LouisGobert
in #9214Fixes
- Fix
validation_alias
behavior withmodel_construct
forAliasChoices
andAliasPath
by@sydney-runkle
in #9223- Revert
typing.Literal
and import it outside the TYPE_CHECKING block by@frost-nzcr4
in #9232- Fix
Secret
serialization schema, applicable for unions by@sydney-runkle
in #9240- Fix
strict
application tofunction-after
withuse_enum_values
by@sydney-runkle
in #9279- Address case where
model_construct
on a class which definesmodel_post_init
fails withAttributeError
by@babygrimes
in #9168- Fix
model_json_schema
with config types by@NeevCohen
in #9287- Support multiple zeros as an
int
by@samuelcolvin
in pydantic/pydantic-core#1269- Fix validation of
int
s with leading unary plus by@cknv
in pydantic/pydantic-core#1272- Fix interaction between
extra != 'ignore'
andfrom_attributes=True
by@davidhewitt
in pydantic/pydantic-core#1276- Handle error from
Enum
'smissing
function asValidationError
by@sydney-runkle
in pydantic/pydantic-core#1274- Fix memory leak with
Iterable
validation by@davidhewitt
in pydantic/pydantic-core#1271New Contributors
@zzstoatzz
made their first contribution in #9219@frost-nzcr4
made their first contribution in #9232
... (truncated)
Changelog
Sourced from pydantic's changelog.
v2.7.2 (2024-05-28)
What's Changed
Packaging
- Bump
pydantic-core
tov2.18.3
by@sydney-runkle
in #9515Fixes
- Replace
__spec__.parent
with__package__
by@hramezani
in #9331- Fix validation of
int
s with leading unary minus by@RajatRajdeep
in pydantic/pydantic-core#1291- Fix
str
subclass validation for enums by@sydney-runkle
in pydantic/pydantic-core#1273- Support
BigInt
s inLiteral
s andEnum
s by@samuelcolvin
in pydantic/pydantic-core#1297- Fix: uuid - allow
str
subclass as input by@davidhewitt
in pydantic/pydantic-core#1296v2.7.1 (2024-04-23)
What's Changed
Packaging
- Bump
pydantic-core
tov2.18.2
by@sydney-runkle
in #9307New Features
- Ftp and Websocket connection strings support by
@CherrySuryp
in #9205Changes
- Use field description for RootModel schema description when there is
…
by@LouisGobert
in #9214Fixes
- Fix
validation_alias
behavior withmodel_construct
forAliasChoices
andAliasPath
by@sydney-runkle
in #9223- Revert
typing.Literal
and import it outside the TYPE_CHECKING block by@frost-nzcr4
in #9232- Fix
Secret
serialization schema, applicable for unions by@sydney-runkle
in #9240- Fix
strict
application tofunction-after
withuse_enum_values
by@sydney-runkle
in #9279- Address case where
model_construct
on a class which definesmodel_post_init
fails withAttributeError
by@babygrimes
in #9168- Fix
model_json_schema
with config types by@NeevCohen
in #9287- Support multiple zeros as an
int
by@samuelcolvin
in pydantic/pydantic-core#1269- Fix validation of
int
s with leading unary plus by@cknv
in pydantic/pydantic-core#1272- Fix interaction between
extra != 'ignore'
andfrom_attributes=True
by@davidhewitt
in pydantic/pydantic-core#1276- Handle error from
Enum
'smissing
function asValidationError
by@sydney-runkle
in pydantic/pydantic-core#1274- Fix memory leak with
Iterable
validation by@davidhewitt
in pydantic/pydantic-core#1271
... (truncated)
Commits
70ac7a0
fix version08d6ed2
Merge branch '2.7' of https://github.com/pydantic/pydantic into 2.742f544a
fix versiona20da21
2.7.2 prep (#9515)f42ae9b
Logfire annoucement (#9362)451f780
Replace__spec__.parent
with__package__
(#9331)2612947
2.7.1 release prep (#9307)2b8efa2
Move TODO regarding pickling to markdown (#9288)73d1049
adds test case for unexpected discriminated union behavior (#9236)c33b925
Change CI to usemacos-13
for Python 3.8 and 3.9 (#9305)- Additional commits viewable in compare view
Updates typedload
from 2.26 to 2.31
Updates pyserde
from 0.12.3 to 0.17.1
Release notes
Sourced from pyserde's releases.
v0.17.1
What's Changed
Bug fixes
- Fix broken code completion for LSP and jedi by
@yukinarit
in yukinarit/pyserde#533Build
- Update coverage requirement from ==7.5.1 to ==7.5.2 by
@dependabot
in yukinarit/pyserde#529- Update msgpack-types requirement from ^0.2 to ^0.3 by
@dependabot
in yukinarit/pyserde#530Documentation
- Remove
@dataclass
from documentation by@yukinarit
in yukinarit/pyserde#531Full Changelog: https://github.com/yukinarit/pyserde/compare/v0.17.0...v0.17.1
v0.17.0
What's Changed
pyserde now experimentally support SQLAlchemy integration. Thanks
@barsa-net
for nice work!@serde class User(Base): __tablename__ = "users"
id: Mapped[int] = mapped_column(primary_key=True) name: Mapped[str] = mapped_column(Text, nullable=False) fullname: Mapped[str] = mapped_column(Text, nullable=False) nickname: Mapped[Optional[str]] = mapped_column(Text) attributes: Mapped[Optional[dict[str, str]]] = mapped_column(JSON) projects: Mapped[list[Project]] = relationship(backref="owner")
New features
- feat: add support for SQLAlchemy dataclass-mapped tables by
@barsa-net
in yukinarit/pyserde#518Build
- Update coverage requirement from ==7.5.0 to ==7.5.1 by
@dependabot
in yukinarit/pyserde#523- Update pre-commit requirement from ==v3.7.0 to ==v3.7.1 by
@dependabot
in yukinarit/pyserde#526New Contributors
@barsa-net
made their first contribution in yukinarit/pyserde#518Full Changelog: https://github.com/yukinarit/pyserde/compare/v0.16.1...v0.17.0
v0.16.1
What's Changed
... (truncated)
Commits
ad0aa3e
Merge pull request #533 from yukinarit/fix-completion-for-lsp912feda
Add test for code completionfb95327
Use Type[T] instead of type[T] in@serde
858d658
Merge pull request #531 from yukinarit/remove-@dataclass-from-docs
ebb9892
Remove@dataclass
from documentationcfb4b60
Merge pull request #530 from yukinarit/dependabot/pip/msgpack-types-tw-0.3ee56969
Merge pull request #529 from yukinarit/dependabot/pip/coverage-eq-7.5.2cd48be5
Update msgpack-types requirement from ^0.2 to ^0.3513aecb
Update coverage requirement from ==7.5.1 to ==7.5.2fb284ef
Merge pull request #527 from yukinarit/update-contributors- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot show <dependency name> ignore conditions
will show all of the ignore conditions of the specified dependency -
@dependabot ignore <dependency name> major version
will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) -
@dependabot ignore <dependency name> minor version
will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) -
@dependabot ignore <dependency name>
will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) -
@dependabot unignore <dependency name>
will remove all of the ignore conditions of the specified dependency -
@dependabot unignore <dependency name> <ignore condition>
will remove the ignore condition of the specified dependency and ignore conditions