From 4ca198e43ad03024773bcb67eeeb905a9eb72e78 Mon Sep 17 00:00:00 2001 From: Shun Sakai Date: Fri, 7 Jun 2024 12:12:36 +0900 Subject: [PATCH 1/7] Update CI --- .github/workflows/CI.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/CI.yaml b/.github/workflows/CI.yaml index 3e321d3..4d8d76e 100644 --- a/.github/workflows/CI.yaml +++ b/.github/workflows/CI.yaml @@ -98,6 +98,7 @@ jobs: semver: name: Semantic Versioning + if: startsWith(github.ref, 'refs/heads/release') runs-on: ubuntu-22.04 steps: - name: Checkout code From e3918d02733dce1cdbca5e1be376419a812f343c Mon Sep 17 00:00:00 2001 From: Shun Sakai Date: Mon, 17 Jun 2024 16:12:28 +0900 Subject: [PATCH 2/7] Revert "Update CI" This reverts commit 4ca198e43ad03024773bcb67eeeb905a9eb72e78. --- .github/workflows/CI.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/CI.yaml b/.github/workflows/CI.yaml index 4d8d76e..3e321d3 100644 --- a/.github/workflows/CI.yaml +++ b/.github/workflows/CI.yaml @@ -98,7 +98,6 @@ jobs: semver: name: Semantic Versioning - if: startsWith(github.ref, 'refs/heads/release') runs-on: ubuntu-22.04 steps: - name: Checkout code From 10d6b6030c656597af58a1c81e9473a8ddefca1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 27 Jun 2024 11:03:52 +0000 Subject: [PATCH 3/7] Bump proptest from 1.4.0 to 1.5.0 (#96) --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8efeed4..a149b3d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -119,9 +119,9 @@ dependencies = [ [[package]] name = "proptest" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ "bit-set", "bit-vec", diff --git a/Cargo.toml b/Cargo.toml index 2346926..faaea6d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -42,7 +42,7 @@ required-features = ["default"] [dependencies] [dev-dependencies] -proptest = "1.4.0" +proptest = "1.5.0" test-strategy = "0.3.1" [features] From 2086f1def56b7091c93f8c577ec3bc24b644a76a Mon Sep 17 00:00:00 2001 From: Shun Sakai Date: Sat, 29 Jun 2024 19:43:52 +0900 Subject: [PATCH 4/7] Change attributes order --- src/error.rs | 4 ++-- src/exit_code.rs | 2 +- src/exit_code/convert.rs | 6 +++--- src/exit_code/result.rs | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/error.rs b/src/error.rs index 97effac..f3f6cc1 100644 --- a/src/error.rs +++ b/src/error.rs @@ -9,8 +9,8 @@ use core::fmt; /// The error type indicating that [`ExitCode`](crate::ExitCode) was out of /// range. -#[allow(clippy::module_name_repetitions)] #[derive(Clone, Copy, Debug, Eq, PartialEq)] +#[allow(clippy::module_name_repetitions)] pub struct ExitCodeRangeError; impl fmt::Display for ExitCodeRangeError { @@ -26,8 +26,8 @@ impl std::error::Error for ExitCodeRangeError {} /// An error which can be returned when converting an /// [`ExitCode`](crate::ExitCode) from an /// [`ExitStatus`](std::process::ExitStatus). -#[allow(clippy::module_name_repetitions)] #[derive(Clone, Copy, Debug, Eq, PartialEq)] +#[allow(clippy::module_name_repetitions)] pub struct TryFromExitStatusError(Option); #[cfg(feature = "std")] diff --git a/src/exit_code.rs b/src/exit_code.rs index c493928..e380b67 100644 --- a/src/exit_code.rs +++ b/src/exit_code.rs @@ -334,8 +334,8 @@ mod tests { assert_eq!(format!("{:?}", ExitCode::Config), "Config"); } - #[allow(clippy::cognitive_complexity, clippy::too_many_lines)] #[test] + #[allow(clippy::cognitive_complexity, clippy::too_many_lines)] fn exit_code_equality() { assert_eq!(ExitCode::Ok, ExitCode::Ok); assert_ne!(ExitCode::Ok, ExitCode::Usage); diff --git a/src/exit_code/convert.rs b/src/exit_code/convert.rs index c36d9de..1a31a83 100644 --- a/src/exit_code/convert.rs +++ b/src/exit_code/convert.rs @@ -630,8 +630,8 @@ mod tests { ); #[cfg(feature = "std")] - #[allow(clippy::too_many_lines)] #[test] + #[allow(clippy::too_many_lines)] fn from_io_error_to_exit_code() { use std::io::{Error, ErrorKind}; @@ -818,8 +818,8 @@ mod tests { } #[cfg(feature = "std")] - #[allow(clippy::cognitive_complexity, clippy::too_many_lines)] #[test] + #[allow(clippy::cognitive_complexity, clippy::too_many_lines)] fn from_io_error_kind_to_exit_code() { use std::io; @@ -973,8 +973,8 @@ mod tests { #[cfg(feature = "std")] #[cfg(any(unix, windows))] - #[allow(clippy::cognitive_complexity)] #[test] + #[allow(clippy::cognitive_complexity)] fn try_from_process_exit_status_to_exit_code() { assert_eq!( ExitCode::try_from(get_exit_status(0)).unwrap(), diff --git a/src/exit_code/result.rs b/src/exit_code/result.rs index c614d17..6339b2f 100644 --- a/src/exit_code/result.rs +++ b/src/exit_code/result.rs @@ -58,8 +58,8 @@ mod tests { ); } - #[allow(clippy::cognitive_complexity, clippy::too_many_lines)] #[test] + #[allow(clippy::cognitive_complexity, clippy::too_many_lines)] fn from_result_type_to_exit_code() { assert_eq!(ExitCode::from(Ok::<(), ExitCode>(())), ExitCode::Ok); assert_eq!(ExitCode::from(Ok::(42)), ExitCode::Ok); From adad5ab30e310b2ca5e3433c41aba5236c45d285 Mon Sep 17 00:00:00 2001 From: Shun Sakai Date: Sun, 30 Jun 2024 04:55:02 +0900 Subject: [PATCH 5/7] Rewrite examples using `clap` --- .github/workflows/CI.yaml | 2 +- CHANGELOG.adoc | 7 +++ Cargo.lock | 120 ++++++++++++++++++++++++++++++++++++++ Cargo.toml | 3 +- README.md | 2 +- clippy.toml | 2 +- examples/cat.rs | 24 ++++++-- examples/cmp.rs | 37 +++++++----- examples/isutf8.rs | 42 +++++++++---- 9 files changed, 204 insertions(+), 35 deletions(-) diff --git a/.github/workflows/CI.yaml b/.github/workflows/CI.yaml index 3e321d3..f48b6da 100644 --- a/.github/workflows/CI.yaml +++ b/.github/workflows/CI.yaml @@ -24,7 +24,7 @@ jobs: - aarch64-apple-darwin - x86_64-pc-windows-msvc toolchain: - - 1.65.0 # MSRV + - 1.74.0 # MSRV - stable - nightly include: diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 88013b9..7c18a0a 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -14,6 +14,13 @@ All notable changes to this project will be documented in this file. The format is based on https://keepachangelog.com/[Keep a Changelog], and this project adheres to https://semver.org/[Semantic Versioning]. +== {compare-url}/v0.8.0\...HEAD[Unreleased] + +=== Changed + +* Rewrite the examples using `clap` ({pull-request-url}/97[#97]) +* Bump MSRV to 1.74.0 ({pull-request-url}/97[#97]) + == {compare-url}/v0.7.14\...v0.8.0[0.8.0] - 2024-06-05 === Added diff --git a/Cargo.lock b/Cargo.lock index a149b3d..23caefc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,6 +2,55 @@ # It is not intended for manual editing. version = 3 +[[package]] +name = "anstream" +version = "0.6.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" + +[[package]] +name = "anstyle-parse" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" +dependencies = [ + "anstyle", + "windows-sys", +] + [[package]] name = "autocfg" version = "1.3.0" @@ -35,6 +84,52 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "clap" +version = "4.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84b3edb18336f4df585bc9aa31dd99c036dfa5dc5e9a2939a722a188f3a8970d" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1c09dd5ada6c6c78075d6fd0da3f90d8080651e2d6cc8eb2f1aaa4034ced708" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bac35c6dafb060fd4d275d9a4ffae97917c13a6327903a8be2153cd964f7085" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "clap_lex" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b82cf0babdbd58558212896d1a4272303a57bdb245c2bf1147185fb45640e70" + +[[package]] +name = "colorchoice" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" + [[package]] name = "errno" version = "0.3.9" @@ -68,6 +163,18 @@ dependencies = [ "wasi", ] +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" + [[package]] name = "lazy_static" version = "1.4.0" @@ -222,6 +329,12 @@ dependencies = [ "wait-timeout", ] +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + [[package]] name = "structmeta" version = "0.2.0" @@ -260,6 +373,7 @@ dependencies = [ name = "sysexits" version = "0.8.0" dependencies = [ + "clap", "proptest", "test-strategy", ] @@ -300,6 +414,12 @@ version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + [[package]] name = "wait-timeout" version = "0.2.0" diff --git a/Cargo.toml b/Cargo.toml index faaea6d..ff6034a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,7 +8,7 @@ name = "sysexits" version = "0.8.0" authors = ["Shun Sakai "] edition = "2021" -rust-version = "1.65.0" +rust-version = "1.74.0" description = "The system exit codes as defined by " documentation = "https://docs.rs/sysexits" readme = "README.md" @@ -42,6 +42,7 @@ required-features = ["default"] [dependencies] [dev-dependencies] +clap = { version = "4.5.8", features = ["derive"] } proptest = "1.5.0" test-strategy = "0.3.1" diff --git a/README.md b/README.md index 7b2507a..bd18ac8 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ See the [documentation][docs-url] for more details. ## Minimum supported Rust version -The minimum supported Rust version (MSRV) of this library is v1.65.0. +The minimum supported Rust version (MSRV) of this library is v1.74.0. ## Changelog diff --git a/clippy.toml b/clippy.toml index 20799c4..efb0e67 100644 --- a/clippy.toml +++ b/clippy.toml @@ -2,4 +2,4 @@ # # SPDX-License-Identifier: Apache-2.0 OR MIT -msrv = "1.65.0" +msrv = "1.74.0" diff --git a/examples/cat.rs b/examples/cat.rs index 15ce05c..ea4cbc3 100644 --- a/examples/cat.rs +++ b/examples/cat.rs @@ -14,21 +14,35 @@ #![warn(clippy::cargo, clippy::nursery, clippy::pedantic)] use std::{ - env, fs, + fs, io::{self, Read}, + path::PathBuf, process::ExitCode, }; +use clap::Parser; + +#[derive(Debug, Parser)] +#[command(version, about)] +struct Opt { + /// Files to print. + /// + /// If [FILE] is not specified, data will be read from stdin. + #[arg(value_name("FILE"))] + pub input: Option>, +} + fn main() -> ExitCode { - let args: Vec<_> = env::args_os().skip(1).collect(); + let opt = Opt::parse(); - let contents: io::Result> = if args.is_empty() { + #[allow(clippy::option_if_let_else)] + let contents: io::Result> = if let Some(files) = opt.input { + files.into_iter().map(fs::read_to_string).collect() + } else { let mut buf = String::new(); vec![io::stdin().read_to_string(&mut buf).map(|_| buf)] .into_iter() .collect() - } else { - args.into_iter().map(fs::read_to_string).collect() }; let contents = match contents { Ok(strings) => strings, diff --git a/examples/cmp.rs b/examples/cmp.rs index fa3cbbb..b2ffc03 100644 --- a/examples/cmp.rs +++ b/examples/cmp.rs @@ -12,15 +12,16 @@ #![warn(clippy::cargo, clippy::nursery, clippy::pedantic)] use std::{ - env, fs, io, + fs, io, path::PathBuf, process::{self, Termination}, }; +use clap::Parser; + enum ExitCode { Same, Different, - Trouble, Other(sysexits::ExitCode), } @@ -35,22 +36,28 @@ impl Termination for ExitCode { match self { Self::Same => process::ExitCode::from(u8::MIN), Self::Different => process::ExitCode::from(1), - Self::Trouble => process::ExitCode::from(2), Self::Other(code) => process::ExitCode::from(code), } } } +#[derive(Debug, Parser)] +#[command(version, about)] +struct Opt { + /// File to compare. + #[arg(value_name("FILE1"))] + pub input_1: PathBuf, + + /// File to compare. + #[arg(value_name("FILE2"))] + pub input_2: PathBuf, +} + fn main() -> ExitCode { - let args: Vec<_> = env::args_os().skip(1).take(2).collect(); + let opt = Opt::parse(); - let files = if let (Some(from), Some(to)) = (args.first(), args.get(1)) { - (PathBuf::from(from), PathBuf::from(to)) - } else { - eprintln!("Error: files are missing"); - return ExitCode::Trouble; - }; - let contents: io::Result> = args.into_iter().map(fs::read).collect(); + let files = [opt.input_1, opt.input_2]; + let contents: io::Result> = files.iter().map(fs::read).collect(); let contents = match contents { Ok(bytes) => bytes, Err(err) => { @@ -62,15 +69,15 @@ fn main() -> ExitCode { if contents[0] == contents[1] { println!( "Files {} and {} are identical", - files.0.display(), - files.1.display() + files[0].display(), + files[1].display() ); ExitCode::Same } else { println!( "Files {} and {} are different", - files.0.display(), - files.1.display() + files[0].display(), + files[1].display() ); ExitCode::Different } diff --git a/examples/isutf8.rs b/examples/isutf8.rs index 8885896..795cded 100644 --- a/examples/isutf8.rs +++ b/examples/isutf8.rs @@ -13,24 +13,44 @@ #![warn(clippy::cargo, clippy::nursery, clippy::pedantic)] use std::{ - env, fs, + fs, io::{self, Read}, + path::PathBuf, str, }; +use clap::Parser; use sysexits::ExitCode; +#[derive(Debug, Parser)] +#[command(version, about)] +struct Opt { + /// File to check. + /// + /// If [FILE] is not specified, data will be read from stdin. + #[arg(value_name("FILE"))] + pub input: Option, +} + fn main() -> ExitCode { - let input = env::args_os() - .nth(1) - .map_or_else( - || { - let mut buf = Vec::new(); - io::stdin().read_to_end(&mut buf).map(|_| buf) - }, - fs::read, - ) - .unwrap_or_else(|err| panic!("{err}")); + let opt = Opt::parse(); + + let input = if let Some(file) = opt.input { + match fs::read(file) { + Ok(data) => data, + Err(err) => { + eprintln!("Error: {err}"); + return ExitCode::from(err); + } + } + } else { + let mut buf = Vec::new(); + if let Err(err) = io::stdin().read_to_end(&mut buf) { + eprintln!("Error: {err}"); + return ExitCode::from(err); + } + buf + }; if let Err(err) = str::from_utf8(&input) { eprintln!("Error: {err}"); ExitCode::DataErr From 8d6ac225375a7c2bf88f655262ef0fd0caf44cce Mon Sep 17 00:00:00 2001 From: Shun Sakai Date: Mon, 1 Jul 2024 23:01:51 +0900 Subject: [PATCH 6/7] Update `cmp.rs` --- examples/cmp.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/cmp.rs b/examples/cmp.rs index b2ffc03..956dae9 100644 --- a/examples/cmp.rs +++ b/examples/cmp.rs @@ -34,8 +34,8 @@ impl From for ExitCode { impl Termination for ExitCode { fn report(self) -> process::ExitCode { match self { - Self::Same => process::ExitCode::from(u8::MIN), - Self::Different => process::ExitCode::from(1), + Self::Same => process::ExitCode::SUCCESS, + Self::Different => process::ExitCode::FAILURE, Self::Other(code) => process::ExitCode::from(code), } } From 87bfbae5efd667842ae1c380dcb78f5f7fdd2173 Mon Sep 17 00:00:00 2001 From: Shun Sakai Date: Wed, 3 Jul 2024 19:27:42 +0900 Subject: [PATCH 7/7] Update version to 0.8.1 --- .bumpversion.toml | 2 +- CHANGELOG.adoc | 3 ++- CITATION.cff | 4 ++-- Cargo.lock | 34 +++++++++++++++++----------------- Cargo.toml | 4 ++-- README.md | 2 +- src/lib.rs | 2 +- 7 files changed, 26 insertions(+), 25 deletions(-) diff --git a/.bumpversion.toml b/.bumpversion.toml index 051ac9d..75a54c1 100644 --- a/.bumpversion.toml +++ b/.bumpversion.toml @@ -4,7 +4,7 @@ # SPDX-License-Identifier: Apache-2.0 OR MIT [tool.bumpversion] -current_version = "0.8.0" +current_version = "0.8.1" [[tool.bumpversion.files]] filename = "CITATION.cff" diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index 7c18a0a..a0fb20b 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -14,7 +14,7 @@ All notable changes to this project will be documented in this file. The format is based on https://keepachangelog.com/[Keep a Changelog], and this project adheres to https://semver.org/[Semantic Versioning]. -== {compare-url}/v0.8.0\...HEAD[Unreleased] +== {compare-url}/v0.8.0\...v0.8.1[0.8.1] - 2024-07-03 === Changed @@ -30,6 +30,7 @@ project adheres to https://semver.org/[Semantic Versioning]. === Changed * Bump MSRV to 1.65.0 ({pull-request-url}/92[#92]) +* Move `TryFromExitStatusError` to `error` ({pull-request-url}/93[#93]) == {compare-url}/v0.7.13\...v0.7.14[0.7.14] - 2024-05-19 diff --git a/CITATION.cff b/CITATION.cff index 80d5bc8..77b2777 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -8,8 +8,8 @@ cff-version: 1.2.0 message: Please cite this software using these meta data. # Version information. -date-released: 2024-06-05 -version: 0.8.0 +date-released: 2024-07-03 +version: 0.8.1 # Project information. abstract: The system exit codes as defined by for Rust diff --git a/Cargo.lock b/Cargo.lock index 23caefc..f6a6f96 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -74,9 +74,9 @@ checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" [[package]] name = "cfg-if" @@ -177,9 +177,9 @@ checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" @@ -217,9 +217,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "proc-macro2" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] @@ -300,9 +300,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" [[package]] name = "rustix" @@ -337,9 +337,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "structmeta" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ad9e09554f0456d67a69c1584c9798ba733a5b50349a6c0d0948710523922d" +checksum = "2e1575d8d40908d70f6fd05537266b90ae71b15dbbe7a8b7dffa2b759306d329" dependencies = [ "proc-macro2", "quote", @@ -349,9 +349,9 @@ dependencies = [ [[package]] name = "structmeta-derive" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a60bcaff7397072dca0017d1db428e30d5002e00b6847703e2e42005c95fbe00" +checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc" dependencies = [ "proc-macro2", "quote", @@ -360,9 +360,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.66" +version = "2.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9" dependencies = [ "proc-macro2", "quote", @@ -371,7 +371,7 @@ dependencies = [ [[package]] name = "sysexits" -version = "0.8.0" +version = "0.8.1" dependencies = [ "clap", "proptest", @@ -392,9 +392,9 @@ dependencies = [ [[package]] name = "test-strategy" -version = "0.3.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8361c808554228ad09bfed70f5c823caf8a3450b6881cc3a38eb57e8c08c1d9" +checksum = "2bf41af45e3f54cc184831d629d41d5b2bda8297e29c81add7ae4f362ed5e01b" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index ff6034a..58ec605 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,7 +5,7 @@ [package] name = "sysexits" -version = "0.8.0" +version = "0.8.1" authors = ["Shun Sakai "] edition = "2021" rust-version = "1.74.0" @@ -44,7 +44,7 @@ required-features = ["default"] [dev-dependencies] clap = { version = "4.5.8", features = ["derive"] } proptest = "1.5.0" -test-strategy = "0.3.1" +test-strategy = "0.4.0" [features] default = ["std"] diff --git a/README.md b/README.md index bd18ac8..4f3d465 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ Add this to your `Cargo.toml`: ```toml [dependencies] -sysexits = "0.8.0" +sysexits = "0.8.1" ``` ### Example diff --git a/src/lib.rs b/src/lib.rs index 832c706..8023bad 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -42,7 +42,7 @@ //! [``]: https://man.openbsd.org/sysexits #![cfg_attr(feature = "extended_io_error", feature(io_error_more))] -#![doc(html_root_url = "https://docs.rs/sysexits/0.8.0/")] +#![doc(html_root_url = "https://docs.rs/sysexits/0.8.1/")] #![no_std] #![cfg_attr(docsrs, feature(doc_auto_cfg, doc_cfg))] // Lint levels of rustc.