summaryrefslogtreecommitdiff
path: root/src/errors.rs
blob: 607eecbb4b4ee2f38aef869f3a446466aaf6beee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#[derive(Debug, thiserror::Error)]
pub enum BumperError {
    #[error("Failed to run git: {0}")]
    GitInvoke(#[source] std::io::Error),

    #[error("Command 'git tag' failed: {0}")]
    GitTag(String),
}

impl BumperError {
    pub fn git_tag(stderr: &[u8]) -> Self {
        let stderr = String::from_utf8_lossy(stderr).into_owned();
        Self::GitTag(stderr)
    }
}