Expand description
Subprocess-based third-party analyzer plugins for zuit.
This crate provides infrastructure for loading and running external analyzer plugins as subprocesses. Plugins communicate with zuit via JSON-RPC and can be installed from Git repositories or local paths.
Re-exports§
pub use analyzer::PluginAnalyzer;pub use error::PluginError;pub use install::install_git;pub use install::install_git_in;pub use install::install_local;pub use install::install_local_in;pub use install::looks_like_git_url;pub use manifest::OutputFormat;pub use manifest::PluginManifest;pub use parse_zuit::parse_ndjson;pub use parse_sarif::parse_sarif;pub use remove::remove;pub use store::list_installed;pub use store::list_installed_in;pub use store::plugins_dir;pub use store::InstalledPlugin;pub use store::PluginSource;pub use update::update;
Modules§
- analyzer
PluginAnalyzer— drives a third-party plugin subprocess and returnsFindings.- error
- Error type for the zuit plugin loader.
- install
- Plugin installation: local-path and git-URL variants.
- manifest
- Plugin manifest type (
zuit-plugin.toml) with parsing and validation. - parse_
sarif - Parser for SARIF 2.1.0 plugin output (minimal subset).
- parse_
zuit - Parser for zuit-native NDJSON plugin output.
- remove
- Plugin removal: delete the install directory (or symlink) and its sidecar.
- store
- Plugin store: paths, source sidecar, and install lock.
- update
- Plugin update: pull latest changes for git installs; no-op for local symlinks.
Functions§
- discover_
user_ plugins - Discovers all installed user plugins and returns a vector of
Analyzertrait objects. - discover_
user_ plugins_ in - Inner implementation of
discover_user_pluginsover an arbitrary directory.