strawberry-graphql 0.224.1__tar.gz → 0.224.2__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.
Files changed (247) hide show
  1. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/PKG-INFO +1 -1
  2. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/pyproject.toml +1 -1
  3. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/context.py +60 -56
  4. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/LICENSE +0 -0
  5. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/README.md +0 -0
  6. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/__init__.py +0 -0
  7. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/__main__.py +0 -0
  8. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/aiohttp/__init__.py +0 -0
  9. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/aiohttp/handlers/__init__.py +0 -0
  10. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/aiohttp/handlers/graphql_transport_ws_handler.py +0 -0
  11. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/aiohttp/handlers/graphql_ws_handler.py +0 -0
  12. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/aiohttp/test/__init__.py +0 -0
  13. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/aiohttp/test/client.py +0 -0
  14. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/aiohttp/views.py +0 -0
  15. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/annotation.py +0 -0
  16. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/arguments.py +0 -0
  17. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/asgi/__init__.py +0 -0
  18. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/asgi/handlers/__init__.py +0 -0
  19. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/asgi/handlers/graphql_transport_ws_handler.py +0 -0
  20. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/asgi/handlers/graphql_ws_handler.py +0 -0
  21. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/asgi/test/__init__.py +0 -0
  22. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/asgi/test/client.py +0 -0
  23. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/auto.py +0 -0
  24. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/chalice/__init__.py +0 -0
  25. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/chalice/views.py +0 -0
  26. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/__init__.py +0 -0
  27. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/handlers/base.py +0 -0
  28. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/handlers/graphql_transport_ws_handler.py +0 -0
  29. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/handlers/graphql_ws_handler.py +0 -0
  30. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/handlers/http_handler.py +0 -0
  31. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/handlers/ws_handler.py +0 -0
  32. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/router.py +0 -0
  33. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/channels/testing.py +0 -0
  34. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/__init__.py +0 -0
  35. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/app.py +0 -0
  36. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/__init__.py +0 -0
  37. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/codegen.py +0 -0
  38. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/export_schema.py +0 -0
  39. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/schema_codegen.py +0 -0
  40. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/server.py +0 -0
  41. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/upgrade/__init__.py +0 -0
  42. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/upgrade/_fake_progress.py +0 -0
  43. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/commands/upgrade/_run_codemod.py +0 -0
  44. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/constants.py +0 -0
  45. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/debug_server.py +0 -0
  46. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/utils/__init__.py +0 -0
  47. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/cli/utils/load_schema.py +0 -0
  48. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/__init__.py +0 -0
  49. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/exceptions.py +0 -0
  50. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/plugins/__init__.py +0 -0
  51. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/plugins/print_operation.py +0 -0
  52. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/plugins/python.py +0 -0
  53. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/plugins/typescript.py +0 -0
  54. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/query_codegen.py +0 -0
  55. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codegen/types.py +0 -0
  56. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codemods/__init__.py +0 -0
  57. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/codemods/annotated_unions.py +0 -0
  58. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/custom_scalar.py +0 -0
  59. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/dataloader.py +0 -0
  60. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/directive.py +0 -0
  61. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/django/__init__.py +0 -0
  62. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/django/apps.py +0 -0
  63. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/django/context.py +0 -0
  64. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/django/test/__init__.py +0 -0
  65. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/django/test/client.py +0 -0
  66. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/django/views.py +0 -0
  67. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/enum.py +0 -0
  68. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/__init__.py +0 -0
  69. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/conflicting_arguments.py +0 -0
  70. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/duplicated_type_name.py +0 -0
  71. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/exception.py +0 -0
  72. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/exception_source.py +0 -0
  73. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/handler.py +0 -0
  74. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/invalid_argument_type.py +0 -0
  75. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/invalid_union_type.py +0 -0
  76. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/missing_arguments_annotations.py +0 -0
  77. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/missing_field_annotation.py +0 -0
  78. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/missing_return_annotation.py +0 -0
  79. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/not_a_strawberry_enum.py +0 -0
  80. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/object_is_not_a_class.py +0 -0
  81. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/object_is_not_an_enum.py +0 -0
  82. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/permission_fail_silently_requires_optional.py +0 -0
  83. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/private_strawberry_field.py +0 -0
  84. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/scalar_already_registered.py +0 -0
  85. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/syntax.py +0 -0
  86. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/unresolved_field_type.py +0 -0
  87. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/utils/__init__.py +0 -0
  88. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/exceptions/utils/source_finder.py +0 -0
  89. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/__init__.py +0 -0
  90. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/__init__.py +0 -0
  91. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/_compat.py +0 -0
  92. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/conversion.py +0 -0
  93. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/conversion_types.py +0 -0
  94. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/error_type.py +0 -0
  95. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/exceptions.py +0 -0
  96. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/fields.py +0 -0
  97. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/object_type.py +0 -0
  98. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/experimental/pydantic/utils.py +0 -0
  99. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/ext/LICENSE +0 -0
  100. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/ext/__init__.py +0 -0
  101. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/ext/dataclasses/LICENSE +0 -0
  102. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/ext/dataclasses/__init__.py +0 -0
  103. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/ext/dataclasses/dataclasses.py +0 -0
  104. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/ext/mypy_plugin.py +0 -0
  105. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/__init__.py +0 -0
  106. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/add_validation_rules.py +0 -0
  107. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/base_extension.py +0 -0
  108. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/directives.py +0 -0
  109. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/disable_validation.py +0 -0
  110. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/field_extension.py +0 -0
  111. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/mask_errors.py +0 -0
  112. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/max_aliases.py +0 -0
  113. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/max_tokens.py +0 -0
  114. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/parser_cache.py +0 -0
  115. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/pyinstrument.py +0 -0
  116. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/query_depth_limiter.py +0 -0
  117. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/runner.py +0 -0
  118. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/tracing/__init__.py +0 -0
  119. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/tracing/apollo.py +0 -0
  120. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/tracing/datadog.py +0 -0
  121. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/tracing/opentelemetry.py +0 -0
  122. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/tracing/sentry.py +0 -0
  123. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/tracing/utils.py +0 -0
  124. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/utils.py +0 -0
  125. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/extensions/validation_cache.py +0 -0
  126. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/fastapi/__init__.py +0 -0
  127. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/fastapi/context.py +0 -0
  128. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/fastapi/handlers/__init__.py +0 -0
  129. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/fastapi/handlers/graphql_transport_ws_handler.py +0 -0
  130. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/fastapi/handlers/graphql_ws_handler.py +0 -0
  131. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/fastapi/router.py +0 -0
  132. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/__init__.py +0 -0
  133. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/argument.py +0 -0
  134. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/enum.py +0 -0
  135. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/field.py +0 -0
  136. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/mutation.py +0 -0
  137. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/object_type.py +0 -0
  138. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/scalar.py +0 -0
  139. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/schema.py +0 -0
  140. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/schema_directive.py +0 -0
  141. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/schema_directives.py +0 -0
  142. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/types.py +0 -0
  143. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/federation/union.py +0 -0
  144. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/field.py +0 -0
  145. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/field_extensions/__init__.py +0 -0
  146. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/field_extensions/input_mutation.py +0 -0
  147. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/file_uploads/__init__.py +0 -0
  148. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/file_uploads/scalars.py +0 -0
  149. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/file_uploads/utils.py +0 -0
  150. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/flask/__init__.py +0 -0
  151. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/flask/views.py +0 -0
  152. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/__init__.py +0 -0
  153. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/async_base_view.py +0 -0
  154. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/base.py +0 -0
  155. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/exceptions.py +0 -0
  156. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/ides.py +0 -0
  157. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/sync_base_view.py +0 -0
  158. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/temporal_response.py +0 -0
  159. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/types.py +0 -0
  160. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/http/typevars.py +0 -0
  161. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/lazy_type.py +0 -0
  162. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/litestar/__init__.py +0 -0
  163. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/litestar/controller.py +0 -0
  164. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/litestar/handlers/graphql_transport_ws_handler.py +0 -0
  165. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/litestar/handlers/graphql_ws_handler.py +0 -0
  166. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/mutation.py +0 -0
  167. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/object_type.py +0 -0
  168. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/parent.py +0 -0
  169. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/permission.py +0 -0
  170. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/printer/__init__.py +0 -0
  171. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/printer/ast_from_value.py +0 -0
  172. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/printer/printer.py +0 -0
  173. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/private.py +0 -0
  174. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/py.typed +0 -0
  175. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/quart/__init__.py +0 -0
  176. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/quart/views.py +0 -0
  177. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/relay/__init__.py +0 -0
  178. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/relay/exceptions.py +0 -0
  179. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/relay/fields.py +0 -0
  180. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/relay/types.py +0 -0
  181. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/relay/utils.py +0 -0
  182. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/resolvers.py +0 -0
  183. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/sanic/__init__.py +0 -0
  184. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/sanic/context.py +0 -0
  185. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/sanic/utils.py +0 -0
  186. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/sanic/views.py +0 -0
  187. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/scalars.py +0 -0
  188. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/__init__.py +0 -0
  189. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/base.py +0 -0
  190. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/compat.py +0 -0
  191. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/config.py +0 -0
  192. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/exceptions.py +0 -0
  193. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/execute.py +0 -0
  194. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/name_converter.py +0 -0
  195. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/schema.py +0 -0
  196. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/schema_converter.py +0 -0
  197. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/types/__init__.py +0 -0
  198. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/types/base_scalars.py +0 -0
  199. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/types/concrete_type.py +0 -0
  200. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema/types/scalar.py +0 -0
  201. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema_codegen/__init__.py +0 -0
  202. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/schema_directive.py +0 -0
  203. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/starlite/__init__.py +0 -0
  204. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/starlite/controller.py +0 -0
  205. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/starlite/handlers/graphql_transport_ws_handler.py +0 -0
  206. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/starlite/handlers/graphql_ws_handler.py +0 -0
  207. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/static/apollo-sandbox.html +0 -0
  208. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/static/graphiql.html +0 -0
  209. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/static/pathfinder.html +0 -0
  210. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/__init__.py +0 -0
  211. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/protocols/__init__.py +0 -0
  212. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/protocols/graphql_transport_ws/__init__.py +0 -0
  213. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/protocols/graphql_transport_ws/handlers.py +0 -0
  214. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/protocols/graphql_transport_ws/types.py +0 -0
  215. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/protocols/graphql_ws/__init__.py +0 -0
  216. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/protocols/graphql_ws/handlers.py +0 -0
  217. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/subscriptions/protocols/graphql_ws/types.py +0 -0
  218. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/test/__init__.py +0 -0
  219. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/test/client.py +0 -0
  220. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/tools/__init__.py +0 -0
  221. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/tools/create_type.py +0 -0
  222. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/tools/merge_types.py +0 -0
  223. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/type.py +0 -0
  224. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/__init__.py +0 -0
  225. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/execution.py +0 -0
  226. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/fields/__init__.py +0 -0
  227. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/fields/resolver.py +0 -0
  228. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/graphql.py +0 -0
  229. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/info.py +0 -0
  230. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/nodes.py +0 -0
  231. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/type_resolver.py +0 -0
  232. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/types/types.py +0 -0
  233. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/union.py +0 -0
  234. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/unset.py +0 -0
  235. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/__init__.py +0 -0
  236. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/aio.py +0 -0
  237. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/await_maybe.py +0 -0
  238. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/dataclasses.py +0 -0
  239. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/debug.py +0 -0
  240. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/deprecations.py +0 -0
  241. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/graphql_lexer.py +0 -0
  242. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/importer.py +0 -0
  243. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/inspect.py +0 -0
  244. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/logging.py +0 -0
  245. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/operation.py +0 -0
  246. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/str_converters.py +0 -0
  247. {strawberry_graphql-0.224.1 → strawberry_graphql-0.224.2}/strawberry/utils/typing.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strawberry-graphql
3
- Version: 0.224.1
3
+ Version: 0.224.2
4
4
  Summary: A library for creating GraphQL APIs
5
5
  Home-page: https://strawberry.rocks/
6
6
  License: MIT
@@ -1,7 +1,7 @@
1
1
  [tool.poetry]
2
2
  name = "strawberry-graphql"
3
3
  packages = [ { include = "strawberry" } ]
4
- version = "0.224.1"
4
+ version = "0.224.2"
5
5
  description = "A library for creating GraphQL APIs"
6
6
  authors = ["Patrick Arminio <patrick.arminio@gmail.com>"]
7
7
  license = "MIT"
@@ -2,14 +2,15 @@ from __future__ import annotations
2
2
 
3
3
  import contextlib
4
4
  import inspect
5
+ import types
5
6
  import warnings
6
7
  from asyncio import iscoroutinefunction
7
8
  from typing import (
8
9
  TYPE_CHECKING,
9
10
  Any,
10
- AsyncIterator,
11
+ AsyncContextManager,
11
12
  Callable,
12
- Iterator,
13
+ ContextManager,
13
14
  List,
14
15
  NamedTuple,
15
16
  Optional,
@@ -28,12 +29,18 @@ if TYPE_CHECKING:
28
29
 
29
30
  class WrappedHook(NamedTuple):
30
31
  extension: SchemaExtension
31
- initialized_hook: Union[AsyncIterator[None], Iterator[None]]
32
+ hook: Callable[..., Union[AsyncContextManager[None], ContextManager[None]]]
32
33
  is_async: bool
33
34
 
34
35
 
35
36
  class ExtensionContextManagerBase:
36
- __slots__ = ("hooks", "deprecation_message", "default_hook")
37
+ __slots__ = (
38
+ "hooks",
39
+ "deprecation_message",
40
+ "default_hook",
41
+ "async_exit_stack",
42
+ "exit_stack",
43
+ )
37
44
 
38
45
  def __init_subclass__(cls):
39
46
  cls.DEPRECATION_MESSAGE = (
@@ -73,10 +80,20 @@ class ExtensionContextManagerBase:
73
80
 
74
81
  if hook_fn:
75
82
  if inspect.isgeneratorfunction(hook_fn):
76
- return WrappedHook(extension, hook_fn(extension), False)
83
+ context_manager = contextlib.contextmanager(
84
+ types.MethodType(hook_fn, extension)
85
+ )
86
+ return WrappedHook(
87
+ extension=extension, hook=context_manager, is_async=False
88
+ )
77
89
 
78
90
  if inspect.isasyncgenfunction(hook_fn):
79
- return WrappedHook(extension, hook_fn(extension), True)
91
+ context_manager_async = contextlib.asynccontextmanager(
92
+ types.MethodType(hook_fn, extension)
93
+ )
94
+ return WrappedHook(
95
+ extension=extension, hook=context_manager_async, is_async=True
96
+ )
80
97
 
81
98
  if callable(hook_fn):
82
99
  return self.from_callable(extension, hook_fn)
@@ -96,27 +113,31 @@ class ExtensionContextManagerBase:
96
113
  ) -> WrappedHook:
97
114
  if iscoroutinefunction(on_start) or iscoroutinefunction(on_end):
98
115
 
116
+ @contextlib.asynccontextmanager
99
117
  async def iterator():
100
118
  if on_start:
101
119
  await await_maybe(on_start())
120
+
102
121
  yield
122
+
103
123
  if on_end:
104
124
  await await_maybe(on_end())
105
125
 
106
- hook = iterator()
107
- return WrappedHook(extension, hook, True)
126
+ return WrappedHook(extension=extension, hook=iterator, is_async=True)
108
127
 
109
128
  else:
110
129
 
111
- def iterator():
130
+ @contextlib.contextmanager
131
+ def iterator_async():
112
132
  if on_start:
113
133
  on_start()
134
+
114
135
  yield
136
+
115
137
  if on_end:
116
138
  on_end()
117
139
 
118
- hook = iterator()
119
- return WrappedHook(extension, hook, False)
140
+ return WrappedHook(extension=extension, hook=iterator_async, is_async=False)
120
141
 
121
142
  @staticmethod
122
143
  def from_callable(
@@ -125,59 +146,34 @@ class ExtensionContextManagerBase:
125
146
  ) -> WrappedHook:
126
147
  if iscoroutinefunction(func):
127
148
 
128
- async def async_iterator():
149
+ @contextlib.asynccontextmanager
150
+ async def iterator():
129
151
  await func(extension)
130
152
  yield
131
153
 
132
- hook = async_iterator()
133
- return WrappedHook(extension, hook, True)
154
+ return WrappedHook(extension=extension, hook=iterator, is_async=True)
134
155
  else:
135
156
 
157
+ @contextlib.contextmanager
136
158
  def iterator():
137
159
  func(extension)
138
160
  yield
139
161
 
140
- hook = iterator()
141
- return WrappedHook(extension, hook, False)
162
+ return WrappedHook(extension=extension, hook=iterator, is_async=False)
142
163
 
143
- def run_hooks_sync(self, is_exit: bool = False) -> None:
144
- """Run extensions synchronously."""
145
- ctx = (
146
- contextlib.suppress(StopIteration, StopAsyncIteration)
147
- if is_exit
148
- else contextlib.nullcontext()
149
- )
150
- for hook in self.hooks:
151
- with ctx:
152
- if hook.is_async:
153
- raise RuntimeError(
154
- f"SchemaExtension hook {hook.extension}.{self.HOOK_NAME} "
155
- "failed to complete synchronously."
156
- )
157
- else:
158
- hook.initialized_hook.__next__() # type: ignore[union-attr]
159
-
160
- async def run_hooks_async(self, is_exit: bool = False) -> None:
161
- """Run extensions asynchronously with support for sync lifecycle hooks.
162
-
163
- The ``is_exit`` flag is required as a `StopIteration` cannot be raised from
164
- within a coroutine.
165
- """
166
- ctx = (
167
- contextlib.suppress(StopIteration, StopAsyncIteration)
168
- if is_exit
169
- else contextlib.nullcontext()
170
- )
164
+ def __enter__(self) -> None:
165
+ self.exit_stack = contextlib.ExitStack()
171
166
 
172
- for hook in self.hooks:
173
- with ctx:
174
- if hook.is_async:
175
- await hook.initialized_hook.__anext__() # type: ignore[union-attr]
176
- else:
177
- hook.initialized_hook.__next__() # type: ignore[union-attr]
167
+ self.exit_stack.__enter__()
178
168
 
179
- def __enter__(self):
180
- self.run_hooks_sync()
169
+ for hook in self.hooks:
170
+ if hook.is_async:
171
+ raise RuntimeError(
172
+ f"SchemaExtension hook {hook.extension}.{self.HOOK_NAME} "
173
+ "failed to complete synchronously."
174
+ )
175
+ else:
176
+ self.exit_stack.enter_context(hook.hook()) # type: ignore
181
177
 
182
178
  def __exit__(
183
179
  self,
@@ -185,10 +181,18 @@ class ExtensionContextManagerBase:
185
181
  exc_val: Optional[BaseException],
186
182
  exc_tb: Optional[TracebackType],
187
183
  ):
188
- self.run_hooks_sync(is_exit=True)
184
+ self.exit_stack.__exit__(exc_type, exc_val, exc_tb)
189
185
 
190
- async def __aenter__(self):
191
- await self.run_hooks_async()
186
+ async def __aenter__(self) -> None:
187
+ self.async_exit_stack = contextlib.AsyncExitStack()
188
+
189
+ await self.async_exit_stack.__aenter__()
190
+
191
+ for hook in self.hooks:
192
+ if hook.is_async:
193
+ await self.async_exit_stack.enter_async_context(hook.hook()) # type: ignore
194
+ else:
195
+ self.async_exit_stack.enter_context(hook.hook()) # type: ignore
192
196
 
193
197
  async def __aexit__(
194
198
  self,
@@ -196,7 +200,7 @@ class ExtensionContextManagerBase:
196
200
  exc_val: Optional[BaseException],
197
201
  exc_tb: Optional[TracebackType],
198
202
  ):
199
- await self.run_hooks_async(is_exit=True)
203
+ await self.async_exit_stack.__aexit__(exc_type, exc_val, exc_tb)
200
204
 
201
205
 
202
206
  class OperationContextManager(ExtensionContextManagerBase):