[Bug]: graphify query loads every language extractor just for _file_stem (about 34 ms per call)
Maintainer thường phản hồi trong vòng 2 ngày
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 78/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- python
- Lĩnh vực
- backend, cli, performance
Hướng nghiên cứu
Bắt đầu tại graphify/build.py, ở graph_has_legacy_ids, rồi theo dõi cách nó nhập _file_stem từ graphify.extractors.base; so sánh đường dẫn nhập đó với cách gói tải các extractor. Dùng lệnh import-time được báo cáo để kiểm tra liệu một truy vấn chỉ đọc có vẫn tải mọi language extractor hay không. Hoàn thành khi việc tải graph cho query và MCP tránh được các import không cần thiết đó mà vẫn giữ nguyên hành vi của graph_has_legacy_ids.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Pre-flight checks
- I have checked the Troubleshooting section in the README
What happened?
graphify query (and the MCP server's graph load) imports every language extractor before answering. Both call graph_has_legacy_ids in graphify/build.py, which imports _file_stem from graphify.extractors.base. Importing that package loads all the extractors, about 55 ms, for a 3-line helper.
python -X importtime -m graphify query "..." on click: graphify.extractors costs about 34 ms of 229 ms of top-level imports. Agents call query many times per task, so this is paid on every call.
Steps to reproduce
cd click && graphify update .
python -X importtime -m graphify query "how does Context invoke a command" 2>&1 | grep graphify.extractors
Error output or graph output
graphify.extractors and the language extractor modules show up in the import trace of a read-only command.
Graphify version
0.9.106 (v8 at 35d1d203)
Operating System
Linux (measured), also Windows
Python Version
3.13
Installation Method
uv tool install (recommended)
- Ngôn ngữ chính
- Python
- Star
- 124k
- Fork
- 11.9k
- Merge trung bình
- 2 giờ 35 phút
- Pull request đã merge (30 ngày)
- 6
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
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.
Issue khác của Graphify-Labs/graphify
-
[Bug]: Python mod.Box[T] annotation gets a false generic_arg edge that replaces the parameter_type one ('is' on tree-sitter nodes)Có thể làm lại được Pull request cho issue này đã bị đóng mà không được merge. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Graphify-Labs/graphify#5110 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
Graphify-Labs/graphify#5006 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
extract --out <dir>: semantic cache never saved, docs missing from manifest (relative source_file resolved against --out)Có thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Graphify-Labs/graphify#4831 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
hooks: last-resort `python3` probe launches the Microsoft Store redirector on Windows (visible console flash, exit 9009)Có thể đã có người làm @Deepjyoti-Sarmah đã nhận 23 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Graphify-Labs/graphify#4563 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
GRAPHIFY_DISABLE_THINKING is ignored by the claude backend, so thinking eats max_tokens and extraction truncatesCó thể đã có người làm @bercedev đã nhận 23 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 69/100
Graphify-Labs/graphify#4546 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của Graphify-Labs/graphify
Issue tương tự
-
Variable declared without a value suppresses ${VAR:-default} expansionCó thể đã có người làm @Omarinho12345 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
theskumar/python-dotenv#750 ·
Maintainer thường phản hồi trong vòng 12 ngày
-
Minor bug: Main page buttonĐang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
Operations on a list[T] | None var throw when the value is NoneCó thể đã có người làm @masenf đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
reflex-dev/reflex#7826 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug]: Upfront audit metrics accept out-of-range budgets and return impossible probabilitiesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
UKGovernmentBEIS/control-arena#947 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
jasonacox/Powerwall-Dashboard#897 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày