szpak / gradle-pitest-plugin

Gradle plugin for PIT Mutation Testing
http://gradle-pitest-plugin.solidsoft.info/
211 stars 57 forks source link

Remove history locations from inputs/outputs #350

Open Pfoerd opened 10 months ago

Pfoerd commented 10 months ago

The gradle docs on incremental builds say

don’t register properties as inputs if they don’t affect the output

As the pitest history file doesn't affect the results of mutation analysis, the properties historyInputLocation, defaultFileForHistoryData and historyOutputLocation should not be added to inputs/outputs of PitestTask, but should instead be treated like internal task properties.

This is important e.g. when sharing history files across builds: currently the PitestTask is considered to be out-of-date even when only the history file changed since the last successful run (e.g. because a new history file was provided by another build). Thus, mutation analysis is executed but the results will of course always be the same.

Pfoerd commented 10 months ago

@szpak do you have any feedback on this?

This blocks us from integrating history support in our CI pipeline as history file handling depends on whether this will be fixed in the pitest-plugin. Otherwise we have to implement a workaround.

Pfoerd commented 5 months ago

Hi @szpak do you have any feedback on this?

This is really a pain as it increases build times of CI builds by hours for no reason.

If it helps, I can provide a PR, but I don't want to make the effort unless you're really interested. Unfortunately I've seen that this projects seems to be inactive for a while?