strawberry-graphql 0.219.1__tar.gz → 0.220.0.dev1709543239__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/PKG-INFO +2 -2
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/pyproject.toml +32 -30
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/utils.py +2 -3
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/max_aliases.py +1 -1
- strawberry_graphql-0.220.0.dev1709543239/strawberry/schema/execute.py +274 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/aio.py +1 -1
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/typing.py +1 -1
- strawberry_graphql-0.219.1/strawberry/schema/execute.py +0 -263
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/LICENSE +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/README.md +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/__main__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/aiohttp/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/aiohttp/handlers/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/aiohttp/handlers/graphql_transport_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/aiohttp/handlers/graphql_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/aiohttp/test/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/aiohttp/test/client.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/aiohttp/views.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/annotation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/arguments.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/asgi/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/asgi/handlers/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/asgi/handlers/graphql_transport_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/asgi/handlers/graphql_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/asgi/test/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/asgi/test/client.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/auto.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/chalice/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/chalice/views.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/handlers/base.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/handlers/graphql_transport_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/handlers/graphql_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/handlers/http_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/handlers/ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/router.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/channels/testing.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/app.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/codegen.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/export_schema.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/schema_codegen.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/server.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/upgrade/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/upgrade/_fake_progress.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/commands/upgrade/_run_codemod.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/constants.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/debug_server.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/utils/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/cli/utils/load_schema.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/exceptions.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/plugins/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/plugins/print_operation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/plugins/python.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/plugins/typescript.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/query_codegen.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codegen/types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codemods/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/codemods/annotated_unions.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/custom_scalar.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/dataloader.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/directive.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/django/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/django/apps.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/django/context.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/django/test/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/django/test/client.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/django/views.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/enum.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/conflicting_arguments.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/duplicated_type_name.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/exception.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/exception_source.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/invalid_argument_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/invalid_union_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/missing_arguments_annotations.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/missing_field_annotation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/missing_return_annotation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/not_a_strawberry_enum.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/object_is_not_a_class.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/object_is_not_an_enum.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/permission_fail_silently_requires_optional.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/private_strawberry_field.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/scalar_already_registered.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/syntax.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/unresolved_field_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/utils/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/exceptions/utils/source_finder.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/_compat.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/conversion.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/conversion_types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/error_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/exceptions.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/fields.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/experimental/pydantic/object_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/ext/LICENSE +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/ext/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/ext/dataclasses/LICENSE +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/ext/dataclasses/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/ext/dataclasses/dataclasses.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/ext/mypy_plugin.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/add_validation_rules.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/base_extension.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/context.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/directives.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/disable_validation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/field_extension.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/mask_errors.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/max_tokens.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/parser_cache.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/pyinstrument.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/query_depth_limiter.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/runner.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/tracing/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/tracing/apollo.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/tracing/datadog.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/tracing/opentelemetry.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/tracing/sentry.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/tracing/utils.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/utils.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/extensions/validation_cache.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/fastapi/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/fastapi/context.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/fastapi/handlers/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/fastapi/handlers/graphql_transport_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/fastapi/handlers/graphql_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/fastapi/router.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/argument.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/enum.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/field.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/mutation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/object_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/scalar.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/schema.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/schema_directive.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/schema_directives.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/federation/union.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/field.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/field_extensions/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/field_extensions/input_mutation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/file_uploads/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/file_uploads/scalars.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/file_uploads/utils.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/flask/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/flask/views.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/async_base_view.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/base.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/exceptions.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/ides.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/sync_base_view.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/temporal_response.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/http/typevars.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/lazy_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/litestar/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/litestar/controller.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/litestar/handlers/graphql_transport_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/litestar/handlers/graphql_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/mutation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/object_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/parent.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/permission.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/printer/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/printer/ast_from_value.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/printer/printer.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/private.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/py.typed +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/quart/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/quart/views.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/relay/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/relay/exceptions.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/relay/fields.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/relay/types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/relay/utils.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/resolvers.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/sanic/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/sanic/context.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/sanic/utils.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/sanic/views.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/scalars.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/base.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/compat.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/config.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/exceptions.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/name_converter.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/schema.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/schema_converter.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/types/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/types/base_scalars.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/types/concrete_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema/types/scalar.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema_codegen/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/schema_directive.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/starlite/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/starlite/controller.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/starlite/handlers/graphql_transport_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/starlite/handlers/graphql_ws_handler.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/static/apollo-sandbox.html +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/static/graphiql.html +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/static/pathfinder.html +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/protocols/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/protocols/graphql_transport_ws/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/protocols/graphql_transport_ws/handlers.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/protocols/graphql_transport_ws/types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/protocols/graphql_ws/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/protocols/graphql_ws/handlers.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/subscriptions/protocols/graphql_ws/types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/test/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/test/client.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/tools/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/tools/create_type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/tools/merge_types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/type.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/execution.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/fields/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/fields/resolver.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/graphql.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/info.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/nodes.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/type_resolver.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/types/types.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/union.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/unset.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/__init__.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/await_maybe.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/dataclasses.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/debug.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/deprecations.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/graphql_lexer.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/importer.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/inspect.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/logging.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/operation.py +0 -0
- {strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/str_converters.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: strawberry-graphql
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.220.0.dev1709543239
|
4
4
|
Summary: A library for creating GraphQL APIs
|
5
5
|
Home-page: https://strawberry.rocks/
|
6
6
|
License: MIT
|
@@ -53,7 +53,7 @@ Requires-Dist: pydantic (>1.6.1) ; extra == "pydantic"
|
|
53
53
|
Requires-Dist: pygments (>=2.3,<3.0) ; extra == "debug-server" or extra == "cli"
|
54
54
|
Requires-Dist: pyinstrument (>=4.0.0) ; extra == "pyinstrument"
|
55
55
|
Requires-Dist: python-dateutil (>=2.7.0,<3.0.0)
|
56
|
-
Requires-Dist: python-multipart (>=0.0.
|
56
|
+
Requires-Dist: python-multipart (>=0.0.7) ; extra == "asgi" or extra == "debug-server" or extra == "fastapi"
|
57
57
|
Requires-Dist: quart (>=0.19.3) ; extra == "quart"
|
58
58
|
Requires-Dist: rich (>=12.0.0) ; extra == "debug" or extra == "debug-server" or extra == "cli"
|
59
59
|
Requires-Dist: sanic (>=20.12.2) ; extra == "sanic"
|
@@ -1,7 +1,7 @@
|
|
1
1
|
[tool.poetry]
|
2
2
|
name = "strawberry-graphql"
|
3
3
|
packages = [ { include = "strawberry" } ]
|
4
|
-
version = "0.
|
4
|
+
version = "0.220.0.dev.1709543239"
|
5
5
|
description = "A library for creating GraphQL APIs"
|
6
6
|
authors = ["Patrick Arminio <patrick.arminio@gmail.com>"]
|
7
7
|
license = "MIT"
|
@@ -50,7 +50,7 @@ opentelemetry-api = {version = "<2", optional = true}
|
|
50
50
|
opentelemetry-sdk = {version = "<2", optional = true}
|
51
51
|
chalice = {version = "^1.22", optional = true}
|
52
52
|
pydantic = {version = ">1.6.1", optional = true}
|
53
|
-
python-multipart = {version = ">=0.0.
|
53
|
+
python-multipart = {version = ">=0.0.7", optional = true}
|
54
54
|
sanic = {version = ">=20.12.2", optional = true}
|
55
55
|
aiohttp = {version = "^3.7.4.post0", optional = true}
|
56
56
|
fastapi = {version = ">=0.65.2", optional = true}
|
@@ -83,7 +83,7 @@ pytest-emoji = "^0.2.0"
|
|
83
83
|
pytest-mock = "^3.10"
|
84
84
|
pytest-snapshot = "^0.9.0"
|
85
85
|
pytest-xdist = {extras = ["psutil"], version = "^3.1.0"}
|
86
|
-
python-multipart = ">=0.0.
|
86
|
+
python-multipart = ">=0.0.7"
|
87
87
|
rich = {version = ">=12.5.1,<14.0.0", optional = false}
|
88
88
|
sanic-testing = ">=22.9,<24.0"
|
89
89
|
sentry-sdk = "^1.39.2"
|
@@ -192,8 +192,34 @@ stubPath = ""
|
|
192
192
|
|
193
193
|
[tool.ruff]
|
194
194
|
line-length = 88
|
195
|
-
select = ["ALL"]
|
196
195
|
target-version = "py38"
|
196
|
+
fix = true
|
197
|
+
exclude = [
|
198
|
+
".bzr",
|
199
|
+
".direnv",
|
200
|
+
".eggs",
|
201
|
+
".git",
|
202
|
+
".hg",
|
203
|
+
".mypy_cache",
|
204
|
+
".nox",
|
205
|
+
".pants.d",
|
206
|
+
".ruff_cache",
|
207
|
+
".svn",
|
208
|
+
".tox",
|
209
|
+
".venv",
|
210
|
+
"__pypackages__",
|
211
|
+
"_build",
|
212
|
+
"buck-out",
|
213
|
+
"build",
|
214
|
+
"dist",
|
215
|
+
"node_modules",
|
216
|
+
"venv",
|
217
|
+
"tests/codegen/snapshots"
|
218
|
+
]
|
219
|
+
src = ["strawberry", "tests"]
|
220
|
+
|
221
|
+
[tool.ruff.lint]
|
222
|
+
select = ["ALL"]
|
197
223
|
ignore = [
|
198
224
|
# https://github.com/astral-sh/ruff/pull/4427
|
199
225
|
# equivalent to keep-runtime-typing
|
@@ -326,38 +352,14 @@ ignore = [
|
|
326
352
|
"FIX002",
|
327
353
|
"FA100",
|
328
354
|
]
|
329
|
-
fix = true
|
330
|
-
exclude = [
|
331
|
-
".bzr",
|
332
|
-
".direnv",
|
333
|
-
".eggs",
|
334
|
-
".git",
|
335
|
-
".hg",
|
336
|
-
".mypy_cache",
|
337
|
-
".nox",
|
338
|
-
".pants.d",
|
339
|
-
".ruff_cache",
|
340
|
-
".svn",
|
341
|
-
".tox",
|
342
|
-
".venv",
|
343
|
-
"__pypackages__",
|
344
|
-
"_build",
|
345
|
-
"buck-out",
|
346
|
-
"build",
|
347
|
-
"dist",
|
348
|
-
"node_modules",
|
349
|
-
"venv",
|
350
|
-
"tests/codegen/snapshots"
|
351
|
-
]
|
352
|
-
src = ["strawberry", "tests"]
|
353
355
|
|
354
|
-
[tool.ruff.per-file-ignores]
|
356
|
+
[tool.ruff.lint.per-file-ignores]
|
355
357
|
"strawberry/schema/types/concrete_type.py" = ["TCH002"]
|
356
358
|
"tests/*" = ["RSE102", "SLF001", "TCH001", "TCH002", "TCH003", "ANN001", "ANN201", "PLW0603", "PLC1901", "S603", "S607", "B018"]
|
357
359
|
"strawberry/extensions/tracing/__init__.py" = ["TCH004"]
|
358
360
|
"tests/http/clients/__init__.py" = ["F401"]
|
359
361
|
|
360
|
-
[tool.ruff.isort]
|
362
|
+
[tool.ruff.lint.isort]
|
361
363
|
known-first-party = ["strawberry"]
|
362
364
|
known-third-party = ["django", "graphql"]
|
363
365
|
extra-standard-library = ["typing_extensions"]
|
@@ -6,7 +6,6 @@ from typing import (
|
|
6
6
|
Any,
|
7
7
|
List,
|
8
8
|
NamedTuple,
|
9
|
-
NoReturn,
|
10
9
|
Set,
|
11
10
|
Tuple,
|
12
11
|
Type,
|
@@ -126,7 +125,7 @@ def get_default_factory_for_field(
|
|
126
125
|
|
127
126
|
def ensure_all_auto_fields_in_pydantic(
|
128
127
|
model: Type[BaseModel], auto_fields: Set[str], cls_name: str
|
129
|
-
) ->
|
128
|
+
) -> None:
|
130
129
|
# Raise error if user defined a strawberry.auto field not present in the model
|
131
130
|
non_existing_fields = list(auto_fields - get_model_fields(model).keys())
|
132
131
|
|
@@ -135,4 +134,4 @@ def ensure_all_auto_fields_in_pydantic(
|
|
135
134
|
fields=non_existing_fields, cls_name=cls_name, model=model
|
136
135
|
)
|
137
136
|
else:
|
138
|
-
return
|
137
|
+
return
|
@@ -65,7 +65,7 @@ def create_validator(max_alias_count: int) -> Type[ValidationRule]:
|
|
65
65
|
|
66
66
|
|
67
67
|
def count_fields_with_alias(
|
68
|
-
selection_set_owner: Union[ExecutableDefinitionNode, FieldNode, InlineFragmentNode]
|
68
|
+
selection_set_owner: Union[ExecutableDefinitionNode, FieldNode, InlineFragmentNode],
|
69
69
|
) -> int:
|
70
70
|
if selection_set_owner.selection_set is None:
|
71
71
|
return 0
|
@@ -0,0 +1,274 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
|
3
|
+
from asyncio import ensure_future
|
4
|
+
from inspect import isawaitable
|
5
|
+
from typing import (
|
6
|
+
TYPE_CHECKING,
|
7
|
+
Awaitable,
|
8
|
+
Callable,
|
9
|
+
Iterable,
|
10
|
+
List,
|
11
|
+
Optional,
|
12
|
+
Sequence,
|
13
|
+
Tuple,
|
14
|
+
Type,
|
15
|
+
TypedDict,
|
16
|
+
Union,
|
17
|
+
cast,
|
18
|
+
)
|
19
|
+
|
20
|
+
from graphql import GraphQLError, parse
|
21
|
+
from graphql import execute as original_execute
|
22
|
+
from graphql.validation import validate
|
23
|
+
|
24
|
+
from strawberry.exceptions import MissingQueryError
|
25
|
+
from strawberry.extensions.runner import SchemaExtensionsRunner
|
26
|
+
from strawberry.types import ExecutionResult
|
27
|
+
|
28
|
+
from .exceptions import InvalidOperationTypeError
|
29
|
+
|
30
|
+
if TYPE_CHECKING:
|
31
|
+
from typing_extensions import NotRequired, Unpack
|
32
|
+
|
33
|
+
from graphql import ExecutionContext as GraphQLExecutionContext
|
34
|
+
from graphql import ExecutionResult as GraphQLExecutionResult
|
35
|
+
from graphql import GraphQLSchema
|
36
|
+
from graphql.language import DocumentNode
|
37
|
+
from graphql.validation import ASTValidationRule
|
38
|
+
|
39
|
+
from strawberry.extensions import SchemaExtension
|
40
|
+
from strawberry.types import ExecutionContext
|
41
|
+
from strawberry.types.graphql import OperationType
|
42
|
+
|
43
|
+
|
44
|
+
# duplicated because of https://github.com/mkdocstrings/griffe-typingdoc/issues/7
|
45
|
+
class ParseOptions(TypedDict):
|
46
|
+
max_tokens: NotRequired[int]
|
47
|
+
|
48
|
+
|
49
|
+
def parse_document(query: str, **kwargs: Unpack[ParseOptions]) -> DocumentNode:
|
50
|
+
return parse(query, **kwargs)
|
51
|
+
|
52
|
+
|
53
|
+
def validate_document(
|
54
|
+
schema: GraphQLSchema,
|
55
|
+
document: DocumentNode,
|
56
|
+
validation_rules: Tuple[Type[ASTValidationRule], ...],
|
57
|
+
) -> List[GraphQLError]:
|
58
|
+
return validate(
|
59
|
+
schema,
|
60
|
+
document,
|
61
|
+
validation_rules,
|
62
|
+
)
|
63
|
+
|
64
|
+
|
65
|
+
def _run_validation(execution_context: ExecutionContext) -> None:
|
66
|
+
# Check if there are any validation rules or if validation has
|
67
|
+
# already been run by an extension
|
68
|
+
if len(execution_context.validation_rules) > 0 and execution_context.errors is None:
|
69
|
+
assert execution_context.graphql_document
|
70
|
+
execution_context.errors = validate_document(
|
71
|
+
execution_context.schema._schema,
|
72
|
+
execution_context.graphql_document,
|
73
|
+
execution_context.validation_rules,
|
74
|
+
)
|
75
|
+
|
76
|
+
|
77
|
+
async def execute(
|
78
|
+
schema: GraphQLSchema,
|
79
|
+
*,
|
80
|
+
allowed_operation_types: Iterable[OperationType],
|
81
|
+
extensions: Sequence[Union[Type[SchemaExtension], SchemaExtension]],
|
82
|
+
execution_context: ExecutionContext,
|
83
|
+
execution_context_class: Optional[Type[GraphQLExecutionContext]] = None,
|
84
|
+
process_errors: Callable[[List[GraphQLError], Optional[ExecutionContext]], None],
|
85
|
+
) -> ExecutionResult:
|
86
|
+
extensions_runner = SchemaExtensionsRunner(
|
87
|
+
execution_context=execution_context,
|
88
|
+
extensions=list(extensions),
|
89
|
+
)
|
90
|
+
|
91
|
+
try:
|
92
|
+
async with extensions_runner.operation():
|
93
|
+
# Note: In graphql-core the schema would be validated here but in
|
94
|
+
# Strawberry we are validating it at initialisation time instead
|
95
|
+
if not execution_context.query:
|
96
|
+
raise MissingQueryError()
|
97
|
+
|
98
|
+
async with extensions_runner.parsing():
|
99
|
+
try:
|
100
|
+
if not execution_context.graphql_document:
|
101
|
+
execution_context.graphql_document = parse_document(
|
102
|
+
execution_context.query, **execution_context.parse_options
|
103
|
+
)
|
104
|
+
|
105
|
+
except GraphQLError as exc:
|
106
|
+
execution_context.errors = [exc]
|
107
|
+
process_errors([exc], execution_context)
|
108
|
+
return ExecutionResult(
|
109
|
+
data=None,
|
110
|
+
errors=[exc],
|
111
|
+
extensions=await extensions_runner.get_extensions_results(),
|
112
|
+
)
|
113
|
+
|
114
|
+
if execution_context.operation_type not in allowed_operation_types:
|
115
|
+
raise InvalidOperationTypeError(execution_context.operation_type)
|
116
|
+
|
117
|
+
async with extensions_runner.validation():
|
118
|
+
_run_validation(execution_context)
|
119
|
+
if execution_context.errors:
|
120
|
+
process_errors(execution_context.errors, execution_context)
|
121
|
+
return ExecutionResult(data=None, errors=execution_context.errors)
|
122
|
+
|
123
|
+
async with extensions_runner.executing():
|
124
|
+
if not execution_context.result:
|
125
|
+
result = original_execute(
|
126
|
+
schema,
|
127
|
+
execution_context.graphql_document,
|
128
|
+
root_value=execution_context.root_value,
|
129
|
+
middleware=extensions_runner.as_middleware_manager(),
|
130
|
+
variable_values=execution_context.variables,
|
131
|
+
operation_name=execution_context.operation_name,
|
132
|
+
context_value=execution_context.context,
|
133
|
+
execution_context_class=execution_context_class,
|
134
|
+
)
|
135
|
+
|
136
|
+
if isawaitable(result):
|
137
|
+
result = await cast(Awaitable["GraphQLExecutionResult"], result)
|
138
|
+
|
139
|
+
result = cast("GraphQLExecutionResult", result)
|
140
|
+
execution_context.result = result
|
141
|
+
# Also set errors on the execution_context so that it's easier
|
142
|
+
# to access in extensions
|
143
|
+
if result.errors:
|
144
|
+
execution_context.errors = result.errors
|
145
|
+
|
146
|
+
# Run the `Schema.process_errors` function here before
|
147
|
+
# extensions have a chance to modify them (see the MaskErrors
|
148
|
+
# extension). That way we can log the original errors but
|
149
|
+
# only return a sanitised version to the client.
|
150
|
+
process_errors(result.errors, execution_context)
|
151
|
+
|
152
|
+
except (MissingQueryError, InvalidOperationTypeError) as e:
|
153
|
+
raise e
|
154
|
+
except Exception as exc:
|
155
|
+
error = (
|
156
|
+
exc
|
157
|
+
if isinstance(exc, GraphQLError)
|
158
|
+
else GraphQLError(str(exc), original_error=exc)
|
159
|
+
)
|
160
|
+
execution_context.errors = [error]
|
161
|
+
process_errors([error], execution_context)
|
162
|
+
return ExecutionResult(
|
163
|
+
data=None,
|
164
|
+
errors=[error],
|
165
|
+
extensions=await extensions_runner.get_extensions_results(),
|
166
|
+
)
|
167
|
+
|
168
|
+
return ExecutionResult(
|
169
|
+
data=execution_context.result.data,
|
170
|
+
errors=execution_context.result.errors,
|
171
|
+
extensions=await extensions_runner.get_extensions_results(),
|
172
|
+
)
|
173
|
+
|
174
|
+
|
175
|
+
def execute_sync(
|
176
|
+
schema: GraphQLSchema,
|
177
|
+
*,
|
178
|
+
allowed_operation_types: Iterable[OperationType],
|
179
|
+
extensions: Sequence[Union[Type[SchemaExtension], SchemaExtension]],
|
180
|
+
execution_context: ExecutionContext,
|
181
|
+
execution_context_class: Optional[Type[GraphQLExecutionContext]] = None,
|
182
|
+
process_errors: Callable[[List[GraphQLError], Optional[ExecutionContext]], None],
|
183
|
+
) -> ExecutionResult:
|
184
|
+
extensions_runner = SchemaExtensionsRunner(
|
185
|
+
execution_context=execution_context,
|
186
|
+
extensions=list(extensions),
|
187
|
+
)
|
188
|
+
|
189
|
+
try:
|
190
|
+
with extensions_runner.operation():
|
191
|
+
# Note: In graphql-core the schema would be validated here but in
|
192
|
+
# Strawberry we are validating it at initialisation time instead
|
193
|
+
if not execution_context.query:
|
194
|
+
raise MissingQueryError()
|
195
|
+
|
196
|
+
with extensions_runner.parsing():
|
197
|
+
try:
|
198
|
+
if not execution_context.graphql_document:
|
199
|
+
execution_context.graphql_document = parse_document(
|
200
|
+
execution_context.query, **execution_context.parse_options
|
201
|
+
)
|
202
|
+
|
203
|
+
except GraphQLError as exc:
|
204
|
+
execution_context.errors = [exc]
|
205
|
+
process_errors([exc], execution_context)
|
206
|
+
return ExecutionResult(
|
207
|
+
data=None,
|
208
|
+
errors=[exc],
|
209
|
+
extensions=extensions_runner.get_extensions_results_sync(),
|
210
|
+
)
|
211
|
+
|
212
|
+
if execution_context.operation_type not in allowed_operation_types:
|
213
|
+
raise InvalidOperationTypeError(execution_context.operation_type)
|
214
|
+
|
215
|
+
with extensions_runner.validation():
|
216
|
+
_run_validation(execution_context)
|
217
|
+
if execution_context.errors:
|
218
|
+
process_errors(execution_context.errors, execution_context)
|
219
|
+
return ExecutionResult(data=None, errors=execution_context.errors)
|
220
|
+
|
221
|
+
with extensions_runner.executing():
|
222
|
+
if not execution_context.result:
|
223
|
+
result = original_execute(
|
224
|
+
schema,
|
225
|
+
execution_context.graphql_document,
|
226
|
+
root_value=execution_context.root_value,
|
227
|
+
middleware=extensions_runner.as_middleware_manager(),
|
228
|
+
variable_values=execution_context.variables,
|
229
|
+
operation_name=execution_context.operation_name,
|
230
|
+
context_value=execution_context.context,
|
231
|
+
execution_context_class=execution_context_class,
|
232
|
+
)
|
233
|
+
|
234
|
+
if isawaitable(result):
|
235
|
+
result = cast(Awaitable["GraphQLExecutionResult"], result)
|
236
|
+
ensure_future(result).cancel()
|
237
|
+
raise RuntimeError(
|
238
|
+
"GraphQL execution failed to complete synchronously."
|
239
|
+
)
|
240
|
+
|
241
|
+
result = cast("GraphQLExecutionResult", result)
|
242
|
+
execution_context.result = result
|
243
|
+
# Also set errors on the execution_context so that it's easier
|
244
|
+
# to access in extensions
|
245
|
+
if result.errors:
|
246
|
+
execution_context.errors = result.errors
|
247
|
+
|
248
|
+
# Run the `Schema.process_errors` function here before
|
249
|
+
# extensions have a chance to modify them (see the MaskErrors
|
250
|
+
# extension). That way we can log the original errors but
|
251
|
+
# only return a sanitised version to the client.
|
252
|
+
process_errors(result.errors, execution_context)
|
253
|
+
|
254
|
+
except (MissingQueryError, InvalidOperationTypeError) as e:
|
255
|
+
raise e
|
256
|
+
except Exception as exc:
|
257
|
+
error = (
|
258
|
+
exc
|
259
|
+
if isinstance(exc, GraphQLError)
|
260
|
+
else GraphQLError(str(exc), original_error=exc)
|
261
|
+
)
|
262
|
+
execution_context.errors = [error]
|
263
|
+
process_errors([error], execution_context)
|
264
|
+
return ExecutionResult(
|
265
|
+
data=None,
|
266
|
+
errors=[error],
|
267
|
+
extensions=extensions_runner.get_extensions_results_sync(),
|
268
|
+
)
|
269
|
+
|
270
|
+
return ExecutionResult(
|
271
|
+
data=execution_context.result.data,
|
272
|
+
errors=execution_context.result.errors,
|
273
|
+
extensions=extensions_runner.get_extensions_results_sync(),
|
274
|
+
)
|
{strawberry_graphql-0.219.1 → strawberry_graphql-0.220.0.dev1709543239}/strawberry/utils/typing.py
RENAMED
@@ -214,7 +214,7 @@ def _ast_replace_union_operation(expr: ast.Expr) -> ast.Expr:
|
|
214
214
|
|
215
215
|
|
216
216
|
def _ast_replace_union_operation(
|
217
|
-
expr: Union[ast.Expr, ast.expr]
|
217
|
+
expr: Union[ast.Expr, ast.expr],
|
218
218
|
) -> Union[ast.Expr, ast.expr]:
|
219
219
|
if isinstance(expr, ast.Expr) and isinstance(
|
220
220
|
expr.value, (ast.BinOp, ast.Subscript)
|