stubgen timeout on building docs on MacOS
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Python
- Star
- 20.6k
- Fork
- 3.3k
- Chỉ số merge pull request
- Chỉ số pull request đang chờ
Mô tả
stubgen timeout on building docs on MacOS
python -m mypy.stubgen -m mypackage -o ./stubs --include-docstrings
The stubgen tool always reports a timeout waiting for queued package properties. The timeout happens in the following code block:
-> moduleinspect.py
(155) def _get_from_queue(self) -> ModuleProperties | str | None:
It seems the subprocess never queues package properties.
To Reproduce
This error occurs on MacOS only.
python -m mypy.stubgen -m mypackage -o ./stubs --include-docstrings
Expected Behavior
It should work as smooth as on Windows and Linux, outputting the stub file without further issues.
Actual Behavior
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/stubgen.py", line 2077, in <module>
main()
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/stubgen.py", line 2073, in main
generate_stubs(options)
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/stubgen.py", line 1883, in generate_stubs
py_modules, c_modules = collect_build_targets(options, mypy_opts)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/stubgen.py", line 1626, in collect_build_targets
py_modules, c_modules = find_module_paths_using_imports(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/stubgen.py", line 1660, in find_module_paths_using_imports
result = find_module_path_and_all_py3(inspect, mod, verbose)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/stubutil.py", line 83, in find_module_path_and_all_py3
mod = inspect.get_package_properties(module)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/moduleinspect.py", line 138, in get_package_properties
res = self._get_from_queue()
^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mypy/moduleinspect.py", line 164, in _get_from_queue
raise RuntimeError("Timeout waiting for subprocess")
RuntimeError: Timeout waiting for subprocess
Error: Process completed with exit code 1.
Your Environment
- Mypy version used: 1.7.0+dev
- Mypy command-line flags: --include-docstrings -p myextmodule
- Mypy configuration options from mypy.ini (and other config files):
- Python version used: cp3.11
- Platform: MacOS
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu với mypy/moduleinspect.py, đặc biệt là ModuleInspect._get_from_queue(), và tái hiện lỗi bằng lệnh stubgen được cung cấp trên macOS. So sánh hành vi của subprocess và queue với Windows hoặc Linux, sau đó xác minh rằng lệnh hoàn tất và ghi các stub mong đợi mà không bị timeout.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python
- Lĩnh vực
- cli, tooling
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 25/100