diff options
Diffstat (limited to 'src/errors.rs')
-rw-r--r-- | src/errors.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/errors.rs b/src/errors.rs new file mode 100644 index 0000000..607eecb --- /dev/null +++ b/src/errors.rs @@ -0,0 +1,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) + } +} |