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 build group with 14 updates #600

Closed dependabot[bot] closed 10 months ago

dependabot[bot] commented 11 months ago

Bumps the build group with 14 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
pydantic 1.10.2 2.4.2
typedload 2.20 2.26
pyserde 0.9.6 0.12.3
attrs 22.1.0 23.1.0
pytest-cov 4.0.0 4.1.0
pytest-asyncio 0.20.3 0.21.1
sqlalchemy 1.4.45 2.0.22
markdown-include 0.8.0 0.8.1
mkdocs-material 8.5.11 9.4.6

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 pydantic from 1.10.2 to 2.4.2

Release notes

Sourced from pydantic's releases.

v2.4.2 2023-09-27

What's Changed

Fixes

New Contributors

Full Changelog: https://github.com/pydantic/pydantic/compare/v2.4.1...v2.4.2/

v2.4.1 2023-09-26

What's Changed

Packaging

Fixes

Full Changelog: https://github.com/pydantic/pydantic/compare/v2.4.0...v2.4.1/

v2.4.0 2023-09-25

What's Changed

Packaging

New Features

Changes

... (truncated)

Changelog

Sourced from pydantic's changelog.

v2.4.2 (2023-09-27)

GitHub release

What's Changed

Fixes

New Contributors

v2.4.1 (2023-09-26)

GitHub release

What's Changed

Packaging

Fixes

v2.4.0 (2023-09-22)

GitHub release

What's Changed

Packaging

New Features

... (truncated)

Commits
  • d1634da Prepare relese 2.4.2 (#7671)
  • 0e33bd0 Update Pydantic V1 to 1.10.13 (#7675)
  • 154e679 docs: Mixing of V1/V2 models is not supported in generics (#7663)
  • 7193693 Added small note to use ValidationInfo over FieldValidationInfo. (#7670)
  • 1377c04 Fix xfailed test for generic model signatures (#7658)
  • ea9aa13 Fix models_json_schema for generic models (#7654)
  • 97c0199 Fix json schema generation for recursive models (#7653)
  • 861cfe3 Revert "Fix typo in docs for new private dunder pydantic method names (#7657)...
  • 24e9222 Fix typo in docs for new private dunder pydantic method names (#7657)
  • c04e8e2 Correct allowed formats for datetime.timedelta parsing in docs (#7652)
  • 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


Updates attrs from 22.1.0 to 23.1.0

Release notes

Sourced from attrs's releases.

23.1.0

Highlights

A lot of features and smaller bug fixes! But also with a heavy heart, we're leaving the last dataclass-less Python version (3.6) behind, but don't worry: the old versions aren't going anywhere and thanks to the magic of package metadata, pip install attrs should still work on Python 3.6 as if nothing happened.

Special Thanks

This release would not be possible without my generous sponsors! Thank you to all of you making sustainable maintenance possible! If you would like to join them, go to https://github.com/sponsors/hynek and check out the sweet perks!

Above and Beyond

Variomedia AG (@​variomedia), Tidelift (@​tidelift), Sentry (@​getsentry), HiredScore (@​HiredScore), FilePreviews (@​filepreviews), and Daniel Fortunov (@​asqui).

Maintenance Sustainers

Adam Hill (@​adamghill), Dan Groshev (@​si14), Magnus Watn (@​magnuswatn), David Cramer (@​dcramer), Moving Content AG (@​moving-content), Stein Magnus Jodal (@​jodal), ProteinQure (@​ProteinQure), Jesse Snyder (@​jessesnyder), Rivo Laks (@​rivol), Tom Ballinger (@​thomasballinger), @​medecau, Ionel Cristian Mărieș (@​ionelmc), The Westervelt Company (@​westerveltco), Philippe Galvan (@​PhilippeGalvan), Birk Jernström (@​birkjernstrom), Tim Schilling (@​tim-schilling), Chris Withers (@​cjw296), Christopher Dignam (@​chdsbd), and Stefan Hagen (@​sthagen).

Not to forget 3 more amazing humans who chose to be generous but anonymous!

Full Changelog

Backwards-incompatible Changes

  • Python 3.6 has been dropped and packaging switched to static package data using Hatch. #993

Deprecations

  • The support for zope-interface via the attrs.validators.provides validator is now deprecated and will be removed in, or after, April 2024.

    The presence of a C-based package in our developement dependencies has caused headaches and we're not under the impression it's used a lot.

    Let us know if you're using it and we might publish it as a separate package. #1120

Changes

  • attrs.filters.exclude() and attrs.filters.include() now support the passing of attribute names as strings. #1068

  • attrs.has() and attrs.fields() now handle generic classes correctly. #1079

  • Fix frozen exception classes when raised within e.g. contextlib.contextmanager, which mutates their __traceback__ attributes. #1081

  • @frozen now works with type checkers that implement PEP-681 (ex. pyright). #1084

  • Restored ability to unpickle instances pickled before 22.2.0. #1085

  • attrs.asdict()'s and attrs.astuple()'s type stubs now accept the attrs.AttrsInstance protocol. #1090

... (truncated)

Changelog

Sourced from attrs's changelog.

23.1.0 - 2023-04-16

Backwards-incompatible Changes

  • Python 3.6 has been dropped and packaging switched to static package data using Hatch. #993

Deprecations

  • The support for zope-interface via the attrs.validators.provides validator is now deprecated and will be removed in, or after, April 2024.

    The presence of a C-based package in our developement dependencies has caused headaches and we're not under the impression it's used a lot.

    Let us know if you're using it and we might publish it as a separate package. #1120

Changes

  • attrs.filters.exclude() and attrs.filters.include() now support the passing of attribute names as strings. #1068

  • attrs.has() and attrs.fields() now handle generic classes correctly. #1079

  • Fix frozen exception classes when raised within e.g. contextlib.contextmanager, which mutates their __traceback__ attributes. #1081

  • @frozen now works with type checkers that implement PEP-681 (ex. pyright). #1084

  • Restored ability to unpickle instances pickled before 22.2.0. #1085

  • attrs.asdict()'s and attrs.astuple()'s type stubs now accept the attrs.AttrsInstance protocol. #1090

  • Fix slots class cellvar updating closure in CPython 3.8+ even when __code__ introspection is unavailable. #1092

  • attrs.resolve_types() can now pass include_extras to typing.get_type_hints() on Python 3.9+, and does so by default. #1099

  • Added instructions for pull request workflow to CONTRIBUTING.md. #1105

  • Added type parameter to attrs.field() function for use with attrs.make_class().

    Please note that type checkers ignore type metadata passed into make_class(), but it can be useful if you're wrapping attrs. #1107

  • It is now possible for attrs.evolve() (and attr.evolve()) to change fields named inst if the instance is passed as a positional argument.

    Passing the instance using the inst keyword argument is now deprecated and will be removed in, or after, April 2024. #1117

  • attrs.validators.optional() now also accepts a tuple of validators (in addition to lists of validators). #1122

... (truncated)

Commits
  • 1e2f6f9 Prepare 23.1.0
  • 3786d5a Fix next version
  • a7e1a56 Fix missing backtick
  • dadc020 Fix links broken by pyright removing their transform spec
  • bef2f52 Added example for version docstrings to PR template (#1127)
  • c4c6fdd Add literal string support to include and exclude filters (#1068)
  • e4c9f27 CONTRIBUTING: Small improvements (#1123)
  • 683d056 Cull trove classifiers
  • c8b342d Deprecate zope-interface support (#1120)
  • d1aaeee Remove special-casing of pretend version for pytest (
    dependabot[bot] commented 10 months ago

    Looks like these dependencies are updatable in another way, so this is no longer needed.