convco 0.6.4

Conventional commit tools
#![cfg(feature = "completions")]
use clap::CommandFactory;
use clap_complete::aot::{generate, Shell};

use crate::{
    cli::{CompletionsCommand, Opt},
    cmd::Command,
    conventional::Config,
};

impl Command for CompletionsCommand {
    fn exec(&self, _: Config) -> anyhow::Result<()> {
        let mut cmd = Opt::command();
        let bin_name = cmd.get_name().to_string();
        let shell = self.shell.or_else(Shell::from_env).unwrap_or(Shell::Bash);
        generate(shell, &mut cmd, bin_name, &mut std::io::stdout());
        Ok(())
    }
}