strawberry-graphql / strawberry

A GraphQL library for Python that leverages type annotations 🍓
https://strawberry.rocks
MIT License
3.85k stars 510 forks source link

Pyright type issue with strawberry.file_uploads.Upload #3382

Open axiomofjoy opened 4 months ago

axiomofjoy commented 4 months ago

Describe the Bug

VSCode and Pyright give me red squiggly lines when using strawberry.file_uploads.Upload.

Repro:

Save a file with the contents:

from strawberry.file_uploads import Upload

async def read(f: Upload) -> bytes:
    data = await f.read()
    return data

Then run pyright on this file. You will see something like

/Users/xander/memly/backend/scratch2.py
  /Users/xander/memly/backend/scratch2.py:5:5 - error: Type of "data" is unknown (reportUnknownVariableType)
  /Users/xander/memly/backend/scratch2.py:5:18 - error: Type of "read" is unknown (reportUnknownMemberType)
  /Users/xander/memly/backend/scratch2.py:5:20 - error: Cannot access member "read" for type "Upload"
    Member "read" is unknown (reportAttributeAccessIssue)
  /Users/xander/memly/backend/scratch2.py:6:12 - error: Return type is unknown (reportUnknownVariableType)
4 errors, 0 warnings, 0 informations

System Information

Additional Context

Screenshot 2024-02-14 at 11 13 05 PM

Upvote & Fund

Fund with Polar

axiomofjoy commented 4 months ago

I'm running strict mode. It looks like that's not currently supported. Any plans to support?