betty.plugin.proxy module

Provide tools for proxying plugin management to other tools.

final class betty.plugin.proxy.ProxyPluginRepository[source]

Bases: PluginRepository[_PluginT], Generic[_PluginT]

Expose multiple other plugin repositories as one unified repository.

__init__(*upstreams: PluginRepository[_PluginT], factory: Callable[[type[_PluginT]], Awaitable[_PluginT]] | None = None)[source]
async get(plugin_id: str) type[_PluginT][source]

Get a single plugin by its ID.

Raises:

PluginNotFound – if no plugin can be found for the given ID.