list_plugin_distinfo() keeps unregistered plugins
メンテナーはふだん 1 日以内に返信
@RonnyPfannschmidt がすでに取り組んでいます。
2026年10月9日 から。
評価
調査の方向性
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.
索引モデルが issue の本文から書いたものです。
説明
🤖 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.
- 主要言語
- Python
- スター
- 1.7k
- フォーク
- 172
- 平均マージ
- 2日 18時間
- マージ済み PR(30日)
- 21
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
pytest-dev/pluggy のほかの issue
-
Plugin registry compares plugins by equality, not identity対応中かも @00200200 が 1 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
pytest-dev/pluggy#760 ·
メンテナーはふだん 1 日以内に返信
-
Defaulted positional-only hook parameters are forwarded as keywords対応中かも @adenzhou1350 が 1 日前に担当しました。 オープン
難易度 4/5 1〜2日 初心者へのやさしさ 45/100
pytest-dev/pluggy#774 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
unregister() argument validation relies on assert対応中かも @ekanshul が 3 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 42/100
pytest-dev/pluggy#762 ·
メンテナーはふだん 1 日以内に返信
-
Failures during add_hookspecs / historic replay leave partial state対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 50/100
pytest-dev/pluggy#761 ·
メンテナーはふだん 1 日以内に返信
-
[Downstream] devpi broken - trying to register `None`対応中かも @bluetech が 12 日前に担当しました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
pytest-dev/pluggy#749 · コメント 4 件 ·
メンテナーはふだん 1 日以内に返信
pytest-dev/pluggy の issue をすべて見る
似ている issue
-
難易度 1/5 1〜3時間 初心者へのやさしさ 87/100
adri0/scadustats#128 ·
メンテナーはふだん 1 日以内に返信
-
`TIMESTAMP`, `TIMESTAMP_NTZ`, `TINYINT` and the other `TypeDecorator`s don't declare `python_type`オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
RPBCオープンawaiting policy acceptance precheck-passed
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
Bioconductor/BiocContributions#240 · コメント 1 件 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
documentation good first issue launch
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
FlologixAI/etchwork#4 ·