Changed
- For setup scripts,
slow-timeoutno longer acceptson-timeout = "pass", and nextest now reports a configuration error if it is specified. A setup script that times out always fails the run. Previously, this setting was accepted but handled inconsistently: the timed-out script was counted as a failure, but the run was not cancelled. (#3640) - Internal dependency updates:
guppyupdated to 0.19.1, andtarget-specupdated to 3.7.0, updating built-in targets to Rust 1.98.
Fixed
-
Stress runs now exit with a non-zero code if any iteration failed. Previously, with fail-fast disabled, the exit code reflected only the last iteration, so a stress run with failures in earlier iterations exited with code 0 if the last iteration passed. (#3624)
-
Stress runs now always run at least one iteration. Previously,
--stress-durationwith a very short duration (such as1ns) could finish without running any tests. (#3633) -
Runs stopped by immediate fail-fast (
--max-fail N:immediate) are now treated as failed rather than cancelled. Previously, in stress runs, the summary read0 passed; cancelled due to test failureand the failing iteration was not counted as failed. (#3639) -
When the global timeout fires with immediate fail-fast enabled, nextest now reports the global timeout as the reason the run was cancelled. Previously, the tests terminated by the timeout counted as failures, so nextest printed a second
Cancelling due to test failureline and reported a test failure as the reason. (#3637) -
After the global timeout fires, nextest no longer keeps a CPU core busy while it waits for running tests to shut down. (#3647)
-
The leak timeout is no longer restarted each time a leaked handle produces output, or each time nextest handles a signal or an info request while waiting. Previously, a test that exited while leaving behind a process that kept writing to standard output or standard error could delay leak detection indefinitely. (#3646)
-
If waiting on a test or setup script process fails, nextest now reports the test or script as an execution failure, with the underlying error shown. Previously, nextest panicked. (#3643)
-
The
CancellingandKillingstatus lines no longer contain stray colons. Previously, nextest printed lines likeKilling due to second signal: : 1 test still running, and a trailing colon when nothing was still running. (#3641)
Internal improvements
-
Source builds of nextest no longer compile two versions of
zstd. (#3620)Thanks Jake-Shadle for your contribution!