Fix deprecated ConfigureUtil usages in KGP

Required for Gradle 7+ #KTI-559
This commit is contained in:
Vyacheslav Gerasimov
2021-08-23 18:05:30 +03:00
parent c1ba586c96
commit 8b5db6473b
9 changed files with 26 additions and 25 deletions
@@ -9,7 +9,6 @@ import groovy.lang.Closure
import org.gradle.api.Action
import org.gradle.api.Task
import org.gradle.api.tasks.Internal
import org.gradle.util.ConfigureUtil
interface KotlinCompile<out T : KotlinCommonOptions> : Task {
@get:Internal
@@ -24,6 +23,6 @@ interface KotlinCompile<out T : KotlinCommonOptions> : Task {
}
fun kotlinOptions(fn: Closure<*>) {
ConfigureUtil.configure(fn, kotlinOptions)
project.configure(kotlinOptions, fn)
}
}
}
@@ -6,45 +6,46 @@
package org.jetbrains.kotlin.gradle.plugin
import groovy.lang.Closure
import org.gradle.api.Project
import org.gradle.api.artifacts.Dependency
import org.gradle.api.artifacts.ExternalModuleDependency
import org.gradle.api.artifacts.ProjectDependency
import org.gradle.util.ConfigureUtil
import java.io.File
interface KotlinDependencyHandler {
val project: Project
fun api(dependencyNotation: Any): Dependency?
fun api(dependencyNotation: String, configure: ExternalModuleDependency.() -> Unit): ExternalModuleDependency
fun <T : Dependency> api(dependency: T, configure: T.() -> Unit): T
fun api(dependencyNotation: String, configure: Closure<*>) = api(dependencyNotation) { ConfigureUtil.configure(configure, this) }
fun <T : Dependency> api(dependency: T, configure: Closure<*>) = api(dependency) { ConfigureUtil.configure(configure, this) }
fun api(dependencyNotation: String, configure: Closure<*>) = api(dependencyNotation) { project.configure(this, configure) }
fun <T : Dependency> api(dependency: T, configure: Closure<*>) = api(dependency) { project.configure(this, configure) }
fun implementation(dependencyNotation: Any): Dependency?
fun implementation(dependencyNotation: String, configure: ExternalModuleDependency.() -> Unit): ExternalModuleDependency
fun <T : Dependency> implementation(dependency: T, configure: T.() -> Unit): T
fun implementation(dependencyNotation: String, configure: Closure<*>) =
implementation(dependencyNotation) { ConfigureUtil.configure(configure, this) }
implementation(dependencyNotation) { project.configure(this, configure) }
fun <T : Dependency> implementation(dependency: T, configure: Closure<*>) =
implementation(dependency) { ConfigureUtil.configure(configure, this) }
implementation(dependency) { project.configure(this, configure) }
fun compileOnly(dependencyNotation: Any): Dependency?
fun compileOnly(dependencyNotation: String, configure: ExternalModuleDependency.() -> Unit): ExternalModuleDependency
fun <T : Dependency> compileOnly(dependency: T, configure: T.() -> Unit): T
fun compileOnly(dependencyNotation: String, configure: Closure<*>) =
compileOnly(dependencyNotation) { ConfigureUtil.configure(configure, this) }
compileOnly(dependencyNotation) { project.configure(this, configure) }
fun <T : Dependency> compileOnly(dependency: T, configure: Closure<*>) =
compileOnly(dependency) { ConfigureUtil.configure(configure, this) }
compileOnly(dependency) { project.configure(this, configure) }
fun runtimeOnly(dependencyNotation: Any): Dependency?
fun runtimeOnly(dependencyNotation: String, configure: ExternalModuleDependency.() -> Unit): ExternalModuleDependency
fun <T : Dependency> runtimeOnly(dependency: T, configure: T.() -> Unit): T
fun runtimeOnly(dependencyNotation: String, configure: Closure<*>) =
runtimeOnly(dependencyNotation) { ConfigureUtil.configure(configure, this) }
runtimeOnly(dependencyNotation) { project.configure(this, configure) }
fun <T : Dependency> runtimeOnly(dependency: T, configure: Closure<*>) =
runtimeOnly(dependency) { ConfigureUtil.configure(configure, this) }
runtimeOnly(dependency) { project.configure(this, configure) }
fun kotlin(simpleModuleName: String): ExternalModuleDependency = kotlin(simpleModuleName, null)
fun kotlin(simpleModuleName: String, version: String?): ExternalModuleDependency
@@ -12,7 +12,6 @@ import org.gradle.api.attributes.HasAttributes
import org.gradle.api.file.ConfigurableFileCollection
import org.gradle.api.file.FileCollection
import org.gradle.api.tasks.TaskProvider
import org.gradle.util.ConfigureUtil
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCompile
import java.io.File
@@ -39,7 +38,7 @@ interface KotlinCompilation<out T : KotlinCommonOptions> : Named, HasAttributes,
val defaultSourceSet: KotlinSourceSet
fun defaultSourceSet(configure: KotlinSourceSet.() -> Unit)
fun defaultSourceSet(configure: Closure<*>) = defaultSourceSet { ConfigureUtil.configure(configure, this) }
fun defaultSourceSet(configure: Closure<*>) = defaultSourceSet { target.project.configure(this, configure) }
val compileDependencyConfigurationName: String
@@ -58,10 +57,10 @@ interface KotlinCompilation<out T : KotlinCommonOptions> : Named, HasAttributes,
val kotlinOptions: T
fun kotlinOptions(configure: T.() -> Unit)
fun kotlinOptions(configure: Closure<*>) = kotlinOptions { ConfigureUtil.configure(configure, this) }
fun kotlinOptions(configure: Closure<*>) = kotlinOptions { target.project.configure(this, configure) }
fun attributes(configure: AttributeContainer.() -> Unit) = attributes.configure()
fun attributes(configure: Closure<*>) = attributes { ConfigureUtil.configure(configure, this) }
fun attributes(configure: Closure<*>) = attributes { target.project.configure(this, configure) }
val compileAllTaskName: String
@@ -15,7 +15,6 @@ import org.gradle.api.attributes.AttributeContainer
import org.gradle.api.attributes.HasAttributes
import org.gradle.api.component.SoftwareComponent
import org.gradle.api.publish.maven.MavenPublication
import org.gradle.util.ConfigureUtil
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
interface KotlinTargetComponent : SoftwareComponent {
@@ -52,7 +51,7 @@ interface KotlinTarget : Named, HasAttributes {
fun mavenPublication(action: Action<MavenPublication>)
fun attributes(configure: AttributeContainer.() -> Unit) = attributes.configure()
fun attributes(configure: Closure<*>) = attributes { ConfigureUtil.configure(configure, this) }
fun attributes(configure: Closure<*>) = attributes { project.configure(this, configure) }
val preset: KotlinTargetPreset<out KotlinTarget>?
@@ -8,12 +8,11 @@ package org.jetbrains.kotlin.gradle.plugin
import groovy.lang.Closure
import org.gradle.api.file.FileCollection
import org.gradle.api.tasks.testing.TestFilter
import org.gradle.util.ConfigureUtil
interface KotlinTestRun<out SourceType : KotlinExecution.ExecutionSource> : KotlinExecution<SourceType> {
fun filter(configureFilter: TestFilter.() -> Unit)
fun filter(configureFilter: Closure<*>) = filter { ConfigureUtil.configureSelf(configureFilter, this) }
fun filter(configureFilter: Closure<*>)
}
interface KotlinTargetTestRun<ExecutionSource : KotlinExecution.ExecutionSource> :
@@ -34,4 +33,4 @@ interface ClasspathTestRunSourceSupport {
* This overrides other [KotlinExecution.executionSource] selection options.
*/
fun setExecutionSourceFrom(classpath: FileCollection, testClassesDirs: FileCollection)
}
}
@@ -10,7 +10,6 @@ import org.gradle.api.Named
import org.gradle.api.NamedDomainObjectProvider
import org.gradle.api.Project
import org.gradle.api.file.SourceDirectorySet
import org.gradle.util.ConfigureUtil
import org.jetbrains.kotlin.gradle.plugin.HasKotlinDependencies
import org.jetbrains.kotlin.gradle.plugin.LanguageSettingsBuilder
import org.jetbrains.kotlin.project.model.KotlinModuleFragment
@@ -33,7 +32,7 @@ interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, Na
fun refines(other: NamedDomainObjectProvider<KotlinGradleFragment>)
override fun dependencies(configureClosure: Closure<Any?>) =
dependencies f@{ ConfigureUtil.configure(configureClosure, this@f) }
dependencies f@{ project.configure(this@f, configureClosure) }
companion object {
const val COMMON_FRAGMENT_NAME = "common"
@@ -52,4 +51,4 @@ interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, Na
}
val KotlinGradleFragment.refinesClosure: Set<KotlinGradleFragment>
get() = (this as KotlinModuleFragment).refinesClosure.mapTo(mutableSetOf()) { it as KotlinGradleFragment }
get() = (this as KotlinModuleFragment).refinesClosure.mapTo(mutableSetOf()) { it as KotlinGradleFragment }
@@ -23,7 +23,7 @@ import java.io.File
class DefaultKotlinDependencyHandler(
val parent: HasKotlinDependencies,
val project: Project
override val project: Project
) : KotlinDependencyHandler {
override fun api(dependencyNotation: Any): Dependency? =
addDependencyByAnyNotation(parent.apiConfigurationName, dependencyNotation)
@@ -5,6 +5,7 @@
package org.jetbrains.kotlin.gradle.targets.js
import groovy.lang.Closure
import org.jetbrains.kotlin.gradle.execution.KotlinAggregateExecutionSource
import org.jetbrains.kotlin.gradle.plugin.CompilationExecutionSource
import org.jetbrains.kotlin.gradle.plugin.CompilationExecutionSourceSupport
@@ -82,4 +83,6 @@ open class KotlinJsReportAggregatingTestRun(
target.whenBrowserConfigured { doConfigureInChildren(this) }
target.whenNodejsConfigured { doConfigureInChildren(this) }
}
override fun filter(configureFilter: Closure<*>) = filter { target.project.configure(this, configureFilter) }
}
@@ -40,6 +40,8 @@ abstract class KotlinTaskTestRun<S : ExecutionSource, T : AbstractTestTask>(
override fun filter(configureFilter: TestFilter.() -> Unit) {
executionTask.configure { task -> configureFilter(task.filter) }
}
override fun filter(configureFilter: Closure<*>) = filter { target.project.configure(this, configureFilter) }
}
internal val KotlinTargetTestRun<*>.testTaskName: String