Add KotlinBuilder 'dumb mode' flag
A new system property was added to enable a 'dumb mode' for KotlinBuilder. In this mode it is possible to disable IC caches, but don't request rebuild And all IC trackers will still work ^KT-64305 Fixed Merge-request: KT-MR-13524 Merged-by: Aleksei Cherepanov <aleksei.cherepanov@jetbrains.com>
This commit is contained in:
committed by
Space Team
parent
033f330703
commit
3e41faf91f
+2
-1
@@ -39,6 +39,7 @@ import org.jetbrains.kotlin.cli.common.arguments.parseCommandLineArguments
|
|||||||
import org.jetbrains.kotlin.incremental.LookupSymbol
|
import org.jetbrains.kotlin.incremental.LookupSymbol
|
||||||
import org.jetbrains.kotlin.incremental.testingUtils.*
|
import org.jetbrains.kotlin.incremental.testingUtils.*
|
||||||
import org.jetbrains.kotlin.incremental.utils.TestLookupTracker
|
import org.jetbrains.kotlin.incremental.utils.TestLookupTracker
|
||||||
|
import org.jetbrains.kotlin.jps.build.KotlinBuilder.Companion.useDependencyGraph
|
||||||
import org.jetbrains.kotlin.jps.build.dependeciestxt.ModulesTxt
|
import org.jetbrains.kotlin.jps.build.dependeciestxt.ModulesTxt
|
||||||
import org.jetbrains.kotlin.jps.build.dependeciestxt.ModulesTxtBuilder
|
import org.jetbrains.kotlin.jps.build.dependeciestxt.ModulesTxtBuilder
|
||||||
import org.jetbrains.kotlin.jps.build.fixtures.EnableICFixture
|
import org.jetbrains.kotlin.jps.build.fixtures.EnableICFixture
|
||||||
@@ -617,7 +618,7 @@ private fun createMappingsDump(
|
|||||||
project: ProjectDescriptor,
|
project: ProjectDescriptor,
|
||||||
kotlinContext: KotlinCompileContext,
|
kotlinContext: KotlinCompileContext,
|
||||||
lookupsDuringTest: Set<LookupSymbol>,
|
lookupsDuringTest: Set<LookupSymbol>,
|
||||||
) = if (System.getProperty("jps.use.dependency.graph", "false").toBoolean()) "" else
|
) = if (useDependencyGraph) "" else
|
||||||
createKotlinCachesDump(project, kotlinContext, lookupsDuringTest) + "\n\n\n" +
|
createKotlinCachesDump(project, kotlinContext, lookupsDuringTest) + "\n\n\n" +
|
||||||
createCommonMappingsDump(project) + "\n\n\n" +
|
createCommonMappingsDump(project) + "\n\n\n" +
|
||||||
createJavaMappingsDump(project)
|
createJavaMappingsDump(project)
|
||||||
|
|||||||
@@ -65,6 +65,9 @@ class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) {
|
|||||||
const val SKIP_CACHE_VERSION_CHECK_PROPERTY = "kotlin.jps.skip.cache.version.check"
|
const val SKIP_CACHE_VERSION_CHECK_PROPERTY = "kotlin.jps.skip.cache.version.check"
|
||||||
const val JPS_KOTLIN_HOME_PROPERTY = "jps.kotlin.home"
|
const val JPS_KOTLIN_HOME_PROPERTY = "jps.kotlin.home"
|
||||||
|
|
||||||
|
val useDependencyGraph = System.getProperty("jps.use.dependency.graph", "false")!!.toBoolean()
|
||||||
|
val isKotlinBuilderInDumbMode = System.getProperty("kotlin.jps.dumb.mode", "false")!!.toBoolean()
|
||||||
|
|
||||||
private val classesToLoadByParentFromRegistry =
|
private val classesToLoadByParentFromRegistry =
|
||||||
System.getProperty("kotlin.jps.classesToLoadByParent")?.split(',')?.map { it.trim() } ?: emptyList()
|
System.getProperty("kotlin.jps.classesToLoadByParent")?.split(',')?.map { it.trim() } ?: emptyList()
|
||||||
private val classPrefixesToLoadByParentFromRegistry =
|
private val classPrefixesToLoadByParentFromRegistry =
|
||||||
@@ -527,7 +530,7 @@ class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) {
|
|||||||
environment
|
environment
|
||||||
)
|
)
|
||||||
|
|
||||||
if (!representativeTarget.isIncrementalCompilationEnabled) {
|
if (isKotlinBuilderInDumbMode || !representativeTarget.isIncrementalCompilationEnabled) {
|
||||||
return OK
|
return OK
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user