git-cz 0.7.2

Git conventional commit tools written in Rust
use std::io;

use handlebars::{RenderError, TemplateError, TemplateFileError};
use thiserror::Error;

use crate::conventional;

#[derive(Debug, Error)]
pub(crate) enum Error {
    #[error(transparent)]
    Git(#[from] git2::Error),
    #[error(transparent)]
    Io(#[from] io::Error),
    #[error(transparent)]
    Template(#[from] TemplateError),
    #[error(transparent)]
    TemplateFile(#[from] TemplateFileError),
    #[error(transparent)]
    Parser(#[from] conventional::ParseError),
    #[error(transparent)]
    Render(#[from] RenderError),
    #[error(transparent)]
    Url(#[from] url::ParseError),
    #[error("check error")]
    Check,
    #[error("canceled by user")]
    CancelledByUser,
}