Open SnoopJ opened 4 months ago
I dug into the original issue just a bit (literally, this time) and found that we probably could differentiate the EntryPointPlugin
type from its parent class PyModulePlugin
a bit more.
This PR works as a quick fix for the exact issue you ran into, but I do think the real solution should be actually handling entry points correctly (i.e. not just as "spicy modules" like the current impl).
For checking the version in particular, an EntryPoint
object has a dist
attribute, which itself has a name
that is most likely what would be expected by the importlib.metadata.version()
call whose failure in this mismatched-name case spawned #2593.
Description
Fixes #2593.
This changeset swallows all exceptions when trying to determine the version of an
EntryPointPlugin
, as there are more failure cases than what catchingValueError
specifically covers, and allowing those exceptions to propagate breaks plugin reloading.Checklist
make qa
(runsmake lint
andmake test
)1388 passed, 8 xfailed, 1 warning in 45.44s