Gradle: compile tests incrementally when main is changed

#KT-17674 fixed
This commit is contained in:
Alexey Tsvetkov
2017-09-15 16:35:30 +03:00
parent 779b9c6fcc
commit 62f293280c
12 changed files with 371 additions and 66 deletions
@@ -48,7 +48,9 @@ class IncrementalCompilationOptions(
/** @See [ReportSeverity] */
reportSeverity: Int,
/** @See [CompilationResultCategory]] */
requestedCompilationResults: Array<Int>
requestedCompilationResults: Array<Int>,
val resultDifferenceFile: File? = null,
val friendDifferenceFile: File? = null
) : CompilationOptions(compilerMode, targetPlatform, reportCategories, reportSeverity, requestedCompilationResults) {
companion object {
const val serialVersionUID: Long = 0
@@ -507,9 +507,12 @@ class CompileServiceImpl(
workingDir,
enabled = true)
return IncrementalJvmCompilerRunner(workingDir, javaSourceRoots, versions, reporter, annotationFileUpdater,
artifactChanges, changesRegistry)
.compile(allKotlinFiles, k2jvmArgs, compilerMessageCollector, { changedFiles })
val compiler = IncrementalJvmCompilerRunner(workingDir, javaSourceRoots, versions,
reporter, annotationFileUpdater,
artifactChanges, changesRegistry,
buildHistoryFile = incrementalCompilationOptions.resultDifferenceFile,
friendBuildHistoryFile = incrementalCompilationOptions.friendDifferenceFile)
return compiler.compile(allKotlinFiles, k2jvmArgs, compilerMessageCollector, { changedFiles })
}
override fun leaseReplSession(