Skip to content

complex filters to enable/disable benches#6

Merged
PSeitz merged 12 commits into
mainfrom
improve_iter
Apr 12, 2026
Merged

complex filters to enable/disable benches#6
PSeitz merged 12 commits into
mainfrom
improve_iter

Conversation

@PSeitz

@PSeitz PSeitz commented Apr 11, 2026

Copy link
Copy Markdown
Owner
  • Advanced filtering engine via tantivy-query-grammar
Extended basic substring filtering with a powerful querying engine using tantivy-query-grammar.

Supports logical operators: AND, OR, NOT (and their symbols like -).
Supports field-based targeting:
- runner_name (alias: r)
- group_name (alias: g)
- bench_name (alias: b)

Enables granular selections, e.g., cargo bench -- "bench_name:my_bench AND group_name:my_group".
You can also use the `BINGGAN_FILTER` environment variable to apply a filter.
Keeps backward compatibility: basic strings fallback to substring matches on the full bench ID.

Introduces a querying engine for filtering benchmarks using tantivy-query-grammar.

Instead of a simple substring match on the joined name, users can now use logical operators (AND, OR, NOT) and specify fields (runner_name/r, group_name/g, bench_name/b).
Added README documentation and CHANGELOG entry for the new feature.
PSeitz added 11 commits April 11, 2026 17:38
Collapses nested if statements into match guards in PlainReporter as suggested by clippy.
Wraps the transmute call in an unsafe block inside transmute_lifetime as required by modern rust editions.
Allows specifying the benchmark filter via the BINGGAN_FILTER environment variable as a fallback when the CLI argument is not provided.
@PSeitz PSeitz merged commit 35df514 into main Apr 12, 2026
27 checks passed
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