Errors in strawberry

Strawberry has built-in errors for when something goes wrong with the creation and usage of the schema.

It also provides a custom exception handler for improving how errors are printed and to make it easier to find the exception source, for example the following code:

import strawberry
@strawberry.type
class Query:
@strawberry.field
def hello_world(self):
return "Hello there!"
schema = strawberry.Schema(query=Query)

will show the following exception on the command line:

error: Missing annotation for field `hello_world` @ demo.py:7 6 | @strawberry.field ❱ 7 | def hello_world(self): ^^^^^^^^^^^ resolver missing annotation 8 | return "Hello there!" To fix this error you can add an annotation, like so `def hello_world(...) -> str:` Read more about this error on https://errors.strawberry.rocks/missing-return-annotation

These errors are only enabled when rich and libcst are installed. You can install Strawberry with errors enabled by running:

pip install "strawberry-graphql[cli]"

If you want to disable the errors you can do so by setting the STRAWBERRY_DISABLE_RICH_ERRORS environment variable to 1.

Was this helpful? What can we improve?

Edit on Github

Newsletter 💌

Do you want to receive the latest updates on Strawberry? Subscribe to our newsletter!