feat(spec): expose package metadata - #1116
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Central YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
91d4b1b to
ee66b8c
Compare
Instruction counts
No instruction-count regression above 1%. Only instruction counts gate. Wall clock is shown for context — on identical hardware it moves 4-20% run to run. Measured by tak — instruction-counted CLI benchmarks, stored in this repository's git notes. Shadow comparisonParsing
|
d137ef4 to
84132c9
Compare
84132c9 to
8ac994b
Compare
8ac994b to
cd45c78
Compare
cd45c78 to
3b8e1b5
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 3b8e1b5. Configure here.

Summary
Validation
cargo test -p usage-rs --all-features package_metadata_survives_spec_emissioncargo test -p usage-lib --all-featurescargo clippy -p usage-argv -p usage-derive -p usage-rs -p usage-lib --all-features -- -D warningsNote
Low Risk
Additive optional metadata and documentation output only; no parsing or auth behavior changes.
Overview
Adds root-level package metadata (
author,license,repository) to the CLI spec so it can flow from derive attributes through KDL into generated docs.Spec & derive:
Specgains the three optional fields (includingEMPTYand overlay wiring), KDL emission writes them when set, and#[usage(author|license|repository = …)]on the root accepts expressions (e.g.env!("CARGO_PKG_…")) while rejecting the same attributes on nested commands.Output: Markdown templates and the manpage renderer emit Author, License, and Source sections when present; the
usageCLI manpage gains a SOURCE section via generated docs.Docs & tracking: PLAN marks
licensemetadata done; clap compatibility and migration docs describe the new surface. Conformance roundtrip and facade tests lock in KDL/spec preservation.Reviewed by Cursor Bugbot for commit 49e751e. Bugbot is set up for automated code reviews on this repo. Configure here.