Skip to content

Named rules for every plugin - #3

Merged
zdk merged 1 commit into
mainfrom
feat/named-rules-all
Oct 9, 2026
Merged

zdk merged 1 commit into
mainfrom
feat/named-rules-all

Conversation

@zdk

@zdk zdk commented Oct 9, 2026

Copy link
Copy Markdown
Owner

What changes

  • The other eleven plugins are rewritten with named rule blocks, like kubectl-compact in kubectl: named rules (needs lowfat 0.9.0) #2.
  • Each file handles failed commands in one rule. Where the failure view is not raw (go test, cargo test, npm audit), a per-subcommand rule comes first.
  • Plugins with a single catch-all (pytest, curl, psql, ansible) become one flat rule per level.
  • terraform: -json is truncated as JSON on every subcommand. Before, init, validate and fmt ignored the flag.
  • Converted plugins are bumped by one minor version.

Testing

  • Compared old and new filters over 15,090 cases in a Linux container: every subcommand, five flag sets, three levels, both exit codes, each plugin's samples plus larger inputs.
  • Ten plugins give identical output in all cases. terraform differs in 44 cases, all init, validate or fmt with -json, which is the change above.
  • lowfat plugin bench numbers are unchanged for every plugin.

Merge order

Needs lowfat 0.9.0. It is on GitHub releases and Homebrew. crates.io still has 0.8.1 until the publish job is rerun.

- failed commands handled by one rule per file, with per-subcommand
  rules where the failure view is not raw (go test, cargo test, npm audit)
- single catch-all plugins become one flat rule per level
- terraform: -json is truncated as JSON on every subcommand
- bump converted plugins by one minor version
@zdk
zdk merged commit 0c841be into main Oct 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant