Enum PluginError
pub enum PluginError {
Show 24 variants
NotFound(String),
InvalidManifest(String),
NamespaceChanged(String),
RecoveryRetained {
path: String,
reason: String,
},
ReplacementInterrupted {
name: String,
preserved: PathBuf,
cause: String,
},
MoveUnsupported(String),
MoveUnsupportedCleanup {
path: String,
reason: String,
},
InvalidConfig(String),
InvalidInstanceId(String),
InvalidEndpoint(String),
LoadFailed(String),
ExecutionFailed(String),
PermissionDenied {
plugin: String,
permission: String,
},
AlreadyLoaded(String),
UnadmittedPackage {
name: String,
reason: String,
},
UnsupportedCapability(String),
UnsignedPlugin(String),
UntrustedPublisher {
plugin: String,
publisher_key: String,
},
SignatureInvalid(String),
PayloadDigestRequired(String),
PayloadDigestInvalid(String),
PayloadDigestMismatch {
expected: String,
actual: String,
},
Io(Error),
TomlParse(Error),
}Variants§
NotFound(String)
InvalidManifest(String)
NamespaceChanged(String)
Filesystem identity changed; never evidence of defective package contents.
RecoveryRetained
A package operation could not finish and kept the files it held at
path: for example a claimed package it could not restore without
replacing another occupant, or a staged package it could not publish.
reason says why.
ReplacementInterrupted
An update claimed the installed package and could neither publish its
replacement nor put the claimed generation back. preserved holds that
generation, in a transaction whose lease is released on return, so
PluginHost::recover_interrupted_update can put it back, unless a
package of that name is installed by then.
MoveUnsupported(String)
The platform or filesystem has no rename that refuses an existing destination, so install removed the copy it staged and installed nothing; a retry there fails the same way.
MoveUnsupportedCleanup
The same permanent publication refusal, but cleanup did not complete.
path names the failed cleanup operation, not a guarantee that all
original payload bytes remain. This is never a recommendation to retry.
InvalidConfig(String)
InvalidInstanceId(String)
InvalidEndpoint(String)
LoadFailed(String)
ExecutionFailed(String)
PermissionDenied
AlreadyLoaded(String)
UnadmittedPackage
Something occupies a package name in the plugins directory that the host
has not admitted as that package, and it was left as found. Install
never overwrites it. remove deletes an unloaded directory only when it
is empty, or when admission rejects its own contents rather than its
signature. reason says why it was kept.
UnsupportedCapability(String)
UnsignedPlugin(String)
UntrustedPublisher
SignatureInvalid(String)
PayloadDigestRequired(String)
PayloadDigestInvalid(String)
PayloadDigestMismatch
Io(Error)
TomlParse(Error)
Trait Implementations§
Source§impl Debug for PluginError
impl Debug for PluginError
Source§impl Display for PluginError
impl Display for PluginError
Source§impl Error for PluginError
impl Error for PluginError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · §fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()