We have a use-case where we sometimes import Annotated under a different name (since there is a naming collision with an existing object callled Annotations and Annotated[Annotations, ...] can be hard to read. Unfortunately, it looks like if we try to do this, then we fail with a false positive:
from typing_extensions import Annotated as WithSchema
def f(x: WithSchema[int, "hello"]) -> None:
return
fails pyflakes with F821 undefined name 'hello.
Everything works fine if we do not use the Annotated as WithSchema import alias though. Would it be possible to extend the logic to also handle such a case?
cc @nishkakar @ezrilow
We have a use-case where we sometimes import
Annotatedunder a different name (since there is a naming collision with an existing object callledAnnotationsandAnnotated[Annotations, ...]can be hard to read. Unfortunately, it looks like if we try to do this, then we fail with a false positive:fails pyflakes with
F821 undefined name 'hello.Everything works fine if we do not use the
Annotated as WithSchemaimport alias though. Would it be possible to extend the logic to also handle such a case?cc @nishkakar @ezrilow