Deprecate 'kapt.use.workers.api' property.

^KT-48826 Fixed
This commit is contained in:
Yahor Berdnikau
2021-09-28 12:05:36 +02:00
committed by Space
parent bc01676489
commit dd0f01d93d
@@ -107,7 +107,11 @@ class Kapt3GradleSubplugin @Inject internal constructor(private val registry: To
} }
fun Project.isUseWorkerApi(): Boolean { fun Project.isUseWorkerApi(): Boolean {
return getBooleanOptionValue(BooleanOption.KAPT_USE_WORKER_API) return getBooleanOptionValue(BooleanOption.KAPT_USE_WORKER_API) {
"""
|'${BooleanOption.KAPT_USE_WORKER_API}' is deprecated and scheduled to be removed in Kotlin 1.7 release.
""".trimMargin()
}
} }
fun Project.isIncrementalKapt(): Boolean { fun Project.isIncrementalKapt(): Boolean {
@@ -174,8 +178,15 @@ class Kapt3GradleSubplugin @Inject internal constructor(private val registry: To
fun isEnabled(project: Project) = fun isEnabled(project: Project) =
project.plugins.any { it is Kapt3GradleSubplugin } project.plugins.any { it is Kapt3GradleSubplugin }
private fun Project.getBooleanOptionValue(booleanOption: BooleanOption): Boolean { private fun Project.getBooleanOptionValue(
return when (val value = findProperty(booleanOption.optionName)) { booleanOption: BooleanOption,
deprecationMessage: (() -> String)? = null
): Boolean {
val value = findProperty(booleanOption.optionName)
if (value != null && deprecationMessage != null) {
logger.warn(deprecationMessage())
}
return when (value) {
is Boolean -> value is Boolean -> value
is String -> when { is String -> when {
value.equals("true", ignoreCase = true) -> true value.equals("true", ignoreCase = true) -> true