From df4c5cd77f5e18725ba3c6b68ca6d48aa576b17a Mon Sep 17 00:00:00 2001 From: mise-en-dev <123107610+mise-en-dev@users.noreply.github.com> Date: Fri, 28 Aug 2026 14:26:34 +0000 Subject: [PATCH] chore: release v6.5.0 --- CHANGELOG.md | 17 ++++++++++++ Cargo.lock | 26 +++++++++---------- Cargo.toml | 16 ++++++------ argv/Cargo.toml | 2 +- cli/Cargo.toml | 2 +- cli/usage.usage.kdl | 2 +- config/Cargo.toml | 2 +- derive/Cargo.toml | 2 +- docs/cli/reference/commands.json | 2 +- docs/cli/reference/index.md | 2 +- lib/Cargo.toml | 2 +- test/Cargo.toml | 2 +- usage-dynamic/Cargo.toml | 4 +-- usage-rs/Cargo.toml | 2 +- .../fixtures/runtime-identity/Cargo.lock | 6 ++--- validation/Cargo.toml | 2 +- 16 files changed, 54 insertions(+), 37 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1593a1cfc..0f3ee39b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,22 @@ # Changelog +## [6.5.0](https://github.com/jdx/usage/compare/v6.4.1..v6.5.0) - 2026-08-28 + +### 🚀 Features + +- **(argv,derive)** add compiled clause support by [@jdx](https://github.com/jdx) in [#1320](https://github.com/jdx/usage/pull/1320) +- **(complete)** complete sigil-prefixed positionals by [@jdx](https://github.com/jdx) in [#1319](https://github.com/jdx/usage/pull/1319) +- **(spec,parse)** add sigil-classified positional arguments by [@jdx](https://github.com/jdx) in [#1322](https://github.com/jdx/usage/pull/1322) +- **(spec,parse)** add repeatable clause groups by [@jdx](https://github.com/jdx) in [#1321](https://github.com/jdx/usage/pull/1321) + +### 🐛 Bug Fixes + +- **(zsh)** complete aliases with argument prefixes by [@halms](https://github.com/halms) in [#1330](https://github.com/jdx/usage/pull/1330) + +### New Contributors + +- @halms made their first contribution in [#1330](https://github.com/jdx/usage/pull/1330) + ## [6.4.1](https://github.com/jdx/usage/compare/v6.4.0..v6.4.1) - 2026-08-26 ### 🐛 Bug Fixes diff --git a/Cargo.lock b/Cargo.lock index 65eb36e9a..2052869be 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1786,9 +1786,9 @@ dependencies = [ [[package]] name = "tera" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e9db9fa0629187ae0a53f3278a99d35f74647f0259c633c9504af85bd0d506" +checksum = "52fca06a22977165c6821c26e2bf0387cd7e0822107a6854d5fbb787307c4194" dependencies = [ "serde", ] @@ -2012,11 +2012,11 @@ checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" [[package]] name = "usage-argv" -version = "6.4.1" +version = "6.5.0" [[package]] name = "usage-cli" -version = "6.4.1" +version = "6.5.0" dependencies = [ "assert_cmd", "ctor", @@ -2043,7 +2043,7 @@ dependencies = [ [[package]] name = "usage-config" -version = "6.4.1" +version = "6.5.0" dependencies = [ "serde_json", "toml", @@ -2069,7 +2069,7 @@ dependencies = [ [[package]] name = "usage-derive" -version = "6.4.1" +version = "6.5.0" dependencies = [ "heck", "proc-macro2", @@ -2079,7 +2079,7 @@ dependencies = [ [[package]] name = "usage-dynamic" -version = "6.4.1" +version = "6.5.0" dependencies = [ "futures", "usage-argv", @@ -2089,7 +2089,7 @@ dependencies = [ [[package]] name = "usage-lib" -version = "6.4.1" +version = "6.5.0" dependencies = [ "clap", "criterion", @@ -2116,7 +2116,7 @@ dependencies = [ [[package]] name = "usage-rs" -version = "6.4.1" +version = "6.5.0" dependencies = [ "serde", "shell-words", @@ -2131,14 +2131,14 @@ dependencies = [ [[package]] name = "usage-test" -version = "6.4.1" +version = "6.5.0" dependencies = [ "usage-argv", ] [[package]] name = "usage-validation" -version = "6.4.1" +version = "6.5.0" dependencies = [ "expr-lang", ] @@ -2151,9 +2151,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.25.0" +version = "1.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f053576934f05a761a402421fbbe3d425d9366f75f978806a037b3ca481abecc" +checksum = "b5772d71c9be8a8a6ac2117d949c5b224c1b72241bb611d9a3012edcf8af7812" dependencies = [ "getrandom 0.4.3", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index 373540ab4..caa9a1891 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -42,20 +42,20 @@ license = "MIT" [workspace.dependencies] clap_usage = { path = "./clap_usage", version = "5.0.0" } usage-cli = { path = "./cli" } -usage-argv = { path = "./argv", version = "6.4.1" } -usage-config = { path = "./config", version = "6.4.1" } -usage-derive = { path = "./derive", version = "6.4.1" } +usage-argv = { path = "./argv", version = "6.5.0" } +usage-config = { path = "./config", version = "6.5.0" } +usage-derive = { path = "./derive", version = "6.5.0" } # No features, and defaults off. A feature named here is inherited by every member that writes # `workspace = true` and inlines into their published manifests — so `clap` and `validation` # reached members that use neither, one of them an adopter's build script. Defaults # are off rather than absent because cargo *ignores* a member's `default-features = false` unless # the workspace declaration sets it too, and warns that it may become a hard error. Members name # what they need, `docs` included. -usage-lib = { path = "./lib", version = "6.4.1", default-features = false } -usage-rs = { path = "./usage-rs", version = "6.4.1" } -usage-dynamic = { path = "./usage-dynamic", version = "6.4.1" } -usage-test = { path = "./test", version = "6.4.1" } -usage-validation = { path = "./validation", version = "6.4.1" } +usage-lib = { path = "./lib", version = "6.5.0", default-features = false } +usage-rs = { path = "./usage-rs", version = "6.5.0" } +usage-dynamic = { path = "./usage-dynamic", version = "6.5.0" } +usage-test = { path = "./test", version = "6.5.0" } +usage-validation = { path = "./validation", version = "6.5.0" } [workspace.metadata.release] allow-branch = ["main"] diff --git a/argv/Cargo.toml b/argv/Cargo.toml index 5bd3fb229..cf58defaf 100644 --- a/argv/Cargo.toml +++ b/argv/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-argv" description = "Zero-allocation argv parser for usage specs" -version = "6.4.1" +version = "6.5.0" edition = "2021" rust-version = "1.91" homepage = { workspace = true } diff --git a/cli/Cargo.toml b/cli/Cargo.toml index d1527dcc2..39a678259 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -2,7 +2,7 @@ name = "usage-cli" edition = "2021" rust-version = "1.91" -version = "6.4.1" +version = "6.5.0" description = "CLI for working with usage-based CLIs" license = { workspace = true } authors = { workspace = true } diff --git a/cli/usage.usage.kdl b/cli/usage.usage.kdl index a7a20fa3f..6a0c770a0 100644 --- a/cli/usage.usage.kdl +++ b/cli/usage.usage.kdl @@ -2,7 +2,7 @@ min_usage_version "6.5" name usage bin usage -version "6.4.1" +version "6.5.0" repository "https://github.com/jdx/usage" source_code_link_template #""" {%- set path = path | replace(from='-', to='_') -%} diff --git a/config/Cargo.toml b/config/Cargo.toml index e3f01104f..c8ae24369 100644 --- a/config/Cargo.toml +++ b/config/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-config" description = "Layered configuration resolution for usage specs, with provenance" -version = "6.4.1" +version = "6.5.0" edition = "2021" rust-version = "1.91" homepage = { workspace = true } diff --git a/derive/Cargo.toml b/derive/Cargo.toml index c10ca75ad..eb9613962 100644 --- a/derive/Cargo.toml +++ b/derive/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-derive" description = "Derive macro that compiles a CLI definition into parse tables and a usage spec" -version = "6.4.1" +version = "6.5.0" edition = "2021" rust-version = "1.91" homepage = { workspace = true } diff --git a/docs/cli/reference/commands.json b/docs/cli/reference/commands.json index 1d79dd539..44b4e737b 100644 --- a/docs/cli/reference/commands.json +++ b/docs/cli/reference/commands.json @@ -2014,7 +2014,7 @@ "sources": {}, "files": [] }, - "version": "6.4.1", + "version": "6.5.0", "usage": "Usage: usage \n usage --completions \n usage --usage-spec", "complete": {}, "source_code_link_template": "{%- set path = path | replace(from='-', to='_') -%}\n{%- if cmd.subcommands | length > 0 -%}\n{%- set path = path ~ \"/mod.rs\" -%}\n{%- elif path in [\"bash\", \"fish\", \"powershell\", \"zsh\"] -%}\n{%- set path = \"shell.rs\" -%}\n{%- else -%}\n{%- set path = path ~ \".rs\" -%}\n{%- endif -%}\nhttps://github.com/jdx/usage/blob/main/cli/src/cli/{{path}}", diff --git a/docs/cli/reference/index.md b/docs/cli/reference/index.md index edc7e8621..634cf724f 100644 --- a/docs/cli/reference/index.md +++ b/docs/cli/reference/index.md @@ -4,7 +4,7 @@ **Usage:** `usage [--completions ] [--usage-spec] ` -**Version:** 6.4.1 +**Version:** 6.5.0 **Repository:** https://github.com/jdx/usage diff --git a/lib/Cargo.toml b/lib/Cargo.toml index 788eac239..4d0d95eb6 100644 --- a/lib/Cargo.toml +++ b/lib/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-lib" edition = "2021" -version = "6.4.1" +version = "6.5.0" rust-version = "1.91" include = [ "/Cargo.toml", diff --git a/test/Cargo.toml b/test/Cargo.toml index 74d351f5e..d71513156 100644 --- a/test/Cargo.toml +++ b/test/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-test" description = "Test helpers for CLIs built with usage" -version = "6.4.1" +version = "6.5.0" edition = "2021" rust-version = "1.91" homepage = { workspace = true } diff --git a/usage-dynamic/Cargo.toml b/usage-dynamic/Cargo.toml index baebfcce7..85c5fce33 100644 --- a/usage-dynamic/Cargo.toml +++ b/usage-dynamic/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-dynamic" description = "Runtime command catalogs for usage-rs applications" -version = "6.4.1" +version = "6.5.0" edition = "2021" rust-version = "1.91" homepage = { workspace = true } @@ -12,7 +12,7 @@ license = { workspace = true } [dependencies] usage-argv = { workspace = true, features = ["spec", "complete"] } -usage-parser = { package = "usage-lib", path = "../lib", version = "6.4.1", default-features = false, features = ["cli-help"] } +usage-parser = { package = "usage-lib", path = "../lib", version = "6.5.0", default-features = false, features = ["cli-help"] } [package.metadata.release] shared-version = true diff --git a/usage-rs/Cargo.toml b/usage-rs/Cargo.toml index c0050a000..0a88f8aa4 100644 --- a/usage-rs/Cargo.toml +++ b/usage-rs/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-rs" description = "A compiled CLI parser for Rust, built on usage specs" -version = "6.4.1" +version = "6.5.0" edition = "2021" rust-version = "1.91" homepage = { workspace = true } diff --git a/usage-rs/tests/fixtures/runtime-identity/Cargo.lock b/usage-rs/tests/fixtures/runtime-identity/Cargo.lock index 2085cf897..a302137d0 100644 --- a/usage-rs/tests/fixtures/runtime-identity/Cargo.lock +++ b/usage-rs/tests/fixtures/runtime-identity/Cargo.lock @@ -39,11 +39,11 @@ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "usage-argv" -version = "6.4.1" +version = "6.5.0" [[package]] name = "usage-derive" -version = "6.4.1" +version = "6.5.0" dependencies = [ "proc-macro2", "quote", @@ -52,7 +52,7 @@ dependencies = [ [[package]] name = "usage-rs" -version = "6.4.1" +version = "6.5.0" dependencies = [ "usage-argv", "usage-derive", diff --git a/validation/Cargo.toml b/validation/Cargo.toml index 8d96035d8..78f21385d 100644 --- a/validation/Cargo.toml +++ b/validation/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "usage-validation" description = "Portable expression validation for usage specs" -version = "6.4.1" +version = "6.5.0" edition = "2021" rust-version = "1.91" homepage = { workspace = true }