Stubgen fails with timeout for locust
まだ誰も着手していません。
- 主要言語
- Python
- スター
- 20.6k
- フォーク
- 3.3k
- PR マージ指標
- PR 指標を取得中
説明
Hi,
I'm trying to generate type stubs for Locust and stubgen fails with a timeout (see details below).
I was wondering if someone has any insight into what causes this or how to fix it.
Please provide more information to help us understand the issue:
-
Are you reporting a bug, or opening a feature request?
Bug -
Please insert below the code you are checking with mypy,
or a mock-up repro if the source is private. We would appreciate
if you try to simplify your case to a minimal repro.pip install mypy locust stubgen -p locust -
What is the actual behavior/output?
Traceback (most recent call last): File "./venv/bin/stubgen", line 10, in <module> sys.exit(main()) File "mypy/stubgen.py", line 1564, in main File "mypy/stubgen.py", line 1422, in generate_stubs File "mypy/stubgen.py", line 1183, in collect_build_targets File "mypy/stubgen.py", line 1217, in find_module_paths_using_imports File "mypy/stubutil.py", line 62, in walk_packages File "mypy/moduleinspect.py", line 137, in get_package_properties File "mypy/moduleinspect.py", line 163, in _get_from_queue RuntimeError: Timeout waiting for subprocess -
What is the behavior/output you expect?
No console output and generated stubs inout/. -
What are the versions of mypy and Python you are using?
- Python v3.8.2
- mypy 0.782
-
Do you see the same issue after installing mypy from Git master?
Yes:Traceback (most recent call last): File "./venv/bin/stubgen", line 33, in <module> sys.exit(load_entry_point('mypy', 'console_scripts', 'stubgen')()) File "/Users/simon/work/locust-test/mypy/mypy/stubgen.py", line 1564, in main generate_stubs(options) File "/Users/simon/work/locust-test/mypy/mypy/stubgen.py", line 1422, in generate_stubs py_modules, c_modules = collect_build_targets(options, mypy_opts) File "/Users/simon/work/locust-test/mypy/mypy/stubgen.py", line 1183, in collect_build_targets py_modules, c_modules = find_module_paths_using_imports(options.modules, File "/Users/simon/work/locust-test/mypy/mypy/stubgen.py", line 1217, in find_module_paths_using_imports found = list(walk_packages(inspect, packages, verbose)) File "/Users/simon/work/locust-test/mypy/mypy/stubutil.py", line 62, in walk_packages prop = inspect.get_package_properties(package_name) File "/Users/simon/work/locust-test/mypy/mypy/moduleinspect.py", line 137, in get_package_properties res = self._get_from_queue() File "/Users/simon/work/locust-test/mypy/mypy/moduleinspect.py", line 163, in _get_from_queue raise RuntimeError('Timeout waiting for subprocess') RuntimeError: Timeout waiting for subprocess
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
mypy と locust をインストールした後、stubgen -p locust で問題を再現します。mypy/stubgen.py の collect_build_targets と find_module_paths_using_imports から開始し、mypy/stubutil.py と mypy/moduleinspect.py を通る呼び出しをサブプロセスのタイムアウトまで追跡します。コマンドがタイムアウトせずに完了し、out/ にスタブが生成されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- tooling
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100