diff --git a/daqingest/Cargo.toml b/daqingest/Cargo.toml index abad542..e5ab02f 100644 --- a/daqingest/Cargo.toml +++ b/daqingest/Cargo.toml @@ -12,7 +12,7 @@ name = "daqingest" path = "src/bin/daqingest.rs" [dependencies] -clap = { version = "3", features = ["derive", "cargo"] } +clap = { version = "4.0.19", features = ["derive", "cargo"] } chrono = "0.4" bytes = "1.1" scylla = "0.4" diff --git a/daqingest/src/daqingest.rs b/daqingest/src/daqingest.rs index 6646fef..e9fcefa 100644 --- a/daqingest/src/daqingest.rs +++ b/daqingest/src/daqingest.rs @@ -1,20 +1,21 @@ pub mod query; +use clap::ArgAction::Count; use clap::Parser; use netfetch::ca::ListenFromFileOpts; use netfetch::zmtp::ZmtpClientOpts; #[derive(Debug, Parser)] //#[clap(name = "daqingest", version)] -#[clap(version)] +#[command(author, version, about)] pub struct DaqIngestOpts { - #[clap(long, parse(from_occurrences))] + #[arg(long, action(Count))] pub verbose: u32, #[clap(long)] pub tag: Option, - #[clap(subcommand)] + #[command(subcommand)] pub subcmd: SubCmd, - #[clap(long)] + #[arg(long)] pub nworkers: Option, } @@ -25,25 +26,25 @@ pub enum SubCmd { ListPulses, FetchEvents(FetchEvents), BsreadDump(BsreadDump), - #[clap(subcommand)] + #[command(subcommand)] ChannelAccess(ChannelAccess), } #[derive(Debug, Parser)] pub struct Bsread { - #[clap(long)] + #[arg(long)] pub scylla: Vec, - #[clap(long)] + #[arg(long)] pub source: Vec, - #[clap(long)] + #[arg(long)] pub rcvbuf: Option, - #[clap(long)] + #[arg(long)] pub array_truncate: Option, - #[clap(long)] + #[arg(long)] pub do_pulse_id: bool, - #[clap(long)] + #[arg(long)] pub skip_insert: bool, - #[clap(long)] + #[arg(long)] pub process_channel_count_limit: Option, } @@ -63,9 +64,9 @@ impl From for ZmtpClientOpts { #[derive(Debug, Parser)] pub struct FetchEvents { - #[clap(long, min_values(1))] + #[arg(long, num_args(1..))] pub scylla: Vec, - #[clap(long)] + #[arg(long)] pub channel: String, }