NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #3819 most downloaded on crates.io
Filtering DSL for cargo-nextest
Last release 2 months ago
04 Aug 2026
Release timing varies
gaps range from 2 weeks to 5 months
Nearly every release is documented
notes for 29 of 29 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
29 releases · first in 2022
One column per quarter.
nextest-metadata updated to 0.15.0.
nextest-metadata updated to 0.15.0.Minor updates to the filterset reference.
Minor updates to the filterset reference.
A top-level FILTERSET_REFERENCE_MD constant contains a filterset reference in Markdown format.
A top-level FILTERSET_REFERENCE_MD constant contains a filterset reference in Markdown format.
Filterset expressions like not(test(foo)), all()and(test(foo)), and all()or(test(foo)), where not, and, or or is immediately followed by an opening pa
not(test(foo)), all()and(test(foo)), and all()or(test(foo)), where not, and, or or is immediately followed by an opening parenthesis, now parse correctly. Previously, a separating space was required. (#3367)A new group() filterset predicate for CLI filter expressions. This allows filtering tests by their assigned test group. For example, group(my-group) m
group() filterset predicate for CLI filter expressions. This allows filtering tests by their assigned test group. For example, group(my-group) matches tests in the my-group group, and not group(@global) matches tests in any non-global group.KnownGroups type for validating group names during filterset compilation.nextest-metadata updated to 0.14.1.### Changed - winnow updated to 1.0.0.
nextest-metadata updated to 0.14.0.
nextest-metadata updated to 0.14.0.TestQuery::test_name is now a &TestCaseName instead of &str.
TestQuery::test_name is now a &TestCaseName instead of &str.Support for filtering test archives by binary. The cargo nextest archive command now accepts filter expressions, though test-level predicates (like te
cargo nextest archive command now accepts filter expressions, though test-level predicates (like test(...)) are not supported since binaries are not executed during archiving.FiltersetLeaf::is_runtime_only() to check if a filter leaf requires runtime evaluation.ParsedLeaf is now available as a public API.
ParsedLeaf is now available as a public API.Added support for rejecting unknown binary IDs.
Internal dependency update: winnow updated to 0.7. Thanks to Ed Page for the update!
### Changed - MSRV updated to Rust 1.81. - Internal dependency updates.
Renamed references from "default-set" to "default-filter" to match cargo-nextest changes.
Types renamed from FilteringExpr to Filterset.
FilteringExpr to Filterset.New APIs: CompiledExpr::matches_binary and matches_test.
CompiledExpr::matches_binary and matches_test.default() predicate.FilteringExpr::parse now takes a ParseContext.matches_binary and matches_test functions now take an EvalContext.nextest-metadata updated to 0.11.0.
Parser combinator library changed from nom to winnow. Thanks @epage for creating winnow, and for the contribution!
Internal cleanups: remove reliance on Incomplete. Thanks @epage for the contribution!
Internal cleanups: remove reliance on Incomplete. Thanks @epage for the contribution!
nextest-metadata updated to 0.10.
nextest-metadata updated to 0.10..crate files uploaded to crates.io now contain the LICENSE-APACHE and LICENSE-MIT license files. Thanks @musicinmybrain for your first contribution!Support for a new binary_id predicate.
binary_id predicate.For more information, see the changelog for cargo-nextest 0.9.64.
### Changed - Internal dependency updates. - MSRV updated to Rust 1.70.
### Changed - guppy updated to 0.17.0.
guppy updated to 0.17.0.FilteringExpr now carries three forms of an expression:
FilteringExpr now carries three forms of an expression:
input, which is the raw input as provided.parsed, which represents a parsed expression that hasn't yet been evaluated against a specific
PackageGraph. This is a newly public type ParsedExpr.compiled, which is an expression that has been compiled against a PackageGraph. This is of
type CompiledExpr, which is what FilteringExpr used to be.Display impl on ParsedExpr.### Changed - guppy updated to 0.15.0. - MSRV updated to Rust 1.62.
guppy updated to 0.15.0.Updated private dependency recursion to 0.3.0. Thanks Inanna for your contribution!
Evaluation now uses a stack machine via the recursion crate. Thanks Inanna for your first contribution!
The expression language supports several new predicates:
kind(name-matcher): include all tests in binary kinds (e.g. lib, test, bench) matching name-matcher.binary(name-matcher): include all tests in binary names matching name-matcher.platform(host) or platform(target): include all tests that are built for the host or target platform, respectively.Option<bool> where None indicates the unknown state.TestQuery struct, making it easier to add more parameters in the future.[0.23.0]: https://github.com/nextest-rs/nextest/releases/tag/nextest-filtering-0.23.0 [0.22.0]: https://github.com/nextest-rs/nextest/releases/tag/nex
Initial release.
Your coding agent can read these notes before it upgrades. Set up the MCP server →