34 lines · 929 B · Rust
RawDownload
use argh::FromArgs; #[derive(FromArgs)]#[argh(name = "utils")]/// Utilities for maintaining the gitoxide projectpub struct Args {    #[argh(subcommand)]    pub subcommand: SubCommands,} #[derive(FromArgs, PartialEq, Debug)]#[argh(subcommand)]pub enum SubCommands {    Release(Release),} /// Verify a pack#[derive(FromArgs, PartialEq, Debug)]#[argh(subcommand, name = "release")]pub struct Release {    /// actually perform a release. Dry-run mode is the default    #[argh(switch, short = 'n')]    pub execute: bool,     /// a specification of the kind of version bump you seek for the crate and potentially it's dependencies.    ///    /// Can be 'major', 'minor' or 'patch'    #[argh(positional)]    pub version_bump_spec: String,     /// the name of the crates to be released, along with all of their dependencies if needed, using `cargo release`    #[argh(positional)]    pub crates: Vec<String>,}