Expand description
Python plugin runtime for Fidius.
This crate embeds CPython into the host process via PyO3 and (in later
tasks) exposes a PluginHandle whose dispatcher calls into a loaded
Python module. Hosts opt into Python plugin support by depending on this
crate (typically through fidius-host’s python feature flag).
At this stage the crate provides only the foundation: shared interpreter
initialisation and Python-exception-to-PluginError conversion. The
loader, dispatcher, and packaging integration land in subsequent tasks
under FIDIUS-I-0020.
Re-exports§
pub use error::pyerr_to_plugin_error;pub use handle::PythonCallError;pub use handle::PythonPluginHandle;pub use interpreter::ensure_initialized;pub use loader::load_python_plugin;pub use loader::PythonLoadError;
Modules§
- error
- Bridge Python exceptions into fidius’s
PluginError. - handle
- Handle to a loaded Python plugin.
- interpreter
- Embedded interpreter lifecycle.
- loader
- Load a Python plugin package and produce a
PythonPluginHandlewhose method-index map lets the host dispatch by index just like the cdylib path. - value_
bridge - Bridge between
serde_json::Valueand Python objects.