Why does the idea plugin enforce a mapping of testCompile => to TEST in gradle 2.14.1?


(Matt Khan) #1

I’m still using gradle 2.14 atm and have noticed that it includes https://github.com/gradle/gradle/commit/86137a642dfbdd89d0f59c05ca3ade27082894a5

This commit ensures that testCompile dependencies always end up in TEST scope. This means a dependency listed as both compileOnly and testCompileOnly will be placed into TEST scope thus producing an intellij project that does not compile.

I can override this by adding

idea {
    module {
        scopes.COMPILE.plus += [ configurations.compileOnly ]
    }
}

However I’m curious to know why that change was made, presumably there is some other use case I haven’t considered.

Can anyone shed some light on this?