mypy error type for async get function in HTTPMethodView
FirePanda169 opened this issue · comments
Is there an existing issue for this?
- I have searched the existing issues
Describe the bug
Mypy throws an error overriding the signature of the get method, as it is described only for synchronous execution.
error: Signature of "get" incompatible with supertype "HTTPMethodView" [override]
note: Superclass:
note: Callable[..., Any] | None
note: Subclass:
note: def get(self, request: Request[Any, Any]) -> Coroutine[Any, Any, HTTPResponse]
I suggest changing the description of the get method /sanic/views.py to:
get: Union[Callable[..., Any], Coroutine[..., Any], None]
Code snippet
No response
Expected Behavior
No response
How do you run Sanic?
As a script (app.run
or Sanic.serve
)
Operating System
Linux
Sanic Version
23.12.0
Additional context
No response
PR welcome 😉
That did not solve the problem for me. mypy
still complains and I have no idea why.
It works if None
is removed from the type definition.
get: Union[Callable[..., Any], Coroutine[..., Any]]
I cannot explain this behavior.