apischema

JSON (de)serialization, GraphQL and JSON schema generation using Python typing.

MIT License

Downloads
78.6K
Stars
226
Committers
14

Bot releases are hidden (Show)

apischema - v0.18.1 Latest Release

Published by wyfo about 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/wyfo/apischema/compare/v0.18.0...v0.18.1

apischema - v0.18.1

Published by wyfo about 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/wyfo/apischema/compare/v0.18.0...v0.18.1

apischema - v0.18.0

Published by wyfo almost 2 years ago

Highlights

  • Limited Python 3.11 support, PEP 646, 655, 673 and 681 will be supported in the next release

What's Changed

New Contributors

Full Changelog: https://github.com/wyfo/apischema/compare/v0.17.5...v0.18.0

apischema - v0.17.5

Published by wyfo over 2 years ago

What's Changed

Full Changelog: https://github.com/wyfo/apischema/compare/v0.17.4...v0.17.5

apischema - v0.17.4

Published by wyfo over 2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/wyfo/apischema/compare/v0.17.3...v0.17.4

apischema - v0.17.3

Published by wyfo almost 3 years ago

What's Changed

Full Changelog: https://github.com/wyfo/apischema/compare/v0.17.2...v0.17.3

apischema -

Published by wyfo almost 3 years ago

What's Changed

Full Changelog: https://github.com/wyfo/apischema/compare/v0.17.1...v0.17.2

apischema - v0.17.1

Published by wyfo almost 3 years ago

What's Changed

Full Changelog: https://github.com/wyfo/apischema/compare/v0.17.0...v0.17.1

apischema - v0.17.0

Published by wyfo almost 3 years ago

Highlights

  • apischema is now compiled! It results in a big performance improvement, as shown on the new benchmark of the documentation. Compiled parts are still optional, and apischema remains a pure Python library.
  • CI/CD has been improved a lot, everything is automated now!
  • Breaking change Arbitrary exception raised during serialization are no more converted to ValidationError (#244) because of a security issue

What's Changed

New Contributors

Full Changelog: https://github.com/wyfo/apischema/compare/v0.16.1...v0.17

apischema - v0.16.6

Published by wyfo almost 3 years ago

  • Fix regression introduced by #280 (#283) by @wyfo
apischema - v0.15.9

Published by wyfo almost 3 years ago

  • Fix regression introduced by #280 (#283) by @wyfo
apischema - v0.15.8

Published by wyfo almost 3 years ago

Fix ForwardRef issue in Python 3.9.8 (#280) by @wyfo

apischema - v0.16.5

Published by wyfo almost 3 years ago

  • Fix ForwardRef issue in Python 3.9.8 (#280) by @wyfo
apischema - v0.16.4

Published by wyfo almost 3 years ago

Add compatibility with graphql-core>=3.0.0 and ignore older versions (#278) by @wyfo

apischema - v0.16.3

Published by wyfo almost 3 years ago

  • Fix Literal deserialization error with unhashable data (#272) by @wyfo
apischema - v0.16.2

Published by wyfo almost 3 years ago

  • Add tuple passthrough to PassThroughOptions (#255) by @wyfo
  • Fix check_type errors raised in the upper type (#259) by @wyfo
  • Fix type converter handling when init return is annotated (#260) by @wyfo
apischema - v0.16.1

Published by wyfo almost 3 years ago

  • Fix ordering handling of after chaining (#228) by @wyfo
apischema - v0.16.0

Published by wyfo almost 3 years ago

Highlights

  • A big thanks to @kevinheavey for the entire documentation revision!
  • Support Python 3.10 and PEP 604
  • Performance improvement with a lot of refactoring and algorithmic optimizations (e.g. passthrough), #171, #191, #204, #205. Next version will go even (a lot) further.
  • Conditional skipping of fields in serialization, #174 and #180
  • Breaking change GraphQL schema use Enum names instead of values, #169
  • Ordering of fields, #192
  • Support of JSON schema 2020-20 and OpenAPI 3.1, #201, and improve schema customization, #215
  • Deprecation apischema.conversions.identity -> apischema.identity, #170, and apischema.metadata.flattened -> apischema.metadata.flatten, #173
  • Deprecation Remove Conversion (de)serialization related parameter (coerce, etc.), #177
  • Deperecation apischema.settings.default_schema is replace by apischema.settings.base_schema, #215

Changes

  • Support unsupported union members (#157) by @wyfo
  • Put AliasedStr in get_alias instead of ObjectField.alias (#158) by @wyfo
  • Fix settings.coercer not used when set (#159) by @wyfo
  • Add as_names conversion for enums (#160) by @wyfo
  • Change ValidationError serialization to {"loc": [], "msg": ""} (#163) by @wyfo
  • Use Enum names insteadof values for GraphQL (#169) by @wyfo
  • Move identity into main package (#170) by @wyfo
  • Add serialization passthrough feature (#171) by @wyfo
  • Rename metadata.flattened to metadata.flatten (#173) by @wyfo
  • Add conditionally skipped fields and none_as_undefined (#174) by @wyfo
  • Remove Conversion (de)serialization parameters (coerce/check_type/etc.) (#177) by @wyfo
  • Reset cache when default converters/object fields/etc. are modified (#179) by @wyfo
  • Allow default_object_fields to override object fields (#181) by @wyfo
  • Add exclusion of defaults/None in serialization (#180) by @wyfo
  • Add ordering metadata to object fields (#192) by @wyfo
  • Fix NewType conversions (#200) by @wyfo
  • Add JSON schema 2020-20 (new default) and OpenAPI 3.1 (#201) by @wyfo
  • Fix conversion of unspecialized generic types (#208) by @wyfo
  • Add base schema and deprecate default_schema. (#215) by @wyfo
  • Improve recursive types handling in method generation (#217) by @wyfo
apischema - v0.15.7

Published by wyfo about 3 years ago

  • Add missing super().init_subclass calls (#210) by @wyfo
apischema - v0.15.6

Published by wyfo about 3 years ago

  • Fix NewType schema (#194) by @wyfo
  • Fix key of serialized object having AliasedStr type instead of str (#195) by @wyfo