Despite the well defined __all__
, several important tools (e.g: pylint, mypy, jedi) cannot understand the code structure of trio. They then report error in the user code.
E.G:
On the following snippet, pylint will report trio not having the run()
member, jedi won't allow code completion, vscode intellisense won't let you go to definition and mypy won't report any error if I try to add +1
after run()
import trio ... trio.run(parent)
I understand this is inconvenient, as those tools should be able to pick up the __all__
declaration and use that instead of requiring your to type it all again, but they don't. Since they are the most popular in the Python ecosystem, and are used by a lot of editors (vi, sublime text, vscode, etc) but also in tasks (tox, travis, git hooks, etc), it's important that they work.
For now, that means putting # noqa
a bit everywhere or disabling a lot of warning, which is not practical.
zgoda, almarklein and Jaakkonen
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4