cargo-governor 2.0.3

Machine-First, LLM-Ready, CI/CD-Native release automation tool for Rust crates
Documentation
//! Bump command options

use clap::Parser;

/// Bump command options
#[derive(Parser, Debug, Clone)]
#[command(disable_version_flag(true))]
#[allow(clippy::struct_excessive_bools)]
pub struct BumpOpts {
    /// Force specific version
    #[arg(long)]
    pub version: Option<String>,

    /// Bump strategy: auto, patch, minor, major
    #[arg(short = 'b', long)]
    pub bump: Option<String>,

    /// Skip changelog generation
    #[arg(long)]
    pub no_changelog: bool,

    /// Skip git commit
    #[arg(long)]
    pub no_commit: bool,

    /// Skip git tag
    #[arg(long)]
    pub no_tag: bool,

    /// Commit message template
    #[arg(long)]
    pub commit_template: Option<String>,

    /// Tag name template
    #[arg(long)]
    pub tag_template: Option<String>,

    /// Allow the workspace version to differ from the last release tag
    #[arg(long)]
    pub allow_version_drift: bool,

    /// Allow the release workflow to start from a dirty working tree
    #[arg(long)]
    pub allow_dirty: bool,
}