From 04553dbc1453b32981902728004d28ba82540338 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Oct 2022 14:38:47 +0000 Subject: [PATCH 1/2] chore(deps): bump clap from 3.2.22 to 4.0.15 Bumps [clap](https://github.com/clap-rs/clap) from 3.2.22 to 4.0.15. - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/v3.2.22...v4.0.15) --- updated-dependencies: - dependency-name: clap dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- Cargo.lock | 23 ++++++----------------- komorebi-core/Cargo.toml | 2 +- komorebi/Cargo.toml | 2 +- komorebic/Cargo.toml | 2 +- 4 files changed, 9 insertions(+), 20 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d20545eca..919e72ad6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -75,27 +75,25 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "clap" -version = "3.2.22" +version = "4.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86447ad904c7fb335a790c9d7fe3d0d971dc523b8ccd1561a520de9a85302750" +checksum = "6bf8832993da70a4c6d13c581f4463c2bdda27b9bf1c5498dc4365543abe6d6f" dependencies = [ "atty", "bitflags", "clap_derive", "clap_lex", - "indexmap", "once_cell", "strsim", "termcolor", "terminal_size", - "textwrap", ] [[package]] name = "clap_derive" -version = "3.2.18" +version = "4.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea0c8bce528c4be4da13ea6fead8965e95b6073585a2f05204bd8f4119f82a65" +checksum = "c42f169caba89a7d512b5418b09864543eeb4d497416c917d7137863bd2076ad" dependencies = [ "heck", "proc-macro-error", @@ -106,9 +104,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.2.4" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" +checksum = "0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8" dependencies = [ "os_str_bytes", ] @@ -1257,15 +1255,6 @@ dependencies = [ "windows-sys 0.36.1", ] -[[package]] -name = "textwrap" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "949517c0cf1bf4ee812e2e07e08ab448e3ae0d23472aee8a06c985f0c8815b16" -dependencies = [ - "terminal_size", -] - [[package]] name = "thiserror" version = "1.0.36" diff --git a/komorebi-core/Cargo.toml b/komorebi-core/Cargo.toml index 660433cbb..f8f076312 100644 --- a/komorebi-core/Cargo.toml +++ b/komorebi-core/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -clap = { version = "3", features = ["derive"] } +clap = { version = "4", features = ["derive"] } color-eyre = "0.6" serde = { version = "1", features = ["derive"] } serde_json = "1" diff --git a/komorebi/Cargo.toml b/komorebi/Cargo.toml index f52778c28..ebd045f6e 100644 --- a/komorebi/Cargo.toml +++ b/komorebi/Cargo.toml @@ -14,7 +14,7 @@ edition = "2021" komorebi-core = { path = "../komorebi-core" } bitflags = "1" -clap = { version = "3", features = ["derive"] } +clap = { version = "4", features = ["derive"] } color-eyre = "0.6" crossbeam-channel = "0.5" crossbeam-utils = "0.8" diff --git a/komorebic/Cargo.toml b/komorebic/Cargo.toml index 7568dff3f..96d66c8e1 100644 --- a/komorebic/Cargo.toml +++ b/komorebic/Cargo.toml @@ -14,7 +14,7 @@ edition = "2021" derive-ahk = { path = "../derive-ahk" } komorebi-core = { path = "../komorebi-core" } -clap = { version = "3", features = ["derive", "wrap_help"] } +clap = { version = "4", features = ["derive", "wrap_help"] } color-eyre = "0.6" dirs = "4" fs-tail = "0.1" From a6254d8681b4435f233c1b526424f9441933fd74 Mon Sep 17 00:00:00 2001 From: LGUG2Z Date: Thu, 20 Oct 2022 14:04:39 -0700 Subject: [PATCH 2/2] fix(clap): address deprecations --- komorebi-core/src/arrangement.rs | 6 ++-- komorebi-core/src/config_generation.rs | 4 +-- komorebi-core/src/cycle_direction.rs | 6 ++-- komorebi-core/src/default_layout.rs | 6 ++-- komorebi-core/src/lib.rs | 38 ++++++++++++++++------ komorebi-core/src/operation_direction.rs | 6 ++-- komorebic/src/main.rs | 41 ++++++++++++------------ 7 files changed, 66 insertions(+), 41 deletions(-) diff --git a/komorebi-core/src/arrangement.rs b/komorebi-core/src/arrangement.rs index f79f0ef59..b8e4fe97d 100644 --- a/komorebi-core/src/arrangement.rs +++ b/komorebi-core/src/arrangement.rs @@ -1,6 +1,6 @@ use std::num::NonZeroUsize; -use clap::ArgEnum; +use clap::ValueEnum; use schemars::JsonSchema; use serde::Deserialize; use serde::Serialize; @@ -342,7 +342,9 @@ impl Arrangement for CustomLayout { } } -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum Axis { Horizontal, diff --git a/komorebi-core/src/config_generation.rs b/komorebi-core/src/config_generation.rs index e7cec879d..779801ef2 100644 --- a/komorebi-core/src/config_generation.rs +++ b/komorebi-core/src/config_generation.rs @@ -1,4 +1,4 @@ -use clap::ArgEnum; +use clap::ValueEnum; use color_eyre::Result; use schemars::JsonSchema; use serde::Deserialize; @@ -8,7 +8,7 @@ use strum::EnumString; use crate::ApplicationIdentifier; -#[derive(Clone, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive(Clone, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema)] #[strum(serialize_all = "snake_case")] #[serde(rename_all = "snake_case")] pub enum ApplicationOptions { diff --git a/komorebi-core/src/cycle_direction.rs b/komorebi-core/src/cycle_direction.rs index 08409292f..b06cc70d9 100644 --- a/komorebi-core/src/cycle_direction.rs +++ b/komorebi-core/src/cycle_direction.rs @@ -1,13 +1,15 @@ use std::num::NonZeroUsize; -use clap::ArgEnum; +use clap::ValueEnum; use schemars::JsonSchema; use serde::Deserialize; use serde::Serialize; use strum::Display; use strum::EnumString; -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum CycleDirection { Previous, diff --git a/komorebi-core/src/default_layout.rs b/komorebi-core/src/default_layout.rs index 566c294eb..ce24c945c 100644 --- a/komorebi-core/src/default_layout.rs +++ b/komorebi-core/src/default_layout.rs @@ -1,4 +1,4 @@ -use clap::ArgEnum; +use clap::ValueEnum; use schemars::JsonSchema; use serde::Deserialize; use serde::Serialize; @@ -9,7 +9,9 @@ use crate::OperationDirection; use crate::Rect; use crate::Sizing; -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum DefaultLayout { BSP, diff --git a/komorebi-core/src/lib.rs b/komorebi-core/src/lib.rs index 93618fb28..6ada3bc02 100644 --- a/komorebi-core/src/lib.rs +++ b/komorebi-core/src/lib.rs @@ -4,7 +4,7 @@ use std::path::PathBuf; use std::str::FromStr; -use clap::ArgEnum; +use clap::ValueEnum; use color_eyre::Result; use schemars::JsonSchema; use serde::Deserialize; @@ -138,14 +138,18 @@ impl FromStr for SocketMessage { } } -#[derive(Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum WindowKind { Single, Stack, } -#[derive(Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum StateQuery { FocusedMonitorIndex, @@ -154,7 +158,9 @@ pub enum StateQuery { FocusedWindowIndex, } -#[derive(Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] #[serde(rename_all = "snake_case")] pub enum ApplicationIdentifier { @@ -163,42 +169,54 @@ pub enum ApplicationIdentifier { Title, } -#[derive(Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum FocusFollowsMouseImplementation { Komorebi, Windows, } -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum WindowContainerBehaviour { Create, Append, } -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum MoveBehaviour { Swap, Insert, } -#[derive(Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Copy, Clone, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum HidingBehaviour { Hide, Minimize, } -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum OperationBehaviour { Op, NoOp, } -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum Sizing { Increase, diff --git a/komorebi-core/src/operation_direction.rs b/komorebi-core/src/operation_direction.rs index ce51aa14f..25f8d93cb 100644 --- a/komorebi-core/src/operation_direction.rs +++ b/komorebi-core/src/operation_direction.rs @@ -1,6 +1,6 @@ use std::num::NonZeroUsize; -use clap::ArgEnum; +use clap::ValueEnum; use schemars::JsonSchema; use serde::Deserialize; use serde::Serialize; @@ -10,7 +10,9 @@ use strum::EnumString; use crate::direction::Direction; use crate::Axis; -#[derive(Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ArgEnum, JsonSchema)] +#[derive( + Clone, Copy, Debug, Serialize, Deserialize, Display, EnumString, ValueEnum, JsonSchema, +)] #[strum(serialize_all = "snake_case")] pub enum OperationDirection { Left, diff --git a/komorebic/src/main.rs b/komorebic/src/main.rs index 8728c81e1..acf3c81e1 100644 --- a/komorebic/src/main.rs +++ b/komorebic/src/main.rs @@ -12,9 +12,8 @@ use std::path::PathBuf; use std::process::Command; use std::time::Duration; -use clap::AppSettings; -use clap::ArgEnum; use clap::Parser; +use clap::ValueEnum; use color_eyre::eyre::anyhow; use color_eyre::Result; use fs_tail::TailedFile; @@ -77,7 +76,7 @@ trait AhkFunction { fn generate_ahk_function() -> String; } -#[derive(Copy, Clone, ArgEnum)] +#[derive(Copy, Clone, ValueEnum)] enum BooleanState { Enable, Disable, @@ -99,7 +98,7 @@ macro_rules! gen_enum_subcommand_args { paste! { #[derive(clap::Parser, derive_ahk::AhkFunction)] pub struct $name { - #[clap(arg_enum)] + #[clap(value_enum)] [<$element:snake>]: $element } } @@ -154,7 +153,7 @@ gen_target_subcommand_args! { macro_rules! gen_workspace_subcommand_args { // Workspace Property: #[enum] Value Enum (if the value is an Enum) // Workspace Property: Value Type (if the value is anything else) - ( $( $name:ident: $(#[enum] $(@$arg_enum:tt)?)? $value:ty ),+ $(,)? ) => ( + ( $( $name:ident: $(#[enum] $(@$value_enum:tt)?)? $value:ty ),+ $(,)? ) => ( paste! { $( #[derive(clap::Parser, derive_ahk::AhkFunction)] @@ -165,9 +164,9 @@ macro_rules! gen_workspace_subcommand_args { /// Workspace index on the specified monitor (zero-indexed) workspace: usize, - $(#[clap(arg_enum)] $($arg_enum)?)? + $(#[clap(value_enum)] $($value_enum)?)? #[cfg_attr( - all($(FALSE $($arg_enum)?)?), + all($(FALSE $($value_enum)?)?), doc = ""$name " of the workspace as a "$value "" )] value: $value, @@ -215,7 +214,7 @@ pub struct WorkspaceLayoutRule { /// The number of window containers on-screen required to trigger this layout rule at_container_count: usize, - #[clap(arg_enum)] + #[clap(value_enum)] layout: DefaultLayout, } @@ -236,17 +235,17 @@ pub struct WorkspaceCustomLayoutRule { #[derive(Parser, AhkFunction)] struct Resize { - #[clap(arg_enum)] + #[clap(value_enum)] edge: OperationDirection, - #[clap(arg_enum)] + #[clap(value_enum)] sizing: Sizing, } #[derive(Parser, AhkFunction)] struct ResizeAxis { - #[clap(arg_enum)] + #[clap(value_enum)] axis: Axis, - #[clap(arg_enum)] + #[clap(value_enum)] sizing: Sizing, } @@ -332,7 +331,7 @@ macro_rules! gen_padding_adjustment_subcommand_args { $( #[derive(clap::Parser, derive_ahk::AhkFunction)] pub struct $name { - #[clap(arg_enum)] + #[clap(value_enum)] sizing: Sizing, /// Pixels to adjust by as an integer adjustment: i32, @@ -352,7 +351,7 @@ macro_rules! gen_application_target_subcommand_args { $( #[derive(clap::Parser, derive_ahk::AhkFunction)] pub struct $name { - #[clap(arg_enum)] + #[clap(value_enum)] identifier: ApplicationIdentifier, /// Identifier as a string id: String, @@ -372,7 +371,7 @@ gen_application_target_subcommand_args! { #[derive(Parser, AhkFunction)] struct WorkspaceRule { - #[clap(arg_enum)] + #[clap(value_enum)] identifier: ApplicationIdentifier, /// Identifier as a string id: String, @@ -384,27 +383,27 @@ struct WorkspaceRule { #[derive(Parser, AhkFunction)] struct ToggleFocusFollowsMouse { - #[clap(arg_enum, short, long, default_value = "windows")] + #[clap(value_enum, short, long, default_value = "windows")] implementation: FocusFollowsMouseImplementation, } #[derive(Parser, AhkFunction)] struct FocusFollowsMouse { - #[clap(arg_enum, short, long, default_value = "windows")] + #[clap(value_enum, short, long, default_value = "windows")] implementation: FocusFollowsMouseImplementation, - #[clap(arg_enum)] + #[clap(value_enum)] boolean_state: BooleanState, } #[derive(Parser, AhkFunction)] struct ActiveWindowBorder { - #[clap(arg_enum)] + #[clap(value_enum)] boolean_state: BooleanState, } #[derive(Parser, AhkFunction)] struct ActiveWindowBorderColour { - #[clap(arg_enum, short, long, default_value = "single")] + #[clap(value_enum, short, long, default_value = "single")] window_kind: WindowKind, /// Red r: u32, @@ -472,7 +471,7 @@ struct FormatAppSpecificConfiguration { } #[derive(Parser)] -#[clap(author, about, version, setting = AppSettings::DeriveDisplayOrder)] +#[clap(author, about, version)] struct Opts { #[clap(subcommand)] subcmd: SubCommand,