Added
-
To configure fail-fast behavior,
max-failcan now be specified in configuration. For example, to fail after 5 tests:[profile.default] fail-fast = { max-fail = 5 }
fail-fast = trueis the same as{ max-fail = 1 }, andfail-fast = falseis{ max-fail = "all" }.Thanks to Jayllyz for your first contribution!
-
Within tests and scripts, the
NEXTEST_PROFILEenvironment variable is now always set to the current configuration profile. Previously, this would only happen if the profile was configured viaNEXTEST_PROFILE, as a side effect of the environment being passed through.
Changed
-
The
--max-failand--no-testsoptions no longer require using an equals sign. For example,--max-fail 5and--max-fail=5now both work.This was previously done to avoid confusion between test name filters and arguments. But we believe the new
--no-testsdefault to fail sufficiently mitigates this downside, and uniformity across options is valuable.
Fixed
- Nextest now uses
rustc -vVto obtain the host target triple, rather than using the target the cargo-nextest binary was built for. This fixes behavior for runtime cross-compatible binaries, such as-linux-muslbinaries running on-linux-gnu. - If nextest is paused and later continued, the progress bar's time taken now excludes the amount of time nextest was paused for.
- Update rust-openssl for CVE-2025-24898.
Miscellaneous
- Nextest now documents the safety of altering the environment within tests. As a result of nextest's process-per-test model, it is generally safe to call
std::env::set_varandremove_varat the beginning of tests. - With Rust 1.84 and above, builds using musl no longer have slow process spawns. With this improvement, glibc and musl builds of nextest are now roughly at par, and should have similar performance characteristics.