strawberry-graphql 0.275.1__py3-none-any.whl → 0.275.3__py3-none-any.whl

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.
@@ -529,8 +529,15 @@ class AsyncBaseHTTPView(
529
529
  else:
530
530
  raise HTTPException(400, "Unsupported content type")
531
531
 
532
+ query = data.get("query")
533
+ if not isinstance(query, (str, type(None))):
534
+ raise HTTPException(
535
+ 400,
536
+ "The GraphQL operation's `query` must be a string or null, if provided.",
537
+ )
538
+
532
539
  return GraphQLRequestData(
533
- query=data.get("query"),
540
+ query=query,
534
541
  variables=data.get("variables"),
535
542
  operation_name=data.get("operationName"),
536
543
  extensions=data.get("extensions"),
@@ -154,8 +154,15 @@ class SyncBaseHTTPView(
154
154
  else:
155
155
  raise HTTPException(400, "Unsupported content type")
156
156
 
157
+ query = data.get("query")
158
+ if not isinstance(query, (str, type(None))):
159
+ raise HTTPException(
160
+ 400,
161
+ "The GraphQL operation's `query` must be a string or null, if provided.",
162
+ )
163
+
157
164
  return GraphQLRequestData(
158
- query=data.get("query"),
165
+ query=query,
159
166
  variables=data.get("variables"),
160
167
  operation_name=data.get("operationName"),
161
168
  extensions=data.get("extensions"),
@@ -918,8 +918,11 @@ class GraphQLCoreConverter:
918
918
 
919
919
  # If the graphql_type is a GraphQLUnionType, merge its child types
920
920
  if isinstance(graphql_type, GraphQLUnionType):
921
- # Add the child types of the GraphQLUnionType to the list of graphql_types
922
- graphql_types.extend(graphql_type.types)
921
+ # Add the child types of the GraphQLUnionType to the list of graphql_types,
922
+ # filter out any duplicates
923
+ for child_type in graphql_type.types:
924
+ if child_type not in graphql_types:
925
+ graphql_types.append(child_type)
923
926
  else:
924
927
  graphql_types.append(graphql_type)
925
928
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: strawberry-graphql
3
- Version: 0.275.1
3
+ Version: 0.275.3
4
4
  Summary: A library for creating GraphQL APIs
5
5
  License: MIT
6
6
  Keywords: graphql,api,rest,starlette,async
@@ -135,12 +135,12 @@ strawberry/file_uploads/utils.py,sha256=-c6TbqUI-Dkb96hWCrZabh6TL2OabBuQNkCarOqg
135
135
  strawberry/flask/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
136
136
  strawberry/flask/views.py,sha256=MCvAsNgTZLU8RvTYKWfnLU2w7Wv1ZZpxW9W3TyTZuPY,6355
137
137
  strawberry/http/__init__.py,sha256=ytAirKk7K7D5knY21tpCGeZ-sCPgwMsijL5AxmOy-94,1163
138
- strawberry/http/async_base_view.py,sha256=fEJGBPqEOnEiYc0bBT4vroqyidoHNBnfF-1iScmOQi0,20124
138
+ strawberry/http/async_base_view.py,sha256=FPQLQ_JBCFIRhOn4wTyymNaOcB0BTGjvHy-ek51tWb4,20358
139
139
  strawberry/http/base.py,sha256=MiX0-RqOkhRvlfpmuvgTHp4tygbUmG8fnLc0uCrOllU,2550
140
140
  strawberry/http/exceptions.py,sha256=9E2dreS1crRoJVUEPuHyx23NcDELDHNzkAOa-rGv-8I,348
141
141
  strawberry/http/ides.py,sha256=WjU0nsMDgr3Bd1ebWkUEkO2d1hk0dI16mLqXyCHqklA,613
142
142
  strawberry/http/parse_content_type.py,sha256=CYHO8F9b9DP1gJ1xxPjc9L2GkBwsyC1O_GCEp1QOuG0,381
143
- strawberry/http/sync_base_view.py,sha256=_lYjw3uAQoYJ8QEWBWr7g6a88aM5NX8YFTFeZ5qzH88,7424
143
+ strawberry/http/sync_base_view.py,sha256=vD69LL1s_xKxxbR8fjZfE4Y2WAbJyhD6VgpORF_JmJs,7658
144
144
  strawberry/http/temporal_response.py,sha256=HTt65g-YxqlPGxjqvH5bzGoU1b3CctVR-9cmCRo5dUo,196
145
145
  strawberry/http/types.py,sha256=H0wGOdCO-5tNKZM_6cAtNRwZAjoEXnAC5N0Q7b70AtU,398
146
146
  strawberry/http/typevars.py,sha256=Uu6NkKe3h7o29ZWwldq6sJy4ioSSeXODTCDRvY2hUpE,489
@@ -172,7 +172,7 @@ strawberry/schema/config.py,sha256=6d2MPrAgq97-7aze555dRcB3yw-aeUexYMP3KVN22c0,1
172
172
  strawberry/schema/exceptions.py,sha256=8gsMxxFDynMvRkUDuVL9Wwxk_zsmo6QoJ2l4NPxd64M,1137
173
173
  strawberry/schema/name_converter.py,sha256=xFOXEgqldFkxXRkIQvsJN1dPkWbEUaIrTYNOMYSEVwQ,6945
174
174
  strawberry/schema/schema.py,sha256=-dVGJfOAyq-w2lpEbzCaiRNPMH68nirv-Q6gZ4aW0UU,37951
175
- strawberry/schema/schema_converter.py,sha256=vxFghA8c4vPLx0XM07gjIbWqMWUnaognzmsuCWTSkTk,39112
175
+ strawberry/schema/schema_converter.py,sha256=nCQXylHCwWDXW3sRRlZrAaLyCna4iIj3GAy2sBp-VEA,39267
176
176
  strawberry/schema/types/__init__.py,sha256=oHO3COWhL3L1KLYCJNY1XFf5xt2GGtHiMC-UaYbFfnA,68
177
177
  strawberry/schema/types/base_scalars.py,sha256=JRUq0WjEkR9dFewstZnqnZKp0uOEipo4UXNF5dzRf4M,1971
178
178
  strawberry/schema/types/concrete_type.py,sha256=axIyFZgdwNv-XYkiqX67464wuFX6Vp0jYATwnBZSUvM,750
@@ -234,8 +234,8 @@ strawberry/utils/logging.py,sha256=U1cseHGquN09YFhFmRkiphfASKCyK0HUZREImPgVb0c,7
234
234
  strawberry/utils/operation.py,sha256=ZgVOw3K2jQuLjNOYUHauF7itJD0QDNoPw9PBi0IYf6k,1234
235
235
  strawberry/utils/str_converters.py,sha256=-eH1Cl16IO_wrBlsGM-km4IY0IKsjhjnSNGRGOwQjVM,897
236
236
  strawberry/utils/typing.py,sha256=SDvX-Du-9HAV3-XXjqi7Q5f5qPDDFd_gASIITiwBQT4,14073
237
- strawberry_graphql-0.275.1.dist-info/LICENSE,sha256=m-XnIVUKqlG_AWnfi9NReh9JfKhYOB-gJfKE45WM1W8,1072
238
- strawberry_graphql-0.275.1.dist-info/METADATA,sha256=aWHFw8HBijLjhiLqaWy5LtyjSpiWExXWIAIvWOUhG3Q,7393
239
- strawberry_graphql-0.275.1.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
240
- strawberry_graphql-0.275.1.dist-info/entry_points.txt,sha256=Nk7-aT3_uEwCgyqtHESV9H6Mc31cK-VAvhnQNTzTb4k,49
241
- strawberry_graphql-0.275.1.dist-info/RECORD,,
237
+ strawberry_graphql-0.275.3.dist-info/LICENSE,sha256=m-XnIVUKqlG_AWnfi9NReh9JfKhYOB-gJfKE45WM1W8,1072
238
+ strawberry_graphql-0.275.3.dist-info/METADATA,sha256=uw0OJJzoykRBGBq_-k-1nVHD6BWr0j0K-z83XLoZfA4,7393
239
+ strawberry_graphql-0.275.3.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
240
+ strawberry_graphql-0.275.3.dist-info/entry_points.txt,sha256=Nk7-aT3_uEwCgyqtHESV9H6Mc31cK-VAvhnQNTzTb4k,49
241
+ strawberry_graphql-0.275.3.dist-info/RECORD,,