list_plugin_distinfo() keeps unregistered plugins
Maintainer thường phản hồi trong vòng 1 ngày
@RonnyPfannschmidt đang làm issue này rồi.
Từ ngày 9/10/2026.
Đá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
- 35/100
Hướng nghiên cứu
Start in unregister() and in load_setuptools_entrypoints(), which appends to _plugin_distinfo, then check what list_plugin_distinfo() and list_plugin_distributions() return after a plugin is unregistered. Linked PR #764 was closed without merging, so read its discussion before starting. Done means unregistering a plugin removes its distinfo entries and re-registering it through entry points adds no duplicate.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
🤖 Written by Claude Opus 5.5 via Claude Code for the pluggy maintainers; I prompted it, it did the work, I read it.
load_setuptools_entrypoints() appends to _plugin_distinfo, but unregister() never removes those entries. After unregistering, list_plugin_distinfo() and list_plugin_distributions() still list the plugin, and that list feeds pytest's "plugins:" header. Re-registering through entry points then adds a duplicate entry.
Confirmed by reading the code and a synthetic repro, not by a real entry-point load.
Proposal: drop the plugin's entries in unregister().
Found while working on #759.
- Ngôn ngữ chính
- Python
- Star
- 1.7k
- Fork
- 172
- Merge trung bình
- 1 ngày 15 giờ
- Pull request đã merge (30 ngày)
- 22
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 pytest-dev/pluggy
-
Plugin registry compares plugins by equality, not identityCó thể đã có người làm @00200200 đã nhận 3 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
pytest-dev/pluggy#760 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
deprecate passing None as a plugin instanceCó 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 30/100
pytest-dev/pluggy#790 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Defaulted positional-only hook parameters are forwarded as keywordsCó thể đã có người làm @adenzhou1350 đã nhận 4 ngày trước. Đang mở
Độ khó 4/5 1-2 ngày Mức phù hợp với người mới 45/100
pytest-dev/pluggy#774 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
unregister() argument validation relies on assertCó thể đã có người làm @ekanshul đã nhận 5 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 42/100
pytest-dev/pluggy#762 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Failures during add_hookspecs / historic replay leave partial stateCó thể đã có người làm @starx710 đã nhận 1 ngày trước. Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 50/100
pytest-dev/pluggy#761 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của pytest-dev/pluggy
Issue tương tự
-
`LazyFrameRemote` and `ExecuteRemote` sinks do not accept `Path`, like `LazyFrame` sinks do.Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
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 74/100
WingedGuardian/GENesis-AGI#3375 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
curriculum documentation quality
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
githubnext/gh-aw-workshop#4601 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
approved Good First Issue scope: docs
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
hiero-ledger/hiero-sdk-python#2730 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày