#![allow(missing_docs)]
#[derive(Debug, thiserror::Error)]
pub enum Error {
#[error(transparent)]
Download {
#[from]
inner: reqwest::Error,
},
#[error(transparent)]
IO {
#[from]
inner: std::io::Error,
},
#[error("Could not find crate on crates.io: {name}")]
CrateNotFound { name: String },
#[error("Could not find crate version on crates.io: {name}@{version}")]
VersionNotFound { name: String, version: String },
#[error("Invalid repository URL: {repo}")]
InvalidRepoUrl { repo: String },
#[error("Invalid git ref for repository: {repo}#{rev}")]
InvalidGitRef { repo: String, rev: String },
#[error("Cannot determine crate path in repository: {repo} / {name}")]
PathNotDeterminable { repo: String, name: String },
#[error("Process failed: [{cmd}]\n{stdout}\n{stderr}")]
Subprocess {
cmd: String,
stdout: String,
stderr: String,
},
#[error("Failed to load crate metadata: {inner}")]
Metadata { inner: String },
#[error("Failed to walk source directory: {inner}")]
Walk { inner: String },
#[error("Failed to load '.cargo_vcs_info.json' file: {inner}")]
VcsInfo { inner: String },
}