Changelog History
Page 1
-
v0.11.17 Changes
November 12, 2022Add execution profiling via
--profile
. The output format is not stable yet, still this profile is very useful to differentiate mutant load time from target application load time.Improve worker process termination speed. Reduces pause before report print especially on high core count machines.
-
v0.11.16 Changes
September 11, 2022Fix ignore patterns support for single node def nodes. Fix config merge support for ignore patterns.
-
v0.11.15 Changes
September 05, 2022Fix to provide a well formed
Mutant::Config::DEFAULT
constant at all times. Primarily useful for custom 3rd party integrations that use mutants API directly. -
v0.11.14 Changes
July 31, 2022 -
v0.11.13 Changes
June 27, 2022- ➕ Add support for org wide opensource licensing.
-
v0.11.12 Changes
June 27, 2022Add user defined mutation filtering.
Mutant will not emit mutations for AST patterns defined by the new mutation specific option
ignore_patterns
.mutation: ignore_patterns: - send{selector=log} # does no emit any mutation for `logger.log` or similar.
The supported syntax is way more powerful than this simple example.
Fix: [#1308] again.
Properly normalize repository names on OSS license check.
Deprecate
mutation_timeout
toplevel configuration key.Now use:
mutation: timeout: 10.0
-
v0.11.11 Changes
June 20, 2022Add support for minitest-0.5.16, and its srant initalization. Currently mutant randomizes selected minitest tests by default. AS this is also the minitest default for versions past 0.5.16 this should be a good enough behavior.
Add mutation AST filtering. This allows to not emit mutations on user specified ASTS.
Fix incomplete mutations for regexp capture groups. As an example,
/(\w\d)/
now gets mutated to/(\W\d)/
and/(\w\D)/
instead of just the former case.Fix capture group -> passive group mutations which would not get properly generated in many cases. As an example,
/(\w\d)/
would get mutated to/(?:\w)/
instead of/(?:\w\d)/
like it will now. -
v0.11.10 Changes
May 02, 2022 -
v0.11.9 Changes
May 01, 2022Add explicit mutation handler for xstr nodes.
Fix crash with certain block argument edge cases such as
foo { |(*)| }
.Fix mutation from
foo { |(a, b)| }
tofoo { |(_a, b)| }
andfoo { |(a, _b)| }
instead of the less useful mutation to onlyfoo { |_a| }
.Add
foo { |(a, b)| }
->foo { |a, b| }
mutation.Remove useless
loop { code }
->loop { nil }
mutation. -
v0.11.8 Changes
April 25, 2022Add inline mutant disable configuration. This allows individual subjects to be marked as disbled directly in the code.
Use:
class Something # mutant:disable def some_method end end