When the gitci level is set to
error, mutations will now be created as tasks on bitbucket server.
For Bitbucket server, when a mutation comment cannot be deleted due to replies, the original text will now be retained when marking the comment as outdated.
Previously the pull request integrations reported the number of tests run against each mutant. This did not work well when a history file was also used, as the number of executed tests would be zero after the first analysis if the code and tests around a mutant were not changed.
The number of covering tests for each mutant is now reported instead. This is a stable figure, even when a history file is in use, and arguably more useful information to be presented with when assessing a surviving mutant.
Previous versions of the plugin updated the names of mutated lambdas to be more human readable. This functionality is now provided by the arcmutate base plugin. If it is not already configured for your project it should be installed when upgrading to 1.1.0.
When all mutations were killed, the table failed to render correctly on bitbucket server which requires additional whitespace in the markdown.
failWhenNoMutations flag is now autoset to false when running in git mixed mode. This makes the behaviour the same across all three modes.
When a module contains no git changes, arcmutate will now stop processing without running tests when operating in
git-mixed modes. This brings the behaviour in line with normal
git mode, and potentially saves significant processing time.
Comments with replies cannot be deleted on BitBucket Server, which could cause the plugin to fail when updating an MR (BitBucket cloud is unaffected).
The plugin will now replace the contents of comment that cannot be deleted with a fixed message.
Adds the option to delete past summary comments in GitHub PRs. This is controlled by a new deleteOldSummaries parameter which defaults to false.
Introduces a new mode
GIT_MIXED combining the behaviour of the test and change based modes. Code will be considered for mutation if it has been modified, or if it is part of a class where one or more lines are exercised by a modified test.
GIT_MIXED mode require the source roots of the test code to be passed to pitest as well as the production source roots. As these will often not be configured, the plugin will attempt to auto-add test directories. If a directory is configured of the form
src/main/x the plugin will add
src/test/x if it exists.
On some platforms, a fatal error would occur if an external process modified a version controlled file. Most often this occurred when lock files, or other files that were not intended to be version controlled, were accidentally included due to missing entries in the
These scenarios are no longer treated as an error, although the inclusion of non source files in the git history may result in additional processing and slow performance.
Small enhancement to logging to ensure the last accessed file is recorded when an IOException occurs.
Fix for potential resource leak when analysing very large changesets.
See Licence Management for details.
Additional mode of operating, see test based mode
When the plugin is activated pitest’s
failWhenNoMutations property is now automatically unset. This removes the need for additional config when the changes in the git history do not include mutable code.