wyfo / apischema

JSON (de)serialization, GraphQL and JSON schema generation using Python typing.
https://wyfo.github.io/apischema/
MIT License
226 stars 18 forks source link

Bump the benchmark group in /benchmark with 7 updates #594

Closed dependabot[bot] closed 10 months ago

dependabot[bot] commented 11 months ago

Bumps the benchmark group in /benchmark with 7 updates:

Package From To
cattrs 22.2.0 23.1.2
marshmallow 3.19.0 3.20.1
mashumaro 3.2 3.10
matplotlib 3.6.2 3.8.0
pandas 1.5.2 2.1.1
typedload 2.20 2.26
pyserde 0.9.6 0.12.3

Updates cattrs from 22.2.0 to 23.1.2

Changelog

Sourced from cattrs's changelog.

23.1.2 (2023-06-02)

  • Improve typing_extensions version bound. (#372)

23.1.1 (2023-05-30)

  • Add typing_extensions as a direct dependency on 3.10. (#369 #370)

23.1.0 (2023-05-30)

  • Introduce the tagged_union strategy. (#318 #317)
  • Introduce the cattrs.transform_error helper function for formatting validation exceptions. (258 342)
  • Add support for typing.TypedDict and typing_extensions.TypedDict. (#296 #364)
  • Add support for typing.Final. (#340 #349)
  • Introduce override.struct_hook and override.unstruct_hook. Learn more here. (#326)
  • Fix generating structuring functions for types with angle brackets (<>) and pipe symbols (|) in the name. (#319 #327)
  • pathlib.Path is now supported by default. (#81)
  • Add cbor2 serialization library to the cattrs.preconf package.
  • Add optional dependencies for cattrs.preconf third-party libraries. (#337)
  • All preconf converters now allow overriding the default unstruct_collection_overrides in make_converter. (#350 #353)
  • Subclasses structuring and unstructuring is now supported via a custom include_subclasses strategy. (#312)
  • Add support for typing_extensions.Annotated when the python version is less than 3.9. (#366)
  • Add unstructuring and structuring support for the standard library deque. (#355)
Commits


Updates marshmallow from 3.19.0 to 3.20.1

Changelog

Sourced from marshmallow's changelog.

3.20.1 (2023-07-20)


Bug fixes:

  • Fix call to get_declared_fields: pass dict_cls again (:issue:2152). Thanks :user:Cheaterman for reporting.

3.20.0 (2023-07-20)


Features:

  • Add absolute parameter to URL validator and Url field (:pr:2123). Thanks :user:sirosen for the PR.
  • Use Abstract Base Classes to define FieldABC and SchemaABC (:issue:1449). Thanks :user:aditkumar72 for the PR.
  • Use OrderedSet as default set_class. Schemas are now ordered by default. (:issue:1744)

Bug fixes:

  • Handle OSError and OverflowError in utils.from_timestamp (:pr:2102). Thanks :user:TheBigRoomXXL for the PR.
  • Fix the default inheritance of nested partial schemas (:issue:2149). Thanks :user:matejsp for reporting.

Other changes:

  • Officially support Python 3.11 (:pr:2067).
  • Drop support for Python 3.7 (:pr:2135).
Commits
  • dda9a80 Bump version and update changelog
  • fc65bc2 Merge pull request #2153 from marshmallow-code/fix_call_to_get_declared_fields
  • bdcd950 Fix call to get_declared_fields: pass dict_cls
  • 3d92995 Bump version and update changelog
  • 03889c6 Merge pull request #1896 from marshmallow-code/ordered_set_default
  • 91147b2 Merge pull request #2150 from deckar01/2149-default-nested-partial
  • 10afde1 Fix the default inheritance of nested partial schemas
  • 1b2ab4f Normalize the default for partial in Schema to None
  • 8197492 [pre-commit.ci] pre-commit autoupdate
  • 6abbfca Add test_set_dict_class
  • Additional commits viewable in compare view


Updates mashumaro from 3.2 to 3.10

Release notes

Sourced from mashumaro's releases.

v3.10

Changes

  • Added new sort_keys config option to sort keys on serialization, see documentation (#157)
  • Added new omit_default config and dialect options to exclude values equal to defaults on serialization, see documentation (#161)
  • Added variant_tagger_fn discriminator parameter to allow discrimination based on a key that is not part of the model, see documentation (#135)
  • Added new no_copy_collections dialect option to avoid collection data types copying, see documentation (#163)
  • Added support for LiteralString (#166)
  • Added initial support for ForwardRef types (#144)
  • Added ability to use basic types as serialization methods so that they will be reflected in the JSON schema (#148)
  • Added ability to use slots in SerializableType and GenericSerializableType subclasses (#156)
  • Added ability to use frozen dataclasses as dictionary keys (#160)
  • Added support for Python 3.12 (#153)
  • Dropped support for Python 3.7 (#147)
  • Moved from flake8 to ruff (#150)

v3.9.1

Changes

  • Fixed handling of collections of annotated with unhashable metadata types on python < 3.9 (#138)
  • Fixed JSON Schema for inner dataclasses and optional fields with custom serialization methods (#139)
  • Fixed JSON Schema for third-party types with default value (#141)

v3.9

Changes

  • Added support for inner dataclasses without mashumaro mixins (#109)
  • Added support for default_factory by JSON Schema generator (#114)
  • Added ability to override additionalProperties in JSON Schema (#123)
  • Added ability to add "description" keyword in JSON Schema by using "description" key in dataclass field metadata (#125)
  • Fixed default reference prefix in JSON Schema 2022-12 dialect (#126)
  • Fixed handling of Annotated type with unhashable metadata (#133)

v3.8.1

Changes

  • Fixed issues introduced in 3.8 when dataclass instantiation produced TypeError if one of the fields was overridden (#118) or post-deserialize hook was used (#120)

v3.8

Changes

  • Added new Discriminator type for discriminated unions and subclasses support, see documentation (#106)
  • Added ability to pass custom context from to_* methods to the hooks, see documentation (#110)
  • Types enclosed in Annotated are now different from unenclosed ones in serialization_strategy, see documentation (#115)
  • Added new lazy_compilation config option that can reduce import time and speed up deserialization, see documentation
  • Added support for Final types (#107)
  • Fixed support for Literal on Python 3.9.0 (#103)
  • Added workaround for mypy problem python/mypy#3186 in JSON Schema number constraints
  • Fixed type substitutions in generic SerializableType when TypeVars were mixed with ordinary types in _serialize / _deserialize annotations
  • Fixed an issue where a sentinel value dataclasses.KW_ONLY resulted in UnserializableDataError

... (truncated)

Commits
  • cc79703 Bump version
  • 7ad1da0 Merge pull request #167 from Fatal1ty/literal-string
  • 17a849e Add support for LiteralString
  • e39a559 Do not call default_factory if we don't need to
  • 1b1187f Merge pull request #165 from Fatal1ty/dataclass-as-dict-key
  • a41392b Allow using frozen dataclasses as dictionary keys
  • c45b182 Merge pull request #154 from Fatal1ty/python3.12
  • f670777 Fix tests
  • 6a6533b Don't install pendulum on python 3.12 temporarily
  • 8ba1cdc Edit no_copy_collections chapter
  • Additional commits viewable in compare view


Updates matplotlib from 3.6.2 to 3.8.0

Release notes

Sourced from matplotlib's releases.

REL: v3.8.0

Highlights of this release include:

  • Type hints for most public APIs
  • Many improvements to Mathtext
    • Addition of \boldsymbol command
    • Additional sizable delimiters
    • Documentation improvements
    • \substack command
    • \middle delimitier
    • \mathbfit for bold italic text
  • 3D plotting improvements
    • Specify tick/axis label positions
    • Improved text for coordinates in interactive sessions
    • Ability to share view angles
  • New plotting method ecdf (empirical cumulative distribution function)

v3.8.0rc1

First release candidate for Matplotlib v3.8.0

REL: v3.7.3

This is the third bugfix release of the 3.7.x series.

This release contains several bug-fixes and adjustments:

  • Add Python 3.12 wheels
  • Update the license for the bundled colorbrewer colormap data
  • Fix Cairo backend when using cairocffi
  • Fix axes_grid1 inset axes with bbox_inches=tight
  • Fix bugs in Path3DCollection / Poly3DCollection constructors
  • Fix setting array labelcolor on Tick
  • Improve compatibility with latest NumPy
  • Stop warning when calling tight_layout multiple times

REL: v3.7.2

This is the second bugfix release of the 3.7.x series.

This release contains several bug-fixes and adjustments:

  • Avoid modifying input masks in pcolor/pcolormesh
  • Fix 3D set_aspect error cases
  • Fix IPython's %pylab mode detection
  • Fix Figure.get_constrained_layout_pads()
  • Fix Legend.set_draggable() with update="bbox"
  • Fix TransformedBbox.{,full_}contains
  • Fix clipping of bar_label text
  • Fix colorbar size when saving with explicit bbox_inches
  • Fix errors when an input is entirely NaN
  • Fix leaks of exception tracebacks and LayoutGrid objects

... (truncated)

Commits
  • 3958242 REL: v3.8.0
  • f1b13a7 Prepare for release v3.8.0
  • b211d60 Merge pull request #26777 from meeseeksmachine/auto-backport-of-pr-26702-on-v...
  • e0eb924 Merge pull request #26775 from meeseeksmachine/auto-backport-of-pr-26767-on-v...
  • 0267cc1 Merge pull request #26776 from meeseeksmachine/auto-backport-of-pr-26687-on-v...
  • f5d17a8 Backport PR #26702: converted coc to rst and put links in code_of_conduct.md
  • 2c458cd Backport PR #26687: Remove usage of recarray
  • 6ce6fe0 Backport PR #26767: Trim Gouraud triangles that contain NaN
  • ec50ff3 Merge pull request #26770 from meeseeksmachine/auto-backport-of-pr-26762-on-v...
  • 661c871 Backport PR #26762: MNT: Numpy 2.0 removals from ndarray class
  • Additional commits viewable in compare view


Updates pandas from 1.5.2 to 2.1.1

Release notes

Sourced from pandas's releases.

Pandas 2.1.1

This is a patch release in the 2.1.x series and includes some regression and bug fixes. We recommend that all users upgrade to this version.

See the full whatsnew for a list of all the changes.

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.1.0

We are pleased to announce the release of pandas 2.1.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.1.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:

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.1.0rc0

We are pleased to announce a release candidate for pandas 2.1.0. If all goes well, we'll release pandas 2.1.0 in about two weeks.

See the [whatsnew][0] for a list of all the changes.

The release will be available on conda-forge and PyPI.

The release can be installed from PyPI

python -m pip install --upgrade --pre pandas==2.1.0rc0

Or from conda-forge

conda install -c conda-forge/label/pandas_rc pandas==2.1.0rc0

... (truncated)

Commits
  • e86ed37 RLS: 2.1.1
  • 84850f3 Backport PR #55206 on branch 2.1.x (BUILD: Fix duplicate files warning) (#55222)
  • 81768de Backport PR #55207 on branch 2.1.x (DOC: Add whatsnew for 2.1.2) (#55221)
  • 7c93cc9 Backport PR #55008 on branch 2.1.x (CoW: Clear dead references every time we ...
  • 21d8cdd Backport PR #55189 on branch 2.1.x (Revert "DEPR: Deprecate returning a DataF...
  • 34cc5b7 Backport PR #55050 on branch 2.1.x (Fix docstring of Index.join in base.py) (...
  • 652fd13 Backport PR #55211 on branch 2.1.x (DOC: Add release date for 2.1.1) (#55218)
  • 7acebe4 Backport PR #54952 on branch 2.1.x (REGR: Arrow backed objects not propagatin...
  • 1ae73af Backport PR #55210 on branch 2.1.x (CI: Pin matplotlib < 3.8) (#55216)
  • cb7ea72 Backport PR #55175 on branch 2.1.x (DEPS: Bump to 1.26 proper for Python 3.12...
  • Additional commits viewable in compare view


Updates typedload from 2.20 to 2.26

Release notes

Sourced from typedload's releases.

2.26

  • Update type hints file

2.25

  • Improve performance for loading objects (attrs/dataclasses/NamedTuple)
  • Improve performance for loading dictionary keys that are basic types
  • Improve performance for loading dataclasses
  • Switch performance tests to test against pydantic2

2.24

  • Drop support to Python 3.7 (which has reached EOL)
  • Make is_optional slightly faster
  • Keep track of the index when loading iterables the first time It makes the normal case slightly slower, and gives massive performance improvements when exceptions are raised.

2.23

  • When loading a string into datetime.date/time/datetime, ISO 8601 is used
  • When dumping, setting isodates=True dumps an ISO 8601 string instead of a list of ints. The previous behaviour is now deprecated.
  • Add support for datetime.timedelta. It is dumped as a float representing seconds
  • Deprecate dump handlers without type hints
  • Improve performance for dumping, by carrying type hints
  • Remove jsons and dataclasses-json from benchmarks. They were too slow to be a useful comparison.

2.22

  • Improve loading time for literals
  • Support attrs converter

2.21

  • Drop support to Python 3.5 and 3.6
  • Improve performance for dumping
  • Generate pure python wheel
Changelog

Sourced from typedload's changelog.

2.26

  • Update type hints file

2.25

  • Improve performance for loading objects (attrs/dataclasses/NamedTuple)
  • Improve performance for loading dictionary keys that are basic types
  • Improve performance for loading dataclasses
  • Switch performance tests to test against pydantic2

2.24

  • Drop support to Python 3.7 (which has reached EOL)
  • Make is_optional slightly faster
  • Keep track of the index when loading iterables the first time It makes the normal case slightly slower, and gives massive performance improvements when exceptions are raised.

2.23

  • When loading a string into datetime.date/time/datetime, ISO 8601 is used
  • When dumping, setting isodates=True dumps an ISO 8601 string instead of a list of ints. The previous behaviour is now deprecated.
  • Add support for datetime.timedelta. It is dumped as a float representing seconds
  • Deprecate dump handlers without type hints
  • Improve performance for dumping, by carrying type hints
  • Remove jsons and dataclasses-json from benchmarks. They were too slow to be a useful comparison.

2.22

  • Improve loading time for literals
  • Support attrs converter

2.21

  • Drop support to Python 3.5 and 3.6
  • Improve performance for dumping
  • Generate pure python wheel
Commits


Updates pyserde from 0.9.6 to 0.12.3

Release notes

Sourced from pyserde's releases.

v0.12.2

What's Changed

New features

Bug fixes

CI

Build

Documentation

Other changes

New Contributors

Full Changelog: https://github.com/yukinarit/pyserde/compare/v0.12.1...v0.12.2

v0.12.1

What's Changed

Bug fixes

Refactoring

Documentation

Full Changelog: https://github.com/yukinarit/pyserde/compare/v0.12.0...v0.12.1

v0.12.0

What's Changed

New features

This example works correctly now

@serde
@dataclass
class Foo:
</tr></table> 

... (truncated)

Commits
  • fead102 Merge pull request #431 from yukinarit/add-test
  • 59abd5e Add test of alias + rename_all
  • d356168 Merge pull request #430 from yukinarit/fix-alias-optional
  • f8f33df Fix alias of optional type
  • 2855b6b Merge pull request #428 from yukinarit/fix-mypy-de
  • 79b9157 Fix mypy/pyright errors in serde/de.py
  • 89680ed Merge pull request #420 from yukinarit/fix-mypy-se
  • 8c23a5c Fix mypy/pyright errors in serde/se.py
  • 031f4c4 Merge pull request #419 from yukinarit/fix-fetch-depth
  • 013de97 Fix fetch-depth
  • 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 ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore 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 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 ` 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 ` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
wyfo commented 11 months ago

@dependabot rebase