Releases: sourcefrog/cargo-mutants
cargo-mutants 0.2.3
-
Switch from Indicatif to Nutmeg to draw progress bars and output. This fixes a bug where terminal output line-wraps badly, and adds a projection for the total estimated time to completion.
-
Change: Mutants are now tested in random order by default, so that repeated runs are more likely to surface interesting new findings early, rather than repeating previous results. The previous behavior of testing mutants in the deterministic order they're encountered in the tree can be restored with
--no-shuffle
.
cargo-mutants 0.2.2
-
The progress bar now shows which mutant is being tested out of how many total.
-
The automatic timeout is now set to the minimum of 20 seconds, or 5x the time of the tests in a baseline tree, to reduce the incidence of false timeouts on machines with variable throughput.
-
Ctrl-c (or
SIGINT
) interrupts the program during copying the tree. Previously it was not handled until the copy was complete. -
New
--no-copy-target
option.
cargo-mutants 0.2.1
- Arguments to
cargo test
can be passed on the command line after--
. This allows, for example, skipping doctests or setting the number of test threads. #15
cargo-mutants 0.2.0
0.2.0
Released 2022-02-06
-
A new
--timeout SECS
option to limit the runtime of anycargo test
invocation, so that mutations that cause tests to hang don't causecargo mutants
to hang.A default timeout is set based on the time to run tests in an unmutated tree. There is no timeout by default on the unmutated tree.
On Unix, the
cargo
subprocesses run in a new process group. As a consequence ctrl-c is explicitly caught and propagated to the child processes. -
Show a progress bar while looking for mutation opportunities, and show the total number found.
-
Show how many mutation opportunities were found, before testing begins.
-
New
--shuffle
option tests mutants in random order. -
By default, the output now only lists mutants that were missed or that timed out. Mutants that were caught, and mutants that did not build, can be printed with
--caught
and--unviable
respectively.