F822 (flake8): Type-only definitions in stubs and __all__
I am not sure if this is something that should be fixed in pyflakes as it only concerns stub files and is a genuine error in Python files. Please consider:
__all__ = ["foo"]
foo: int
This reports undefined name 'foo' in __all__. This is true at runtime, although this example is still useful for stubs. (flake8 3.7.9, pyflakes 2.1.1)
is this the same as #486? (it also works if doing foo: int = ...)
It might be due to the same root cause (foo: int not introducing a name). But I think the behavior should be a bit different. #486 is problematic since it rejects valid implementations, especially when from __future__ import annotations becomes the default. This problem only affects stubs and the warning should most likely remain for implementations.
could you answer my question in #486 then?