[][src]Enum tough::error::Error

#[non_exhaustive]pub enum Error {
    AbsolutePath {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    DatastoreCreate {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    DatastoreOpen {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    DatastoreRemove {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    DatastoreSerialize {
        what: String,
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    DirCreate {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    ExpiredMetadata {
        role: RoleType,
        backtrace: Backtrace,
    },
    FileMetadata {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    FileOpen {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    FileRead {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    FileParseJson {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    FileUrl {
        path: PathBuf,
        backtrace: Backtrace,
    },
    FileWrite {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    HashMismatch {
        context: String,
        calculated: String,
        expected: String,
        backtrace: Backtrace,
    },
    InvalidFileType {
        path: PathBuf,
        backtrace: Backtrace,
    },
    JoinUrl {
        path: String,
        url: Url,
        source: ParseError,
        backtrace: Backtrace,
    },
    KeyPairFromKeySource {
        source: Box<dyn Error + Send + Sync + 'static>,
        backtrace: Backtrace,
    },
    KeyRejected {
        source: KeyRejected,
        backtrace: Backtrace,
    },
    KeysNotFoundInRoot {
        backtrace: Backtrace,
    },
    KeyUnrecognized {
        backtrace: Backtrace,
    },
    LinkCreate {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    MaxSizeExceeded {
        max_size: u64,
        specifier: &'static str,
        backtrace: Backtrace,
    },
    MaxUpdatesExceeded {
        max_root_updates: u64,
        backtrace: Backtrace,
    },
    MetaMissing {
        file: &'static str,
        role: RoleType,
        backtrace: Backtrace,
    },
    Missing {
        field: String,
        backtrace: Backtrace,
    },
    NoFileName {
        path: PathBuf,
        backtrace: Backtrace,
    },
    NoRoleKeysinRoot {
        role: String,
    },
    OlderMetadata {
        role: RoleType,
        current_version: u64,
        new_version: u64,
        backtrace: Backtrace,
    },
    ParseMetadata {
        role: RoleType,
        source: Error,
        backtrace: Backtrace,
    },
    ParseTrustedMetadata {
        source: Error,
        backtrace: Backtrace,
    },
    ParseUrl {
        url: String,
        source: ParseError,
        backtrace: Backtrace,
    },
    PathExistsFail {
        path: PathBuf,
        backtrace: Backtrace,
    },
    PathIsNotFile {
        path: PathBuf,
        backtrace: Backtrace,
    },
    PathIsNotTarget {
        path: PathBuf,
        backtrace: Backtrace,
    },
    PathUtf8 {
        path: PathBuf,
        backtrace: Backtrace,
    },
    RemoveTarget {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    SerializeRole {
        role: String,
        source: Error,
        backtrace: Backtrace,
    },
    SerializeSignedRole {
        role: String,
        source: Error,
        backtrace: Backtrace,
    },
    Sign {
        source: Unspecified,
        backtrace: Backtrace,
    },
    SigningKeysNotFound {
        role: String,
    },
    SpecVersion {
        given: String,
        supported: String,
        backtrace: Backtrace,
    },
    SystemTimeSteppedBackward {
        sys_time: DateTime<Utc>,
        latest_known_time: DateTime<Utc>,
    },
    TargetFileTypeMismatch {
        expected: String,
        found: String,
        path: PathBuf,
        backtrace: Backtrace,
    },
    TargetFromPath {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    Transport {
        url: Url,
        source: Box<dyn Error + Send + Sync>,
        backtrace: Backtrace,
    },
    VerifyMetadata {
        role: RoleType,
        source: Error,
        backtrace: Backtrace,
    },
    VerifyTrustedMetadata {
        source: Error,
        backtrace: Backtrace,
    },
    VersionMismatch {
        role: RoleType,
        fetched: u64,
        expected: u64,
        backtrace: Backtrace,
    },
    CacheFileRead {
        url: Url,
        source: Error,
        backtrace: Backtrace,
    },
    CacheFileWrite {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    CacheDirectoryCreate {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    CacheTargetWrite {
        path: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    CacheTargetMissing {
        target_name: String,
        source: Error,
        backtrace: Backtrace,
    },
    WalkDir {
        directory: PathBuf,
        source: Error,
        backtrace: Backtrace,
    },
    TargetNotFound {
        target_url: String,
    },
    DelegateNotFound {
        name: String,
        source: Error,
    },
    NoTargets,
    NoDelegations,
    DelegatedRolesNotConsistent {
        name: String,
    },
    InvalidPath {
        source: Error,
    },
    RoleNotInMeta {
        name: String,
    },
}

The error type for this library.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
AbsolutePath

Fields of AbsolutePath

path: PathBufsource: Errorbacktrace: Backtrace
DatastoreCreate

The library failed to create a file in the datastore.

Fields of DatastoreCreate

path: PathBufsource: Errorbacktrace: Backtrace
DatastoreOpen

The library failed to open a file in the datastore.

Fields of DatastoreOpen

path: PathBufsource: Errorbacktrace: Backtrace
DatastoreRemove

The library failed to remove a file in the datastore.

Fields of DatastoreRemove

path: PathBufsource: Errorbacktrace: Backtrace
DatastoreSerialize

The library failed to serialize an object to JSON to the datastore.

Fields of DatastoreSerialize

what: Stringpath: PathBufsource: Errorbacktrace: Backtrace
DirCreate

Fields of DirCreate

path: PathBufsource: Errorbacktrace: Backtrace
ExpiredMetadata

A metadata file has expired.

Fields of ExpiredMetadata

role: RoleTypebacktrace: Backtrace
FileMetadata

Fields of FileMetadata

path: PathBufsource: Errorbacktrace: Backtrace
FileOpen

Fields of FileOpen

path: PathBufsource: Errorbacktrace: Backtrace
FileRead

Fields of FileRead

path: PathBufsource: Errorbacktrace: Backtrace
FileParseJson

Fields of FileParseJson

path: PathBufsource: Errorbacktrace: Backtrace
FileUrl

Fields of FileUrl

path: PathBufbacktrace: Backtrace
FileWrite

Fields of FileWrite

path: PathBufsource: Errorbacktrace: Backtrace
HashMismatch

A downloaded target's checksum does not match the checksum listed in the repository metadata.

Fields of HashMismatch

context: Stringcalculated: Stringexpected: Stringbacktrace: Backtrace
InvalidFileType

Fields of InvalidFileType

path: PathBufbacktrace: Backtrace
JoinUrl

The library failed to create a URL from a base URL and a path.

Fields of JoinUrl

path: Stringurl: Urlsource: ParseErrorbacktrace: Backtrace
KeyPairFromKeySource

Fields of KeyPairFromKeySource

source: Box<dyn Error + Send + Sync + 'static>backtrace: Backtrace
KeyRejected

Fields of KeyRejected

source: KeyRejectedbacktrace: Backtrace
KeysNotFoundInRoot

Fields of KeysNotFoundInRoot

backtrace: Backtrace
KeyUnrecognized

Fields of KeyUnrecognized

backtrace: Backtrace
LinkCreate

Fields of LinkCreate

path: PathBufsource: Errorbacktrace: Backtrace
MaxSizeExceeded

A file's maximum size exceeded a limit set by the consumer of this library or the metadata.

Fields of MaxSizeExceeded

max_size: u64specifier: &'static strbacktrace: Backtrace
MaxUpdatesExceeded

The maximum root updates setting was exceeded.

Fields of MaxUpdatesExceeded

max_root_updates: u64backtrace: Backtrace
MetaMissing

A required reference to a metadata file is missing from a metadata file.

Fields of MetaMissing

file: &'static strrole: RoleTypebacktrace: Backtrace
Missing

Fields of Missing

field: Stringbacktrace: Backtrace
NoFileName

Unable to determine file name (path ends in '..' or is '/')

Fields of NoFileName

path: PathBufbacktrace: Backtrace
NoRoleKeysinRoot

Fields of NoRoleKeysinRoot

role: String
OlderMetadata

A downloaded metadata file has an older version than a previously downloaded metadata file.

Fields of OlderMetadata

role: RoleTypecurrent_version: u64new_version: u64backtrace: Backtrace
ParseMetadata

The library failed to parse a metadata file, either because it was not valid JSON or it did not conform to the expected schema.

Fields of ParseMetadata

role: RoleTypesource: Errorbacktrace: Backtrace
ParseTrustedMetadata

The library failed to parse the trusted root metadata file, either because it was not valid JSON or it did not conform to the expected schema. The trusted root metadata file is the file is either the root argument passed to Repository::load, or the most recently cached and validated root metadata file.

Fields of ParseTrustedMetadata

source: Errorbacktrace: Backtrace
ParseUrl

Failed to parse a URL provided to Repository::load.

Fields of ParseUrl

url: Stringsource: ParseErrorbacktrace: Backtrace
PathExistsFail

Fields of PathExistsFail

path: PathBufbacktrace: Backtrace
PathIsNotFile

Fields of PathIsNotFile

path: PathBufbacktrace: Backtrace
PathIsNotTarget

Fields of PathIsNotTarget

path: PathBufbacktrace: Backtrace
PathUtf8

Path isn't a valid UTF8 string

Fields of PathUtf8

path: PathBufbacktrace: Backtrace
RemoveTarget

Fields of RemoveTarget

path: PathBufsource: Errorbacktrace: Backtrace
SerializeRole

Fields of SerializeRole

role: Stringsource: Errorbacktrace: Backtrace
SerializeSignedRole

Fields of SerializeSignedRole

role: Stringsource: Errorbacktrace: Backtrace
Sign

Fields of Sign

source: Unspecifiedbacktrace: Backtrace
SigningKeysNotFound

Fields of SigningKeysNotFound

role: String
SpecVersion

Fields of SpecVersion

given: Stringsupported: Stringbacktrace: Backtrace
SystemTimeSteppedBackward

System time is behaving irrationally, went back in time

Fields of SystemTimeSteppedBackward

sys_time: DateTime<Utc>latest_known_time: DateTime<Utc>
TargetFileTypeMismatch

Fields of TargetFileTypeMismatch

expected: Stringfound: Stringpath: PathBufbacktrace: Backtrace
TargetFromPath

Fields of TargetFromPath

path: PathBufsource: Errorbacktrace: Backtrace
Transport

A transport error occurred while fetching a URL.

Fields of Transport

url: Urlsource: Box<dyn Error + Send + Sync>backtrace: Backtrace
VerifyMetadata

A metadata file could not be verified.

Fields of VerifyMetadata

role: RoleTypesource: Errorbacktrace: Backtrace
VerifyTrustedMetadata

The trusted root metadata file could not be verified.

Fields of VerifyTrustedMetadata

source: Errorbacktrace: Backtrace
VersionMismatch

A fetched metadata file did not have the version we expected it to have.

Fields of VersionMismatch

role: RoleTypefetched: u64expected: u64backtrace: Backtrace
CacheFileRead

Fields of CacheFileRead

url: Urlsource: Errorbacktrace: Backtrace
CacheFileWrite

Fields of CacheFileWrite

path: PathBufsource: Errorbacktrace: Backtrace
CacheDirectoryCreate

Fields of CacheDirectoryCreate

path: PathBufsource: Errorbacktrace: Backtrace
CacheTargetWrite

Fields of CacheTargetWrite

path: PathBufsource: Errorbacktrace: Backtrace
CacheTargetMissing

Fields of CacheTargetMissing

target_name: Stringsource: Errorbacktrace: Backtrace
WalkDir

Fields of WalkDir

directory: PathBufsource: Errorbacktrace: Backtrace
TargetNotFound

Fields of TargetNotFound

target_url: String
DelegateNotFound

Fields of DelegateNotFound

name: Stringsource: Error
NoTargets
NoDelegations
DelegatedRolesNotConsistent

Fields of DelegatedRolesNotConsistent

name: String
InvalidPath

Target doesn't have proper permissions from parent delegations

Fields of InvalidPath

source: Error
RoleNotInMeta

Fields of RoleNotInMeta

name: String

Trait Implementations

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error where
    Self: Debug + Display
[src]

impl ErrorCompat for Error[src]

impl From<Error> for Error[src]

Auto Trait Implementations

impl !RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl !UnwindSafe for Error

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> AsErrorSource for T where
    T: 'static + Error
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.