fix: Introspection query should succeed when only mutations exist #558
+16
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
If you only define a function that is a mutation (ex:
CreateProduct
), then the generated GraphQL schema won't have aQuery
type. Since that would be invalid by the GraphQL spec, introspection queries would fail.However, because we use GraphQL Go Tools, and it normalizes the schema when parsed, the introspection does end up getting a
Query
type added - so introspection should pass. However, it adds the type with"fields": null
instead of"fields": []
- which is failing in Postman with:It could be that Postman is pickier than it needs to be, but it still is in the way.
Ideally this would be fixed upstream in GraphQL Go Tools. I'll send a PR there. But in the meantime we can patch the outgoing introspection response.
Checklist
CHANGELOG.md
file describing and linking to this PR