From b46f7b24e3db711f3aa6ac996dbc1e6ad8763146 Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 16:48:01 +0100 Subject: [PATCH 01/10] Replace unsafe is_atty with std is_terminal --- src/config.rs | 5 +++-- src/utils.rs | 26 +------------------------- 2 files changed, 4 insertions(+), 27 deletions(-) diff --git a/src/config.rs b/src/config.rs index 9c9a8cb..18607fc 100644 --- a/src/config.rs +++ b/src/config.rs @@ -16,12 +16,13 @@ use std::env; use std::ffi::OsString; use std::fmt; use std::path::PathBuf; +use std::io; +use std::io::IsTerminal; use anyhow::{bail, Context, Result}; use crate::arguments::{Args, Commands}; use crate::config; -use crate::utils; // default values pub const DEFAULT_SVDIR: &str = "/var/service"; @@ -190,7 +191,7 @@ fn should_colorize_output(color_arg: &Option) -> Result { } // lastly check if stdout is a tty - let isatty = utils::isatty(1); + let isatty = io::stdout().is_terminal(); Ok(isatty) } diff --git a/src/utils.rs b/src/utils.rs index cfdd141..5c9f93b 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -6,7 +6,7 @@ //! Contains various util functions for vsv. -use libc::{c_int, pid_t}; +use libc::pid_t; use std::fs; use std::path::Path; use std::process::{Command, ExitStatus}; @@ -279,23 +279,6 @@ pub fn trim_long_string(s: &str, limit: usize, suffix: &str) -> String { ) } -/** - * Check if the given file descriptor (by number) is a tty. - * - * # Example - * - * Print "hello world" if stdout is a tty: - * - * ``` - * if isatty(1) { - * println!("hello world"); - * } - * ``` - */ -pub fn isatty(fd: c_int) -> bool { - unsafe { libc::isatty(fd) != 0 } -} - #[cfg(test)] mod tests { use super::*; @@ -369,13 +352,6 @@ mod tests { Ok(()) } - #[test] - fn test_isatty_bad_fd() { - let b = isatty(-1); - - assert!(!b, "fd -1 is not a tty"); - } - #[test] fn test_relative_durations() { use std::time::Duration; From 07f9535ae8aa8b4ad8304ec25a4450faacd1b8cb Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 16:49:19 +0100 Subject: [PATCH 02/10] apply cargo clippy fix --- src/commands/status.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/commands/status.rs b/src/commands/status.rs index 745f446..8bd23a1 100644 --- a/src/commands/status.rs +++ b/src/commands/status.rs @@ -18,7 +18,7 @@ use crate::{utils, utils::verbose}; /// Handle `vsv status` or `vsv` without a subcommand given. pub fn do_status(cfg: &Config) -> Result<()> { // may or may not be set (option) - let filter = cfg.operands.get(0); + let filter = cfg.operands.first(); // find all services let services = runit::get_services(&cfg.svdir, cfg.log, filter) From 65e76ed62427ea1142ce46e27214747a6ff3aaf2 Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 17:08:44 +0100 Subject: [PATCH 03/10] update to latest clap Bumped version of clap to latest available. Followed official migration guide . Had to change type of `verbose` from `usize` to `u8` --- Cargo.lock | 433 ++++++++++++++++++++--------------------------- Cargo.toml | 2 +- src/arguments.rs | 8 +- src/config.rs | 4 +- 4 files changed, 195 insertions(+), 252 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 06fdcc2..66cafce 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,92 +1,130 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] -name = "anyhow" -version = "1.0.58" +name = "anstream" +version = "0.6.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb07d2053ccdbe10e2af2995a2f116c1330396493dc1269f6a91d0ae82e19704" +checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] [[package]] -name = "assert_cmd" -version = "2.0.4" +name = "anstyle" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" + +[[package]] +name = "anstyle-parse" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93ae1ddd39efd67689deb1979d80bad3bf7f2b09c6e6117c8d1f2443b5e2f83e" +checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" dependencies = [ - "bstr", - "doc-comment", - "predicates", - "predicates-core", - "predicates-tree", - "wait-timeout", + "utf8parse", ] [[package]] -name = "atty" -version = "0.2.14" +name = "anstyle-query" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" dependencies = [ - "hermit-abi", - "libc", - "winapi", + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" +dependencies = [ + "anstyle", + "once_cell_polyfill", + "windows-sys", ] [[package]] -name = "autocfg" -version = "1.1.0" +name = "anyhow" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" + +[[package]] +name = "assert_cmd" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcbb6924530aa9e0432442af08bbcafdad182db80d2e560da42a6d442535bf85" +dependencies = [ + "anstyle", + "bstr", + "libc", + "predicates", + "predicates-core", + "predicates-tree", + "wait-timeout", +] [[package]] name = "bitflags" -version = "1.3.2" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" [[package]] name = "bstr" -version = "0.2.17" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" +checksum = "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab" dependencies = [ - "lazy_static", "memchr", "regex-automata", + "serde", ] [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "clap" -version = "3.2.7" +version = "4.5.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b7b16274bb247b45177db843202209b12191b631a14a9d06e41b3777d6ecf14" +checksum = "c9e340e012a1bf4935f5282ed1436d1489548e8f72308207ea5df0e23d2d03f8" dependencies = [ - "atty", - "bitflags", + "clap_builder", "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.53" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d76b5d13eaa18c901fd2f7fca939fefe3a0727a953561fefdf3b2922b8569d00" +dependencies = [ + "anstream", + "anstyle", "clap_lex", - "indexmap", - "once_cell", "strsim", - "termcolor", - "textwrap", ] [[package]] name = "clap_derive" -version = "3.2.7" +version = "4.5.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "759bf187376e1afa7b85b959e6a664a3e7a95203415dba952ad19139e798f902" +checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671" dependencies = [ "heck", - "proc-macro-error", "proc-macro2", "quote", "syn", @@ -94,57 +132,40 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.2.4" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" -dependencies = [ - "os_str_bytes", -] +checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" [[package]] -name = "crossbeam-channel" -version = "0.5.5" +name = "colorchoice" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c02a4d71819009c192cf4872265391563fd6a84c81ff2c0f2a7026ca4c1d85c" -dependencies = [ - "cfg-if", - "crossbeam-utils", -] +checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" [[package]] name = "crossbeam-deque" -version = "0.8.1" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" dependencies = [ - "cfg-if", "crossbeam-epoch", "crossbeam-utils", ] [[package]] name = "crossbeam-epoch" -version = "0.9.9" +version = "0.9.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07db9d94cbd326813772c968ccd25999e5f8ae22f4f8d1b11effa37ef6ce281d" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" dependencies = [ - "autocfg", - "cfg-if", "crossbeam-utils", - "memoffset", - "once_cell", - "scopeguard", ] [[package]] name = "crossbeam-utils" -version = "0.8.10" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d82ee10ce34d7bc12c2122495e7593a9c41347ecdd64185af4ecf72cb1a7f83" -dependencies = [ - "cfg-if", - "once_cell", -] +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "difflib" @@ -172,295 +193,211 @@ dependencies = [ "winapi", ] -[[package]] -name = "doc-comment" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" - [[package]] name = "either" -version = "1.6.1" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "getrandom" -version = "0.2.7" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6" +checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" dependencies = [ "cfg-if", "libc", "wasi", ] -[[package]] -name = "hashbrown" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db0d4cf898abf0081f964436dc980e96670a0f36863e4b83aaacdb65c9d7ccc3" - [[package]] name = "heck" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" - -[[package]] -name = "hermit-abi" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] - -[[package]] -name = "indexmap" -version = "1.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e" -dependencies = [ - "autocfg", - "hashbrown", -] - -[[package]] -name = "itertools" -version = "0.10.3" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3" -dependencies = [ - "either", -] +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] -name = "lazy_static" -version = "1.4.0" +name = "is_terminal_polyfill" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "libc" -version = "0.2.126" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836" - -[[package]] -name = "memchr" -version = "2.5.0" +version = "0.2.178" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "37c93d8daa9d8a012fd8ab92f088405fb202ea0b6ab73ee2482ae66af4f42091" [[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - -[[package]] -name = "num_cpus" -version = "1.13.1" +name = "libredox" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" +checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ - "hermit-abi", + "bitflags", "libc", ] [[package]] -name = "once_cell" -version = "1.12.0" +name = "memchr" +version = "2.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7709cef83f0c1f58f666e746a08b21e0085f7440fa6a29cc194d68aac97a4225" +checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" [[package]] -name = "os_str_bytes" -version = "6.1.0" +name = "once_cell_polyfill" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21326818e99cfe6ce1e524c2a805c189a99b5ae555a35d19f9a284b427d86afa" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "predicates" -version = "2.1.1" +version = "3.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5aab5be6e4732b473071984b3164dbbfb7a3674d30ea5ff44410b6bcd960c3c" +checksum = "a5d19ee57562043d37e82899fade9a22ebab7be9cef5026b07fda9cdd4293573" dependencies = [ + "anstyle", "difflib", - "itertools", "predicates-core", ] [[package]] name = "predicates-core" -version = "1.0.3" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da1c2388b1513e1b605fcec39a95e0a9e8ef088f71443ef37099fa9ae6673fcb" +checksum = "727e462b119fe9c93fd0eb1429a5f7647394014cf3c04ab2c0350eeb09095ffa" [[package]] name = "predicates-tree" -version = "1.0.5" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d86de6de25020a36c6d3643a86d9a6a9f552107c0559c60ea03551b5e16c032" +checksum = "72dd2d6d381dfb73a193c7fca536518d7caee39fc8503f74e7dc0be0531b425c" dependencies = [ "predicates-core", "termtree", ] -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - [[package]] name = "proc-macro2" -version = "1.0.40" +version = "1.0.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd96a1e8ed2596c337f8eae5f24924ec83f5ad5ab21ea8e455d3566c69fbcaf7" +checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.20" +version = "1.0.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bcdf212e9776fbcb2d23ab029360416bb1706b1aea2d1a5ba002727cbcab804" +checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" dependencies = [ "proc-macro2", ] [[package]] name = "rayon" -version = "1.5.3" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d" +checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" dependencies = [ - "autocfg", - "crossbeam-deque", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.9.3" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" dependencies = [ - "crossbeam-channel", "crossbeam-deque", "crossbeam-utils", - "num_cpus", -] - -[[package]] -name = "redox_syscall" -version = "0.2.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42" -dependencies = [ - "bitflags", ] [[package]] name = "redox_users" -version = "0.4.3" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" +checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ "getrandom", - "redox_syscall", + "libredox", "thiserror", ] [[package]] name = "regex-automata" -version = "0.1.10" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" [[package]] -name = "scopeguard" -version = "1.1.0" +name = "serde" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", +] [[package]] -name = "strsim" -version = "0.10.0" +name = "serde_core" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] [[package]] -name = "syn" -version = "1.0.98" +name = "serde_derive" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "unicode-ident", + "syn", ] [[package]] -name = "termcolor" -version = "1.1.3" +name = "strsim" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" -dependencies = [ - "winapi-util", -] +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] -name = "termtree" -version = "0.2.4" +name = "syn" +version = "2.0.111" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "507e9898683b6c43a9aa55b64259b721b52ba226e0f3779137e50ad114a4c90b" +checksum = "390cc9a294ab71bdb1aa2e99d13be9c753cd2d7bd6560c77118597410c4d2e87" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] [[package]] -name = "textwrap" -version = "0.15.0" +name = "termtree" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb" +checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" [[package]] name = "thiserror" -version = "1.0.31" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.31" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", @@ -469,15 +406,15 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.1" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c" +checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" [[package]] -name = "version_check" -version = "0.9.4" +name = "utf8parse" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "vsv" @@ -494,18 +431,18 @@ dependencies = [ [[package]] name = "wait-timeout" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" dependencies = [ "libc", ] [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "winapi" @@ -523,21 +460,27 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" -[[package]] -name = "winapi-util" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" -dependencies = [ - "winapi", -] - [[package]] name = "winapi-x86_64-pc-windows-gnu" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + [[package]] name = "yansi" version = "0.5.1" diff --git a/Cargo.toml b/Cargo.toml index c8dc9a9..07fbe2e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,7 +11,7 @@ categories = ["command-line-utilities"] [dependencies] anyhow = "1.0.55" -clap = { version = "3.1.1", features = ["cargo", "derive"] } +clap = { version = "4.5.53", features = ["cargo", "derive"] } dirs = "4.0.0" libc = "0.2.119" rayon = "1.5.1" diff --git a/src/arguments.rs b/src/arguments.rs index ea3307b..c43111a 100644 --- a/src/arguments.rs +++ b/src/arguments.rs @@ -8,7 +8,7 @@ use std::path; -use clap::{Parser, Subcommand}; +use clap::{Parser, Subcommand, ArgAction, value_parser}; #[derive(Debug, Parser)] #[clap(author, version, about, verbatim_doc_comment, long_about = None)] @@ -37,7 +37,7 @@ pub struct Args { pub color: Option, /// Directory to look into, defaults to env SVDIR or /var/service if unset. - #[clap(short, long, parse(from_os_str), value_name = "dir")] + #[clap(short, long, value_parser, value_name = "dir")] pub dir: Option, /// Show log processes, this is a shortcut for `status -l`. @@ -53,8 +53,8 @@ pub struct Args { pub user: bool, /// Increase Verbosity. - #[clap(short, long, parse(from_occurrences))] - pub verbose: usize, + #[clap(short, long, action = ArgAction::Count)] + pub verbose: u8, /// Subcommand. #[clap(subcommand)] diff --git a/src/config.rs b/src/config.rs index 18607fc..fca23bd 100644 --- a/src/config.rs +++ b/src/config.rs @@ -15,9 +15,9 @@ use std::env; use std::ffi::OsString; use std::fmt; -use std::path::PathBuf; use std::io; use std::io::IsTerminal; +use std::path::PathBuf; use anyhow::{bail, Context, Result}; @@ -81,7 +81,7 @@ pub struct Config { // CLI options only pub tree: bool, pub log: bool, - pub verbose: usize, + pub verbose: u8, pub operands: Vec, pub mode: ProgramMode, } From 00df17e5e32f1489c0b65e03e5af3ea23d7fb630 Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 17:11:05 +0100 Subject: [PATCH 04/10] bump anyhow --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 07fbe2e..bccaef3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,7 +10,7 @@ keywords = ["runit", "void", "void-linux"] categories = ["command-line-utilities"] [dependencies] -anyhow = "1.0.55" +anyhow = "1.0.100" clap = { version = "4.5.53", features = ["cargo", "derive"] } dirs = "4.0.0" libc = "0.2.119" From d45b1a5bc43a90f0c316953b80a83a2df7bc437b Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 17:11:51 +0100 Subject: [PATCH 05/10] bump dirs --- Cargo.lock | 51 ++++++++++++++++++--------------------------------- Cargo.toml | 2 +- 2 files changed, 19 insertions(+), 34 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 66cafce..67df537 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -175,22 +175,23 @@ checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" [[package]] name = "dirs" -version = "4.0.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" +checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" dependencies = [ "dirs-sys", ] [[package]] name = "dirs-sys" -version = "0.3.7" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" dependencies = [ "libc", + "option-ext", "redox_users", - "winapi", + "windows-sys", ] [[package]] @@ -250,6 +251,12 @@ version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + [[package]] name = "predicates" version = "3.1.3" @@ -317,9 +324,9 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.4.6" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ "getrandom", "libredox", @@ -386,18 +393,18 @@ checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" [[package]] name = "thiserror" -version = "1.0.69" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.69" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", @@ -444,28 +451,6 @@ version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - [[package]] name = "windows-link" version = "0.2.1" diff --git a/Cargo.toml b/Cargo.toml index bccaef3..35ff06a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,7 +12,7 @@ categories = ["command-line-utilities"] [dependencies] anyhow = "1.0.100" clap = { version = "4.5.53", features = ["cargo", "derive"] } -dirs = "4.0.0" +dirs = "6.0.0" libc = "0.2.119" rayon = "1.5.1" yansi = "0.5.0" From ce3523a5eb185695d721e5898a30ae2595f2af2e Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 17:12:18 +0100 Subject: [PATCH 06/10] bump libc --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 35ff06a..01a8c6a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,7 +13,7 @@ categories = ["command-line-utilities"] anyhow = "1.0.100" clap = { version = "4.5.53", features = ["cargo", "derive"] } dirs = "6.0.0" -libc = "0.2.119" +libc = "0.2.178" rayon = "1.5.1" yansi = "0.5.0" From 0db43481d1de4eabd834b57cc26996e5f385b138 Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 17:13:29 +0100 Subject: [PATCH 07/10] bump rayon --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 01a8c6a..ea62340 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,7 +14,7 @@ anyhow = "1.0.100" clap = { version = "4.5.53", features = ["cargo", "derive"] } dirs = "6.0.0" libc = "0.2.178" -rayon = "1.5.1" +rayon = "1.11.0" yansi = "0.5.0" [dev-dependencies] From 46b0016628778a54dadb8e188c529d08c64e17ee Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 17:44:48 +0100 Subject: [PATCH 08/10] bump yansi --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- src/commands/enable_disable.rs | 10 +++++----- src/commands/external.rs | 8 ++++---- src/commands/status.rs | 4 ++-- src/main.rs | 6 +++--- src/service.rs | 4 ++-- src/utils.rs | 8 ++++---- 8 files changed, 23 insertions(+), 23 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 67df537..7e16c12 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -468,6 +468,6 @@ dependencies = [ [[package]] name = "yansi" -version = "0.5.1" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" diff --git a/Cargo.toml b/Cargo.toml index ea62340..d289203 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,7 +15,7 @@ clap = { version = "4.5.53", features = ["cargo", "derive"] } dirs = "6.0.0" libc = "0.2.178" rayon = "1.11.0" -yansi = "0.5.0" +yansi = "1.0.1" [dev-dependencies] assert_cmd = "2.0.4" diff --git a/src/commands/enable_disable.rs b/src/commands/enable_disable.rs index 06a9df6..d306c21 100644 --- a/src/commands/enable_disable.rs +++ b/src/commands/enable_disable.rs @@ -7,7 +7,7 @@ //! `vsv enable` and `vsv disable`. use anyhow::{ensure, Result}; -use yansi::{Color, Style}; +use yansi::{Paint, Style, Color::*}; use crate::config; use crate::config::Config; @@ -35,11 +35,11 @@ fn _do_enable_disable(cfg: &Config) -> Result<()> { print!( "{} service {}... ", cfg.mode, - Style::default().bold().paint(name) + name.bold(), ); if !svc.valid() { - println!("{}", Color::Red.paint("failed! service not valid")); + println!("{}", "failed! service not valid".red()); had_error = true; continue; } @@ -53,9 +53,9 @@ fn _do_enable_disable(cfg: &Config) -> Result<()> { match ret { Err(err) => { had_error = true; - println!("{}", Color::Red.paint(format!("failed! {}", err))); + println!("{}", format!("failed! {}", err).red()); } - Ok(()) => println!("{}.", Color::Green.paint("done")), + Ok(()) => println!("{}.", "done".green()), }; } diff --git a/src/commands/external.rs b/src/commands/external.rs index 569a823..8eb752f 100644 --- a/src/commands/external.rs +++ b/src/commands/external.rs @@ -10,7 +10,7 @@ use std::env; use anyhow::{bail, ensure, Context, Result}; use clap::crate_name; -use yansi::Color; +use yansi::{Color, Paint}; use crate::utils; use crate::{config, config::Config}; @@ -37,14 +37,14 @@ pub fn do_external(cfg: &Config) -> Result<()> { println!( "[{}] {}", crate_name!(), - Color::Cyan.paint(format!( + format!( "Running {} command ({}={:?} {} {})", sv, config::ENV_SVDIR, &cfg.svdir, sv, &args_s - )) + ).cyan() ); // run the actual program @@ -62,7 +62,7 @@ pub fn do_external(cfg: &Config) -> Result<()> { println!( "[{}] {}", crate_name!(), - color.paint(format!("[{} {}] exit code {}", sv, &args_s, code)) + format!("[{} {}] exit code {}", sv, &args_s, code).paint(color) ); match code { diff --git a/src/commands/status.rs b/src/commands/status.rs index 8bd23a1..e1a4edb 100644 --- a/src/commands/status.rs +++ b/src/commands/status.rs @@ -8,7 +8,7 @@ use anyhow::{Context, Result}; use rayon::prelude::*; -use yansi::Style; +use yansi::{Style, Paint}; use crate::config::Config; use crate::runit; @@ -64,7 +64,7 @@ pub fn do_status(cfg: &Config) -> Result<()> { // print pstree if applicable if cfg.tree { let (tree_s, style) = service.format_pstree(); - println!("{}", style.paint(tree_s)); + println!("{}", tree_s.paint(style)); } // print any verbose messages/warnings generated by the service diff --git a/src/main.rs b/src/main.rs index a6bdade..2a109e8 100644 --- a/src/main.rs +++ b/src/main.rs @@ -29,7 +29,7 @@ use utils::verbose; fn do_main() -> Result<()> { // disable color until we absolutely know we want it - Paint::disable(); + yansi::disable(); // parse CLI options + env vars let args = arguments::parse(); @@ -38,7 +38,7 @@ fn do_main() -> Result<()> { // toggle color if the user wants it or the env dictates if cfg.colorize { - Paint::enable(); + yansi::enable(); } verbose!( @@ -62,6 +62,6 @@ fn main() { let ret = do_main(); if let Err(err) = ret { - die!(1, "{}: {:?}", Color::Red.paint("error"), err); + die!(1, "{}: {:?}", "error".red(), err); } } diff --git a/src/service.rs b/src/service.rs index 6eb5c41..89594bf 100644 --- a/src/service.rs +++ b/src/service.rs @@ -213,7 +213,7 @@ impl Service { let style = match t.as_secs() { t if t < 5 => style.fg(Color::Red), t if t < 30 => style.fg(Color::Yellow), - _ => style.dimmed(), + _ => style.dim(), }; (s, style) @@ -229,7 +229,7 @@ impl Service { }; let (tree_s, style) = match tree { - Ok(stdout) => (stdout.trim().into(), style.dimmed()), + Ok(stdout) => (stdout.trim().into(), style.dim()), Err(err) => { (format!("pstree call failed: {}", err), style.fg(Color::Red)) } diff --git a/src/utils.rs b/src/utils.rs index 5c9f93b..dedcc89 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -13,7 +13,7 @@ use std::process::{Command, ExitStatus}; use std::time::Duration; use anyhow::{anyhow, Context, Result}; -use yansi::Style; +use yansi::{Style, Paint}; /** * A `println!()`-like macro that will only print if `-v` is set. @@ -22,7 +22,7 @@ macro_rules! verbose { ($cfg:expr, $fmt:expr $(, $args:expr )* $(,)? ) => { if $cfg.verbose > 0 { let s = format!($fmt $(, $args)*); - eprintln!("> {}", ::yansi::Style::default().dimmed().paint(s)); + eprintln!("> {}", s.dim()); } }; } @@ -73,10 +73,10 @@ pub fn format_status_line>( for ((text, style), max, suffix) in data { let column = if max == 0 { - format!(" {}", style.paint(text.as_ref())) + format!(" {}", text.as_ref().paint(style)) } else { let text = trim_long_string(text.as_ref(), max, suffix); - format!(" {0:1$}", style.paint(text), max) + format!(" {0:1$}", text.paint(style), max) }; line.push_str(&column); From b48a295732f5b4f079942aab4dcc4421437b2787 Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 17:45:30 +0100 Subject: [PATCH 09/10] cargo fix --- src/arguments.rs | 2 +- src/commands/enable_disable.rs | 8 ++------ src/commands/external.rs | 3 ++- src/commands/status.rs | 2 +- src/main.rs | 2 +- src/utils.rs | 2 +- 6 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/arguments.rs b/src/arguments.rs index c43111a..3374982 100644 --- a/src/arguments.rs +++ b/src/arguments.rs @@ -8,7 +8,7 @@ use std::path; -use clap::{Parser, Subcommand, ArgAction, value_parser}; +use clap::{ArgAction, Parser, Subcommand}; #[derive(Debug, Parser)] #[clap(author, version, about, verbatim_doc_comment, long_about = None)] diff --git a/src/commands/enable_disable.rs b/src/commands/enable_disable.rs index d306c21..d54f528 100644 --- a/src/commands/enable_disable.rs +++ b/src/commands/enable_disable.rs @@ -7,7 +7,7 @@ //! `vsv enable` and `vsv disable`. use anyhow::{ensure, Result}; -use yansi::{Paint, Style, Color::*}; +use yansi::Paint; use crate::config; use crate::config::Config; @@ -32,11 +32,7 @@ fn _do_enable_disable(cfg: &Config) -> Result<()> { for name in &cfg.operands { let p = cfg.svdir.join(name); let svc = RunitService::new(name, &p); - print!( - "{} service {}... ", - cfg.mode, - name.bold(), - ); + print!("{} service {}... ", cfg.mode, name.bold(),); if !svc.valid() { println!("{}", "failed! service not valid".red()); diff --git a/src/commands/external.rs b/src/commands/external.rs index 8eb752f..f91ee09 100644 --- a/src/commands/external.rs +++ b/src/commands/external.rs @@ -44,7 +44,8 @@ pub fn do_external(cfg: &Config) -> Result<()> { &cfg.svdir, sv, &args_s - ).cyan() + ) + .cyan() ); // run the actual program diff --git a/src/commands/status.rs b/src/commands/status.rs index e1a4edb..c008d3d 100644 --- a/src/commands/status.rs +++ b/src/commands/status.rs @@ -8,7 +8,7 @@ use anyhow::{Context, Result}; use rayon::prelude::*; -use yansi::{Style, Paint}; +use yansi::{Paint, Style}; use crate::config::Config; use crate::runit; diff --git a/src/main.rs b/src/main.rs index 2a109e8..e3cee58 100644 --- a/src/main.rs +++ b/src/main.rs @@ -13,7 +13,7 @@ #![allow(clippy::uninlined_format_args)] use anyhow::{Context, Result}; -use yansi::{Color, Paint}; +use yansi::Paint; mod arguments; mod commands; diff --git a/src/utils.rs b/src/utils.rs index dedcc89..2b9760f 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -13,7 +13,7 @@ use std::process::{Command, ExitStatus}; use std::time::Duration; use anyhow::{anyhow, Context, Result}; -use yansi::{Style, Paint}; +use yansi::{Paint, Style}; /** * A `println!()`-like macro that will only print if `-v` is set. From d94bb18f806b316b87506a8cdc8c00a1f7cf6d0c Mon Sep 17 00:00:00 2001 From: maybetree Date: Tue, 2 Dec 2025 18:03:20 +0100 Subject: [PATCH 10/10] bump version --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7e16c12..7557c07 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -425,7 +425,7 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "vsv" -version = "2.0.0" +version = "2.0.1" dependencies = [ "anyhow", "assert_cmd", diff --git a/Cargo.toml b/Cargo.toml index d289203..1e7a299 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "vsv" -version = "2.0.0" +version = "2.0.1" description = "Runit service manager CLI" edition = "2021" repository = "https://github.com/bahamas10/rust-vsv"