Skip to content

fix: skip plugin entry points that fail to load - #7

Closed
Golden007-prog wants to merge 1 commit into
IP-XACT:mainfrom
Golden007-prog:fix/plugin-discovery-failures
Closed

Golden007-prog wants to merge 1 commit into
IP-XACT:mainfrom
Golden007-prog:fix/plugin-discovery-failures

Conversation

@Golden007-prog

Copy link
Copy Markdown

A failed importer or exporter entry-point import currently stops parser construction, so even the built-in link and check commands fail. Catch each individual load failure, print a warning naming the entry point, group and cause, and continue discovering healthy plugins.

Fixes #4.

The existing rejection of loaded objects that are not valid plugin subclasses remains unchanged. This patch handles failures raised by entry_point.load().

Validation on Windows/Python 3.14.3:

  • Eight regression cases fail against the original source: failed exporter/importer imports, healthy plugins before and after failures, and built-in link/check commands with a broken plugin in either group.
  • python -m pytest tests/test_exporter.py tests/test_importer.py tests/test_cli.py -q: 36 passed.
  • python -m pytest -q: 133 passed.
  • git diff --check: passed.
  • uv build: source distribution and wheel built successfully.

Prepared with OpenAI Codex assistance; source and regression tests reviewed before publication.

@mtravaillard

Copy link
Copy Markdown
Contributor

This issue has been solved by my own changes before i saw your PR, thanks for your interest in the tool.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

One broken plugin makes the whole CLI unusable, including link and check

2 participants