├── .github ├── FUNDING.yml ├── dependabot.yml └── workflows │ ├── cd.yml │ ├── ci.yml │ └── doc.yml ├── .gitignore ├── .pre-commit-config.yaml ├── LICENSE.txt ├── README.md ├── apischema ├── __init__.py ├── aliases.py ├── cache.py ├── constraints.py ├── conversions │ ├── __init__.py │ ├── conversions.py │ ├── converters.py │ ├── utils.py │ └── visitor.py ├── dataclasses.py ├── dependencies.py ├── deserialization │ ├── __init__.py │ ├── coercion.py │ ├── flattened.py │ └── methods.py ├── discriminators.py ├── fields.py ├── graphql │ ├── __init__.py │ ├── interfaces.py │ ├── relay │ │ ├── __init__.py │ │ ├── connections.py │ │ ├── global_identification.py │ │ ├── mutations.py │ │ └── utils.py │ ├── resolvers.py │ └── schema.py ├── json_schema │ ├── __init__.py │ ├── conversions_resolver.py │ ├── patterns.py │ ├── refs.py │ ├── schema.py │ ├── types.py │ └── versions.py ├── metadata │ ├── __init__.py │ ├── implem.py │ └── keys.py ├── methods.py ├── objects │ ├── __init__.py │ ├── conversions.py │ ├── fields.py │ ├── getters.py │ └── visitor.py ├── ordering.py ├── py.typed ├── recursion.py ├── schemas.py ├── serialization │ ├── __init__.py │ ├── errors.py │ ├── methods.py │ └── serialized_methods.py ├── settings.py ├── std_types.py ├── tagged_unions.py ├── type_names.py ├── types.py ├── typing.py ├── utils.py ├── validation │ ├── __init__.py │ ├── dependencies.py │ ├── errors.py │ ├── mock.py │ └── validators.py └── visitor.py ├── benchmark ├── benchmarks │ ├── __init__.py │ ├── apischema.py │ ├── cattr.py │ ├── marshmallow.py │ ├── mashumaro.py │ ├── pydantic.py │ ├── serde.py │ └── typedload.py ├── common.py ├── data.json ├── main.py └── requirements.txt ├── docs ├── conversions.md ├── data_model.md ├── de_serialization.md ├── difference_with_pydantic.md ├── examples │ ├── attrs_support.md │ ├── inherited_deserializer.md │ ├── pydantic_support.md │ ├── recoverable_fields.md │ ├── sqlalchemy_support.md │ ├── subclass_tagged_union.md │ └── subclass_union.md ├── graphql │ ├── data_model_and_resolvers.md │ ├── overview.md │ ├── relay.md │ └── schema.md ├── index.md ├── json_schema.md ├── optimizations_and_benchmark.md ├── requirements.txt └── validation.md ├── examples ├── __init__.py ├── additional_properties.py ├── additional_types.py ├── alias.py ├── aliaser.py ├── all_refs.py ├── as_names.py ├── as_str.py ├── base_schema.py ├── base_schema_parameter.py ├── bypass_conversions.py ├── class_ordering.py ├── coercion.py ├── coercion_function.py ├── complex_schema.py ├── computed_dependencies.py ├── conversion_object.py ├── conversions.py ├── dataclass_init.py ├── de_serialization_methods.py ├── default_as_set.py ├── definitions_schema.py ├── dependent_required.py ├── deserialization.py ├── deserialization_pass_through.py ├── discard.py ├── discriminator_perf.py ├── dynamic_conversions.py ├── dynamic_conversions_lsp.py ├── dynamic_generic_conversions.py ├── dynamic_type_name.py ├── enum_schemas.py ├── examples │ ├── __init__.py │ ├── attrs_support.py │ ├── inherited_deserializer.py │ ├── pydantic_support.py │ ├── recoverable_fields.py │ ├── sqlalchemy_support.py │ ├── subclass_tagged_union.py │ └── subclass_union.py ├── exclude_defaults_none.py ├── exclude_unset.py ├── fall_back_on_default.py ├── field_conversions.py ├── field_metadata.py ├── field_validator.py ├── fields_set.py ├── flattened.py ├── generic.py ├── generic_conversions.py ├── generic_type_name.py ├── graphql_overview.py ├── graphql_type_name.py ├── id_conversion.py ├── id_type.py ├── inherited_discriminator.py ├── interface.py ├── json_schema.py ├── lazy_as_object.py ├── lazy_registered_conversion.py ├── local_conversions.py ├── multiple_deserializers.py ├── no_copy.py ├── none_as_undefined.py ├── object_deserialization.py ├── object_serialization.py ├── operation.py ├── ordering.py ├── pass_through.py ├── pass_through_primitives.py ├── properties.py ├── pydantic_conversion.py ├── pydantic_validator.py ├── quickstart.py ├── recursive.py ├── recursive_conversions.py ├── recursive_postponned.py ├── ref_factory.py ├── relay_client_mutation_id.py ├── relay_connection.py ├── relay_connection_subclass.py ├── relay_global_id.py ├── relay_mutation.py ├── relay_node.py ├── required.py ├── resolver.py ├── resolver_error.py ├── resolver_metadata.py ├── scalar.py ├── schema.py ├── schema_versions.py ├── serialization.py ├── serialized.py ├── serialized_conversions.py ├── serialized_error.py ├── serialized_generic.py ├── serialized_undefined.py ├── serializer_inheritance.py ├── set_object_fields.py ├── settings_errors.py ├── skip.py ├── skip_if.py ├── strict_union.py ├── sub_conversions.py ├── subscription.py ├── subscription_resolve.py ├── tagged_union.py ├── tagged_union_graphql_schema.py ├── tagged_union_json_schema.py ├── type_name.py ├── undefined.py ├── undefined_default.py ├── union_discriminator.py ├── union_type_name.py ├── validate.py ├── validation_error.py ├── validator.py ├── validator_default.py ├── validator_field.py ├── validator_function.py ├── validator_inheritance.py ├── validator_post_init.py └── validator_yield.py ├── mkdocs.yml ├── pyproject.toml ├── scripts ├── cythonize.py ├── cythonize.sh ├── generate_readme.py ├── generate_tests_from_examples.py ├── requirements.txt ├── sort_all.py └── test_wrapper.py ├── setup.cfg ├── setup.py └── tests ├── __init__.py ├── conftest.py ├── integration ├── __init__.py ├── test_aliased_resolvers.py ├── test_annotated_schema.py ├── test_collections_implies_tuple_passthrough.py ├── test_default_conversion_type_name.py ├── test_descriptor_converters.py ├── test_deserialization_pass_through.py ├── test_deserialize_with_coercion.py ├── test_deserializer_registration_reset_deserialization_cache.py ├── test_dict.py ├── test_discriminator.py ├── test_field_generic_conversion.py ├── test_generic_conversion.py ├── test_generic_object_deserialization.py ├── test_int_as_float.py ├── test_new_type_conversion.py ├── test_no_copy.py ├── test_object_fields_overriding.py ├── test_override_dataclass_constructors.py ├── test_pattern_deserialization.py ├── test_resolver_default_parameter_not_serializable.py ├── test_serialization_conflicting_union.py ├── test_type_converter.py ├── test_union_any_schema.py ├── test_unsupported_union_member.py └── test_validator_aliasing.py ├── requirements.txt └── unit ├── __init__.py ├── test_alias.py ├── test_coercion.py ├── test_constraints.py ├── test_conversions_resolver.py ├── test_dataclasses.py ├── test_deserialization.py ├── test_deserialization_methods.py ├── test_deserialization_serialization.py ├── test_field.py ├── test_flattened_conversion.py ├── test_metadata.py ├── test_recursion.py ├── test_refs.py ├── test_schema.py ├── test_serialized.py ├── test_subscriptions.py ├── test_subtyping_substitution.py ├── test_types.py ├── test_typing.py ├── test_utils.py ├── test_visitor.py └── validation ├── __init__.py ├── test_dependencies.py ├── test_mock.py └── test_validator.py /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [wyfo] 2 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/cd.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/.github/workflows/cd.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/doc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/.github/workflows/doc.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/README.md -------------------------------------------------------------------------------- /apischema/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/__init__.py -------------------------------------------------------------------------------- /apischema/aliases.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/aliases.py -------------------------------------------------------------------------------- /apischema/cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/cache.py -------------------------------------------------------------------------------- /apischema/constraints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/constraints.py -------------------------------------------------------------------------------- /apischema/conversions/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/conversions/__init__.py -------------------------------------------------------------------------------- /apischema/conversions/conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/conversions/conversions.py -------------------------------------------------------------------------------- /apischema/conversions/converters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/conversions/converters.py -------------------------------------------------------------------------------- /apischema/conversions/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/conversions/utils.py -------------------------------------------------------------------------------- /apischema/conversions/visitor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/conversions/visitor.py -------------------------------------------------------------------------------- /apischema/dataclasses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/dataclasses.py -------------------------------------------------------------------------------- /apischema/dependencies.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/dependencies.py -------------------------------------------------------------------------------- /apischema/deserialization/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/deserialization/__init__.py -------------------------------------------------------------------------------- /apischema/deserialization/coercion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/deserialization/coercion.py -------------------------------------------------------------------------------- /apischema/deserialization/flattened.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/deserialization/flattened.py -------------------------------------------------------------------------------- /apischema/deserialization/methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/deserialization/methods.py -------------------------------------------------------------------------------- /apischema/discriminators.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/discriminators.py -------------------------------------------------------------------------------- /apischema/fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/fields.py -------------------------------------------------------------------------------- /apischema/graphql/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/__init__.py -------------------------------------------------------------------------------- /apischema/graphql/interfaces.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/interfaces.py -------------------------------------------------------------------------------- /apischema/graphql/relay/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/relay/__init__.py -------------------------------------------------------------------------------- /apischema/graphql/relay/connections.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/relay/connections.py -------------------------------------------------------------------------------- /apischema/graphql/relay/global_identification.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/relay/global_identification.py -------------------------------------------------------------------------------- /apischema/graphql/relay/mutations.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/relay/mutations.py -------------------------------------------------------------------------------- /apischema/graphql/relay/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/relay/utils.py -------------------------------------------------------------------------------- /apischema/graphql/resolvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/resolvers.py -------------------------------------------------------------------------------- /apischema/graphql/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/graphql/schema.py -------------------------------------------------------------------------------- /apischema/json_schema/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/json_schema/__init__.py -------------------------------------------------------------------------------- /apischema/json_schema/conversions_resolver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/json_schema/conversions_resolver.py -------------------------------------------------------------------------------- /apischema/json_schema/patterns.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/json_schema/patterns.py -------------------------------------------------------------------------------- /apischema/json_schema/refs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/json_schema/refs.py -------------------------------------------------------------------------------- /apischema/json_schema/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/json_schema/schema.py -------------------------------------------------------------------------------- /apischema/json_schema/types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/json_schema/types.py -------------------------------------------------------------------------------- /apischema/json_schema/versions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/json_schema/versions.py -------------------------------------------------------------------------------- /apischema/metadata/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/metadata/__init__.py -------------------------------------------------------------------------------- /apischema/metadata/implem.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/metadata/implem.py -------------------------------------------------------------------------------- /apischema/metadata/keys.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/metadata/keys.py -------------------------------------------------------------------------------- /apischema/methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/methods.py -------------------------------------------------------------------------------- /apischema/objects/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/objects/__init__.py -------------------------------------------------------------------------------- /apischema/objects/conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/objects/conversions.py -------------------------------------------------------------------------------- /apischema/objects/fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/objects/fields.py -------------------------------------------------------------------------------- /apischema/objects/getters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/objects/getters.py -------------------------------------------------------------------------------- /apischema/objects/visitor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/objects/visitor.py -------------------------------------------------------------------------------- /apischema/ordering.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/ordering.py -------------------------------------------------------------------------------- /apischema/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /apischema/recursion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/recursion.py -------------------------------------------------------------------------------- /apischema/schemas.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/schemas.py -------------------------------------------------------------------------------- /apischema/serialization/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/serialization/__init__.py -------------------------------------------------------------------------------- /apischema/serialization/errors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/serialization/errors.py -------------------------------------------------------------------------------- /apischema/serialization/methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/serialization/methods.py -------------------------------------------------------------------------------- /apischema/serialization/serialized_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/serialization/serialized_methods.py -------------------------------------------------------------------------------- /apischema/settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/settings.py -------------------------------------------------------------------------------- /apischema/std_types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/std_types.py -------------------------------------------------------------------------------- /apischema/tagged_unions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/tagged_unions.py -------------------------------------------------------------------------------- /apischema/type_names.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/type_names.py -------------------------------------------------------------------------------- /apischema/types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/types.py -------------------------------------------------------------------------------- /apischema/typing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/typing.py -------------------------------------------------------------------------------- /apischema/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/utils.py -------------------------------------------------------------------------------- /apischema/validation/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/validation/__init__.py -------------------------------------------------------------------------------- /apischema/validation/dependencies.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/validation/dependencies.py -------------------------------------------------------------------------------- /apischema/validation/errors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/validation/errors.py -------------------------------------------------------------------------------- /apischema/validation/mock.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/validation/mock.py -------------------------------------------------------------------------------- /apischema/validation/validators.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/validation/validators.py -------------------------------------------------------------------------------- /apischema/visitor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/apischema/visitor.py -------------------------------------------------------------------------------- /benchmark/benchmarks/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /benchmark/benchmarks/apischema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/benchmarks/apischema.py -------------------------------------------------------------------------------- /benchmark/benchmarks/cattr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/benchmarks/cattr.py -------------------------------------------------------------------------------- /benchmark/benchmarks/marshmallow.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/benchmarks/marshmallow.py -------------------------------------------------------------------------------- /benchmark/benchmarks/mashumaro.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/benchmarks/mashumaro.py -------------------------------------------------------------------------------- /benchmark/benchmarks/pydantic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/benchmarks/pydantic.py -------------------------------------------------------------------------------- /benchmark/benchmarks/serde.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/benchmarks/serde.py -------------------------------------------------------------------------------- /benchmark/benchmarks/typedload.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/benchmarks/typedload.py -------------------------------------------------------------------------------- /benchmark/common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/common.py -------------------------------------------------------------------------------- /benchmark/data.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/data.json -------------------------------------------------------------------------------- /benchmark/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/main.py -------------------------------------------------------------------------------- /benchmark/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/benchmark/requirements.txt -------------------------------------------------------------------------------- /docs/conversions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/conversions.md -------------------------------------------------------------------------------- /docs/data_model.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/data_model.md -------------------------------------------------------------------------------- /docs/de_serialization.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/de_serialization.md -------------------------------------------------------------------------------- /docs/difference_with_pydantic.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/difference_with_pydantic.md -------------------------------------------------------------------------------- /docs/examples/attrs_support.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/examples/attrs_support.md -------------------------------------------------------------------------------- /docs/examples/inherited_deserializer.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/examples/inherited_deserializer.md -------------------------------------------------------------------------------- /docs/examples/pydantic_support.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/examples/pydantic_support.md -------------------------------------------------------------------------------- /docs/examples/recoverable_fields.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/examples/recoverable_fields.md -------------------------------------------------------------------------------- /docs/examples/sqlalchemy_support.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/examples/sqlalchemy_support.md -------------------------------------------------------------------------------- /docs/examples/subclass_tagged_union.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/examples/subclass_tagged_union.md -------------------------------------------------------------------------------- /docs/examples/subclass_union.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/examples/subclass_union.md -------------------------------------------------------------------------------- /docs/graphql/data_model_and_resolvers.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/graphql/data_model_and_resolvers.md -------------------------------------------------------------------------------- /docs/graphql/overview.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/graphql/overview.md -------------------------------------------------------------------------------- /docs/graphql/relay.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/graphql/relay.md -------------------------------------------------------------------------------- /docs/graphql/schema.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/graphql/schema.md -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/json_schema.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/json_schema.md -------------------------------------------------------------------------------- /docs/optimizations_and_benchmark.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/optimizations_and_benchmark.md -------------------------------------------------------------------------------- /docs/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/requirements.txt -------------------------------------------------------------------------------- /docs/validation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/docs/validation.md -------------------------------------------------------------------------------- /examples/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/additional_properties.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/additional_properties.py -------------------------------------------------------------------------------- /examples/additional_types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/additional_types.py -------------------------------------------------------------------------------- /examples/alias.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/alias.py -------------------------------------------------------------------------------- /examples/aliaser.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/aliaser.py -------------------------------------------------------------------------------- /examples/all_refs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/all_refs.py -------------------------------------------------------------------------------- /examples/as_names.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/as_names.py -------------------------------------------------------------------------------- /examples/as_str.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/as_str.py -------------------------------------------------------------------------------- /examples/base_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/base_schema.py -------------------------------------------------------------------------------- /examples/base_schema_parameter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/base_schema_parameter.py -------------------------------------------------------------------------------- /examples/bypass_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/bypass_conversions.py -------------------------------------------------------------------------------- /examples/class_ordering.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/class_ordering.py -------------------------------------------------------------------------------- /examples/coercion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/coercion.py -------------------------------------------------------------------------------- /examples/coercion_function.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/coercion_function.py -------------------------------------------------------------------------------- /examples/complex_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/complex_schema.py -------------------------------------------------------------------------------- /examples/computed_dependencies.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/computed_dependencies.py -------------------------------------------------------------------------------- /examples/conversion_object.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/conversion_object.py -------------------------------------------------------------------------------- /examples/conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/conversions.py -------------------------------------------------------------------------------- /examples/dataclass_init.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/dataclass_init.py -------------------------------------------------------------------------------- /examples/de_serialization_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/de_serialization_methods.py -------------------------------------------------------------------------------- /examples/default_as_set.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/default_as_set.py -------------------------------------------------------------------------------- /examples/definitions_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/definitions_schema.py -------------------------------------------------------------------------------- /examples/dependent_required.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/dependent_required.py -------------------------------------------------------------------------------- /examples/deserialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/deserialization.py -------------------------------------------------------------------------------- /examples/deserialization_pass_through.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/deserialization_pass_through.py -------------------------------------------------------------------------------- /examples/discard.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/discard.py -------------------------------------------------------------------------------- /examples/discriminator_perf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/discriminator_perf.py -------------------------------------------------------------------------------- /examples/dynamic_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/dynamic_conversions.py -------------------------------------------------------------------------------- /examples/dynamic_conversions_lsp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/dynamic_conversions_lsp.py -------------------------------------------------------------------------------- /examples/dynamic_generic_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/dynamic_generic_conversions.py -------------------------------------------------------------------------------- /examples/dynamic_type_name.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/dynamic_type_name.py -------------------------------------------------------------------------------- /examples/enum_schemas.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/enum_schemas.py -------------------------------------------------------------------------------- /examples/examples/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/examples/attrs_support.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/examples/attrs_support.py -------------------------------------------------------------------------------- /examples/examples/inherited_deserializer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/examples/inherited_deserializer.py -------------------------------------------------------------------------------- /examples/examples/pydantic_support.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/examples/pydantic_support.py -------------------------------------------------------------------------------- /examples/examples/recoverable_fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/examples/recoverable_fields.py -------------------------------------------------------------------------------- /examples/examples/sqlalchemy_support.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/examples/sqlalchemy_support.py -------------------------------------------------------------------------------- /examples/examples/subclass_tagged_union.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/examples/subclass_tagged_union.py -------------------------------------------------------------------------------- /examples/examples/subclass_union.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/examples/subclass_union.py -------------------------------------------------------------------------------- /examples/exclude_defaults_none.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/exclude_defaults_none.py -------------------------------------------------------------------------------- /examples/exclude_unset.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/exclude_unset.py -------------------------------------------------------------------------------- /examples/fall_back_on_default.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/fall_back_on_default.py -------------------------------------------------------------------------------- /examples/field_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/field_conversions.py -------------------------------------------------------------------------------- /examples/field_metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/field_metadata.py -------------------------------------------------------------------------------- /examples/field_validator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/field_validator.py -------------------------------------------------------------------------------- /examples/fields_set.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/fields_set.py -------------------------------------------------------------------------------- /examples/flattened.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/flattened.py -------------------------------------------------------------------------------- /examples/generic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/generic.py -------------------------------------------------------------------------------- /examples/generic_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/generic_conversions.py -------------------------------------------------------------------------------- /examples/generic_type_name.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/generic_type_name.py -------------------------------------------------------------------------------- /examples/graphql_overview.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/graphql_overview.py -------------------------------------------------------------------------------- /examples/graphql_type_name.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/graphql_type_name.py -------------------------------------------------------------------------------- /examples/id_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/id_conversion.py -------------------------------------------------------------------------------- /examples/id_type.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/id_type.py -------------------------------------------------------------------------------- /examples/inherited_discriminator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/inherited_discriminator.py -------------------------------------------------------------------------------- /examples/interface.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/interface.py -------------------------------------------------------------------------------- /examples/json_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/json_schema.py -------------------------------------------------------------------------------- /examples/lazy_as_object.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/lazy_as_object.py -------------------------------------------------------------------------------- /examples/lazy_registered_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/lazy_registered_conversion.py -------------------------------------------------------------------------------- /examples/local_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/local_conversions.py -------------------------------------------------------------------------------- /examples/multiple_deserializers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/multiple_deserializers.py -------------------------------------------------------------------------------- /examples/no_copy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/no_copy.py -------------------------------------------------------------------------------- /examples/none_as_undefined.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/none_as_undefined.py -------------------------------------------------------------------------------- /examples/object_deserialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/object_deserialization.py -------------------------------------------------------------------------------- /examples/object_serialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/object_serialization.py -------------------------------------------------------------------------------- /examples/operation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/operation.py -------------------------------------------------------------------------------- /examples/ordering.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/ordering.py -------------------------------------------------------------------------------- /examples/pass_through.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/pass_through.py -------------------------------------------------------------------------------- /examples/pass_through_primitives.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/pass_through_primitives.py -------------------------------------------------------------------------------- /examples/properties.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/properties.py -------------------------------------------------------------------------------- /examples/pydantic_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/pydantic_conversion.py -------------------------------------------------------------------------------- /examples/pydantic_validator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/pydantic_validator.py -------------------------------------------------------------------------------- /examples/quickstart.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/quickstart.py -------------------------------------------------------------------------------- /examples/recursive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/recursive.py -------------------------------------------------------------------------------- /examples/recursive_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/recursive_conversions.py -------------------------------------------------------------------------------- /examples/recursive_postponned.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/recursive_postponned.py -------------------------------------------------------------------------------- /examples/ref_factory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/ref_factory.py -------------------------------------------------------------------------------- /examples/relay_client_mutation_id.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/relay_client_mutation_id.py -------------------------------------------------------------------------------- /examples/relay_connection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/relay_connection.py -------------------------------------------------------------------------------- /examples/relay_connection_subclass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/relay_connection_subclass.py -------------------------------------------------------------------------------- /examples/relay_global_id.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/relay_global_id.py -------------------------------------------------------------------------------- /examples/relay_mutation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/relay_mutation.py -------------------------------------------------------------------------------- /examples/relay_node.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/relay_node.py -------------------------------------------------------------------------------- /examples/required.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/required.py -------------------------------------------------------------------------------- /examples/resolver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/resolver.py -------------------------------------------------------------------------------- /examples/resolver_error.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/resolver_error.py -------------------------------------------------------------------------------- /examples/resolver_metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/resolver_metadata.py -------------------------------------------------------------------------------- /examples/scalar.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/scalar.py -------------------------------------------------------------------------------- /examples/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/schema.py -------------------------------------------------------------------------------- /examples/schema_versions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/schema_versions.py -------------------------------------------------------------------------------- /examples/serialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/serialization.py -------------------------------------------------------------------------------- /examples/serialized.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/serialized.py -------------------------------------------------------------------------------- /examples/serialized_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/serialized_conversions.py -------------------------------------------------------------------------------- /examples/serialized_error.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/serialized_error.py -------------------------------------------------------------------------------- /examples/serialized_generic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/serialized_generic.py -------------------------------------------------------------------------------- /examples/serialized_undefined.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/serialized_undefined.py -------------------------------------------------------------------------------- /examples/serializer_inheritance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/serializer_inheritance.py -------------------------------------------------------------------------------- /examples/set_object_fields.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/set_object_fields.py -------------------------------------------------------------------------------- /examples/settings_errors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/settings_errors.py -------------------------------------------------------------------------------- /examples/skip.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/skip.py -------------------------------------------------------------------------------- /examples/skip_if.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/skip_if.py -------------------------------------------------------------------------------- /examples/strict_union.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/strict_union.py -------------------------------------------------------------------------------- /examples/sub_conversions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/sub_conversions.py -------------------------------------------------------------------------------- /examples/subscription.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/subscription.py -------------------------------------------------------------------------------- /examples/subscription_resolve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/subscription_resolve.py -------------------------------------------------------------------------------- /examples/tagged_union.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/tagged_union.py -------------------------------------------------------------------------------- /examples/tagged_union_graphql_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/tagged_union_graphql_schema.py -------------------------------------------------------------------------------- /examples/tagged_union_json_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/tagged_union_json_schema.py -------------------------------------------------------------------------------- /examples/type_name.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/type_name.py -------------------------------------------------------------------------------- /examples/undefined.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/undefined.py -------------------------------------------------------------------------------- /examples/undefined_default.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/undefined_default.py -------------------------------------------------------------------------------- /examples/union_discriminator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/union_discriminator.py -------------------------------------------------------------------------------- /examples/union_type_name.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/union_type_name.py -------------------------------------------------------------------------------- /examples/validate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validate.py -------------------------------------------------------------------------------- /examples/validation_error.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validation_error.py -------------------------------------------------------------------------------- /examples/validator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validator.py -------------------------------------------------------------------------------- /examples/validator_default.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validator_default.py -------------------------------------------------------------------------------- /examples/validator_field.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validator_field.py -------------------------------------------------------------------------------- /examples/validator_function.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validator_function.py -------------------------------------------------------------------------------- /examples/validator_inheritance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validator_inheritance.py -------------------------------------------------------------------------------- /examples/validator_post_init.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validator_post_init.py -------------------------------------------------------------------------------- /examples/validator_yield.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/examples/validator_yield.py -------------------------------------------------------------------------------- /mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/mkdocs.yml -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/pyproject.toml -------------------------------------------------------------------------------- /scripts/cythonize.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/scripts/cythonize.py -------------------------------------------------------------------------------- /scripts/cythonize.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/scripts/cythonize.sh -------------------------------------------------------------------------------- /scripts/generate_readme.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/scripts/generate_readme.py -------------------------------------------------------------------------------- /scripts/generate_tests_from_examples.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/scripts/generate_tests_from_examples.py -------------------------------------------------------------------------------- /scripts/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/scripts/requirements.txt -------------------------------------------------------------------------------- /scripts/sort_all.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/scripts/sort_all.py -------------------------------------------------------------------------------- /scripts/test_wrapper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/scripts/test_wrapper.py -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/setup.cfg -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/setup.py -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/integration/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/integration/test_aliased_resolvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_aliased_resolvers.py -------------------------------------------------------------------------------- /tests/integration/test_annotated_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_annotated_schema.py -------------------------------------------------------------------------------- /tests/integration/test_collections_implies_tuple_passthrough.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_collections_implies_tuple_passthrough.py -------------------------------------------------------------------------------- /tests/integration/test_default_conversion_type_name.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_default_conversion_type_name.py -------------------------------------------------------------------------------- /tests/integration/test_descriptor_converters.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_descriptor_converters.py -------------------------------------------------------------------------------- /tests/integration/test_deserialization_pass_through.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_deserialization_pass_through.py -------------------------------------------------------------------------------- /tests/integration/test_deserialize_with_coercion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_deserialize_with_coercion.py -------------------------------------------------------------------------------- /tests/integration/test_deserializer_registration_reset_deserialization_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_deserializer_registration_reset_deserialization_cache.py -------------------------------------------------------------------------------- /tests/integration/test_dict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_dict.py -------------------------------------------------------------------------------- /tests/integration/test_discriminator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_discriminator.py -------------------------------------------------------------------------------- /tests/integration/test_field_generic_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_field_generic_conversion.py -------------------------------------------------------------------------------- /tests/integration/test_generic_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_generic_conversion.py -------------------------------------------------------------------------------- /tests/integration/test_generic_object_deserialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_generic_object_deserialization.py -------------------------------------------------------------------------------- /tests/integration/test_int_as_float.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_int_as_float.py -------------------------------------------------------------------------------- /tests/integration/test_new_type_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_new_type_conversion.py -------------------------------------------------------------------------------- /tests/integration/test_no_copy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_no_copy.py -------------------------------------------------------------------------------- /tests/integration/test_object_fields_overriding.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_object_fields_overriding.py -------------------------------------------------------------------------------- /tests/integration/test_override_dataclass_constructors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_override_dataclass_constructors.py -------------------------------------------------------------------------------- /tests/integration/test_pattern_deserialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_pattern_deserialization.py -------------------------------------------------------------------------------- /tests/integration/test_resolver_default_parameter_not_serializable.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_resolver_default_parameter_not_serializable.py -------------------------------------------------------------------------------- /tests/integration/test_serialization_conflicting_union.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_serialization_conflicting_union.py -------------------------------------------------------------------------------- /tests/integration/test_type_converter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_type_converter.py -------------------------------------------------------------------------------- /tests/integration/test_union_any_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_union_any_schema.py -------------------------------------------------------------------------------- /tests/integration/test_unsupported_union_member.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_unsupported_union_member.py -------------------------------------------------------------------------------- /tests/integration/test_validator_aliasing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/integration/test_validator_aliasing.py -------------------------------------------------------------------------------- /tests/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/requirements.txt -------------------------------------------------------------------------------- /tests/unit/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/test_alias.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_alias.py -------------------------------------------------------------------------------- /tests/unit/test_coercion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_coercion.py -------------------------------------------------------------------------------- /tests/unit/test_constraints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_constraints.py -------------------------------------------------------------------------------- /tests/unit/test_conversions_resolver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_conversions_resolver.py -------------------------------------------------------------------------------- /tests/unit/test_dataclasses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_dataclasses.py -------------------------------------------------------------------------------- /tests/unit/test_deserialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_deserialization.py -------------------------------------------------------------------------------- /tests/unit/test_deserialization_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_deserialization_methods.py -------------------------------------------------------------------------------- /tests/unit/test_deserialization_serialization.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_deserialization_serialization.py -------------------------------------------------------------------------------- /tests/unit/test_field.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_field.py -------------------------------------------------------------------------------- /tests/unit/test_flattened_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_flattened_conversion.py -------------------------------------------------------------------------------- /tests/unit/test_metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_metadata.py -------------------------------------------------------------------------------- /tests/unit/test_recursion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_recursion.py -------------------------------------------------------------------------------- /tests/unit/test_refs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_refs.py -------------------------------------------------------------------------------- /tests/unit/test_schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_schema.py -------------------------------------------------------------------------------- /tests/unit/test_serialized.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_serialized.py -------------------------------------------------------------------------------- /tests/unit/test_subscriptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_subscriptions.py -------------------------------------------------------------------------------- /tests/unit/test_subtyping_substitution.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_subtyping_substitution.py -------------------------------------------------------------------------------- /tests/unit/test_types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_types.py -------------------------------------------------------------------------------- /tests/unit/test_typing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_typing.py -------------------------------------------------------------------------------- /tests/unit/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_utils.py -------------------------------------------------------------------------------- /tests/unit/test_visitor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/test_visitor.py -------------------------------------------------------------------------------- /tests/unit/validation/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/unit/validation/test_dependencies.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/validation/test_dependencies.py -------------------------------------------------------------------------------- /tests/unit/validation/test_mock.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/validation/test_mock.py -------------------------------------------------------------------------------- /tests/unit/validation/test_validator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wyfo/apischema/HEAD/tests/unit/validation/test_validator.py --------------------------------------------------------------------------------