[Gradle, JS] Use default configuration names only once in constants
This commit is contained in:
+4
-2
@@ -31,6 +31,8 @@ import org.jetbrains.kotlin.gradle.plugin.JsCompilerType
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.*
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.COMPILE
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.RUNTIME
|
||||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
||||||
import java.util.concurrent.Callable
|
import java.util.concurrent.Callable
|
||||||
import kotlin.reflect.KMutableProperty1
|
import kotlin.reflect.KMutableProperty1
|
||||||
@@ -325,10 +327,10 @@ abstract class AbstractKotlinTargetConfigurator<KotlinTargetType : KotlinTarget>
|
|||||||
}
|
}
|
||||||
|
|
||||||
internal val KotlinCompilation<*>.deprecatedCompileConfigurationName: String
|
internal val KotlinCompilation<*>.deprecatedCompileConfigurationName: String
|
||||||
get() = disambiguateName("compile")
|
get() = disambiguateName(COMPILE)
|
||||||
|
|
||||||
internal val KotlinCompilationToRunnableFiles<*>.deprecatedRuntimeConfigurationName: String
|
internal val KotlinCompilationToRunnableFiles<*>.deprecatedRuntimeConfigurationName: String
|
||||||
get() = disambiguateName("runtime")
|
get() = disambiguateName(RUNTIME)
|
||||||
|
|
||||||
internal val KotlinTarget.testTaskName: String
|
internal val KotlinTarget.testTaskName: String
|
||||||
get() = lowerCamelCaseName(targetName, AbstractKotlinTargetConfigurator.testTaskNameSuffix)
|
get() = lowerCamelCaseName(targetName, AbstractKotlinTargetConfigurator.testTaskNameSuffix)
|
||||||
|
|||||||
+27
-26
@@ -1,7 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2010-2018 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
* Copyright 2010-2018 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
@@ -29,6 +29,7 @@ import org.jetbrains.kotlin.gradle.utils.addExtendsFromRelation
|
|||||||
import org.jetbrains.kotlin.gradle.utils.archivePathCompatible
|
import org.jetbrains.kotlin.gradle.utils.archivePathCompatible
|
||||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.*
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import java.util.concurrent.Callable
|
import java.util.concurrent.Callable
|
||||||
|
|
||||||
@@ -182,16 +183,16 @@ abstract class AbstractKotlinCompilation<T : KotlinCommonOptions>(
|
|||||||
override lateinit var compileDependencyFiles: FileCollection
|
override lateinit var compileDependencyFiles: FileCollection
|
||||||
|
|
||||||
override val apiConfigurationName: String
|
override val apiConfigurationName: String
|
||||||
get() = disambiguateName("api")
|
get() = disambiguateName(API)
|
||||||
|
|
||||||
override val implementationConfigurationName: String
|
override val implementationConfigurationName: String
|
||||||
get() = disambiguateName("implementation")
|
get() = disambiguateName(IMPLEMENTATION)
|
||||||
|
|
||||||
override val compileOnlyConfigurationName: String
|
override val compileOnlyConfigurationName: String
|
||||||
get() = disambiguateName("compileOnly")
|
get() = disambiguateName(COMPILE_ONLY)
|
||||||
|
|
||||||
override val runtimeOnlyConfigurationName: String
|
override val runtimeOnlyConfigurationName: String
|
||||||
get() = disambiguateName("runtimeOnly")
|
get() = disambiguateName(RUNTIME_ONLY)
|
||||||
|
|
||||||
override fun dependencies(configure: KotlinDependencyHandler.() -> Unit): Unit =
|
override fun dependencies(configure: KotlinDependencyHandler.() -> Unit): Unit =
|
||||||
DefaultKotlinDependencyHandler(this, target.project).run(configure)
|
DefaultKotlinDependencyHandler(this, target.project).run(configure)
|
||||||
@@ -255,24 +256,24 @@ abstract class AbstractKotlinCompilation<T : KotlinCommonOptions>(
|
|||||||
get() = Collections.unmodifiableList(_associateWith.toList())
|
get() = Collections.unmodifiableList(_associateWith.toList())
|
||||||
}
|
}
|
||||||
|
|
||||||
internal val KotlinCompilation<*>.ownModuleName: String
|
internal val KotlinCompilation<*>.ownModuleName: String
|
||||||
get() {
|
get() {
|
||||||
val project = target.project
|
val project = target.project
|
||||||
val baseName = project.convention.findPlugin(BasePluginConvention::class.java)?.archivesBaseName
|
val baseName = project.convention.findPlugin(BasePluginConvention::class.java)?.archivesBaseName
|
||||||
?: project.name
|
?: project.name
|
||||||
val suffix = if (compilationName == KotlinCompilation.MAIN_COMPILATION_NAME) "" else "_$compilationName"
|
val suffix = if (compilationName == KotlinCompilation.MAIN_COMPILATION_NAME) "" else "_$compilationName"
|
||||||
return filterModuleName("$baseName$suffix")
|
return filterModuleName("$baseName$suffix")
|
||||||
}
|
}
|
||||||
|
|
||||||
internal val KotlinCompilation<*>.associateWithTransitiveClosure: Iterable<KotlinCompilation<*>>
|
internal val KotlinCompilation<*>.associateWithTransitiveClosure: Iterable<KotlinCompilation<*>>
|
||||||
get() = mutableSetOf<KotlinCompilation<*>>().apply {
|
get() = mutableSetOf<KotlinCompilation<*>>().apply {
|
||||||
fun visit(other: KotlinCompilation<*>) {
|
fun visit(other: KotlinCompilation<*>) {
|
||||||
if (add(other)) {
|
if (add(other)) {
|
||||||
other.associateWith.forEach(::visit)
|
other.associateWith.forEach(::visit)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
associateWith.forEach(::visit)
|
associateWith.forEach(::visit)
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class AbstractKotlinCompilationToRunnableFiles<T : KotlinCommonOptions>(
|
abstract class AbstractKotlinCompilationToRunnableFiles<T : KotlinCommonOptions>(
|
||||||
target: KotlinTarget,
|
target: KotlinTarget,
|
||||||
@@ -296,7 +297,7 @@ internal fun KotlinCompilation<*>.disambiguateName(simpleName: String): String {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private typealias CompilationsBySourceSet = Map<KotlinSourceSet, Set<KotlinCompilation<*>>>
|
private typealias CompilationsBySourceSet = Map<KotlinSourceSet, Set<KotlinCompilation<*>>>
|
||||||
|
|
||||||
internal object CompilationSourceSetUtil {
|
internal object CompilationSourceSetUtil {
|
||||||
private const val EXT_NAME = "kotlin.compilations.bySourceSets"
|
private const val EXT_NAME = "kotlin.compilations.bySourceSets"
|
||||||
|
|||||||
+7
-7
@@ -16,11 +16,11 @@ import org.jetbrains.kotlin.build.DEFAULT_KOTLIN_SOURCE_FILES_EXTENSIONS
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinDependencyHandler
|
import org.jetbrains.kotlin.gradle.plugin.KotlinDependencyHandler
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||||
import org.jetbrains.kotlin.gradle.plugin.LanguageSettingsBuilder
|
import org.jetbrains.kotlin.gradle.plugin.LanguageSettingsBuilder
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.DefaultKotlinDependencyHandler
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.GranularMetadataTransformation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.GranularMetadataTransformation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinProjectStructureMetadata
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.MetadataDependencyResolution
|
import org.jetbrains.kotlin.gradle.plugin.mpp.MetadataDependencyResolution
|
||||||
import org.jetbrains.kotlin.gradle.utils.isGradleVersionAtLeast
|
import org.jetbrains.kotlin.gradle.utils.*
|
||||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.lang.reflect.Constructor
|
import java.lang.reflect.Constructor
|
||||||
import java.util.*
|
import java.util.*
|
||||||
@@ -34,16 +34,16 @@ class DefaultKotlinSourceSet(
|
|||||||
) : KotlinSourceSet {
|
) : KotlinSourceSet {
|
||||||
|
|
||||||
override val apiConfigurationName: String
|
override val apiConfigurationName: String
|
||||||
get() = disambiguateName("api")
|
get() = disambiguateName(API)
|
||||||
|
|
||||||
override val implementationConfigurationName: String
|
override val implementationConfigurationName: String
|
||||||
get() = disambiguateName("implementation")
|
get() = disambiguateName(IMPLEMENTATION)
|
||||||
|
|
||||||
override val compileOnlyConfigurationName: String
|
override val compileOnlyConfigurationName: String
|
||||||
get() = disambiguateName("compileOnly")
|
get() = disambiguateName(COMPILE_ONLY)
|
||||||
|
|
||||||
override val runtimeOnlyConfigurationName: String
|
override val runtimeOnlyConfigurationName: String
|
||||||
get() = disambiguateName("runtimeOnly")
|
get() = disambiguateName(RUNTIME_ONLY)
|
||||||
|
|
||||||
override val apiMetadataConfigurationName: String
|
override val apiMetadataConfigurationName: String
|
||||||
get() = lowerCamelCaseName(apiConfigurationName, METADATA_CONFIGURATION_NAME_SUFFIX)
|
get() = lowerCamelCaseName(apiConfigurationName, METADATA_CONFIGURATION_NAME_SUFFIX)
|
||||||
|
|||||||
+8
-4
@@ -9,12 +9,16 @@ import org.gradle.api.Project
|
|||||||
import org.gradle.api.artifacts.Configuration
|
import org.gradle.api.artifacts.Configuration
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||||
import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope.*
|
import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope.*
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.API
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.COMPILE_ONLY
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.IMPLEMENTATION
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.RUNTIME_ONLY
|
||||||
|
|
||||||
internal enum class KotlinDependencyScope(val scopeName: String) {
|
internal enum class KotlinDependencyScope(val scopeName: String) {
|
||||||
API_SCOPE("api"),
|
API_SCOPE(API),
|
||||||
IMPLEMENTATION_SCOPE("implementation"),
|
IMPLEMENTATION_SCOPE(IMPLEMENTATION),
|
||||||
COMPILE_ONLY_SCOPE("compileOnly"),
|
COMPILE_ONLY_SCOPE(COMPILE_ONLY),
|
||||||
RUNTIME_ONLY_SCOPE("runtimeOnly")
|
RUNTIME_ONLY_SCOPE(RUNTIME_ONLY)
|
||||||
}
|
}
|
||||||
|
|
||||||
internal fun Project.sourceSetDependencyConfigurationByScope(sourceSet: KotlinSourceSet, scope: KotlinDependencyScope): Configuration =
|
internal fun Project.sourceSetDependencyConfigurationByScope(sourceSet: KotlinSourceSet, scope: KotlinDependencyScope): Configuration =
|
||||||
|
|||||||
+14
-6
@@ -13,9 +13,16 @@ import org.gradle.api.invocation.Gradle
|
|||||||
import org.gradle.api.logging.Logging
|
import org.gradle.api.logging.Logging
|
||||||
import org.gradle.initialization.BuildRequestMetaData
|
import org.gradle.initialization.BuildRequestMetaData
|
||||||
import org.gradle.invocation.DefaultGradle
|
import org.gradle.invocation.DefaultGradle
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.API
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.COMPILE
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.IMPLEMENTATION
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.RUNTIME
|
||||||
import org.jetbrains.kotlin.statistics.BuildSessionLogger
|
import org.jetbrains.kotlin.statistics.BuildSessionLogger
|
||||||
import org.jetbrains.kotlin.statistics.BuildSessionLogger.Companion.STATISTICS_FOLDER_NAME
|
import org.jetbrains.kotlin.statistics.BuildSessionLogger.Companion.STATISTICS_FOLDER_NAME
|
||||||
import org.jetbrains.kotlin.statistics.metrics.*
|
import org.jetbrains.kotlin.statistics.metrics.BooleanMetrics
|
||||||
|
import org.jetbrains.kotlin.statistics.metrics.IStatisticsValuesConsumer
|
||||||
|
import org.jetbrains.kotlin.statistics.metrics.NumericalMetrics
|
||||||
|
import org.jetbrains.kotlin.statistics.metrics.StringMetrics
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.lang.management.ManagementFactory
|
import java.lang.management.ManagementFactory
|
||||||
import javax.management.MBeanServer
|
import javax.management.MBeanServer
|
||||||
@@ -219,7 +226,8 @@ internal class DefaultKotlinBuildStatsService internal constructor(
|
|||||||
StringMetrics.KOTLIN_REFLECT_VERSION,
|
StringMetrics.KOTLIN_REFLECT_VERSION,
|
||||||
dependency.version ?: "0.0.0"
|
dependency.version ?: "0.0.0"
|
||||||
)
|
)
|
||||||
dependency.group == "org.jetbrains.kotlinx" && dependency.name.startsWith("kotlinx-serialization-runtime") -> sessionLogger.report(
|
dependency.group == "org.jetbrains.kotlinx" && dependency.name
|
||||||
|
.startsWith("kotlinx-serialization-runtime") -> sessionLogger.report(
|
||||||
StringMetrics.KOTLIN_SERIALIZATION_VERSION,
|
StringMetrics.KOTLIN_SERIALIZATION_VERSION,
|
||||||
dependency.version ?: "0.0.0"
|
dependency.version ?: "0.0.0"
|
||||||
)
|
)
|
||||||
@@ -269,19 +277,19 @@ internal class DefaultKotlinBuildStatsService internal constructor(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
"api" -> {
|
API -> {
|
||||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_API_COUNT, 1)
|
sessionLogger.report(NumericalMetrics.CONFIGURATION_API_COUNT, 1)
|
||||||
reportLibrariesVersions(dependencies)
|
reportLibrariesVersions(dependencies)
|
||||||
}
|
}
|
||||||
"implementation" -> {
|
IMPLEMENTATION -> {
|
||||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_IMPLEMENTATION_COUNT, 1)
|
sessionLogger.report(NumericalMetrics.CONFIGURATION_IMPLEMENTATION_COUNT, 1)
|
||||||
reportLibrariesVersions(dependencies)
|
reportLibrariesVersions(dependencies)
|
||||||
}
|
}
|
||||||
"compile" -> {
|
COMPILE -> {
|
||||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_COMPILE_COUNT, 1)
|
sessionLogger.report(NumericalMetrics.CONFIGURATION_COMPILE_COUNT, 1)
|
||||||
reportLibrariesVersions(dependencies)
|
reportLibrariesVersions(dependencies)
|
||||||
}
|
}
|
||||||
"runtime" -> {
|
RUNTIME -> {
|
||||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_RUNTIME_COUNT, 1)
|
sessionLogger.report(NumericalMetrics.CONFIGURATION_RUNTIME_COUNT, 1)
|
||||||
reportLibrariesVersions(dependencies)
|
reportLibrariesVersions(dependencies)
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-5
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
|||||||
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.npm.PackageJson
|
import org.jetbrains.kotlin.gradle.targets.js.npm.PackageJson
|
||||||
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
|
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
|
||||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
import org.jetbrains.kotlin.gradle.utils.*
|
||||||
|
|
||||||
open class KotlinJsCompilation(
|
open class KotlinJsCompilation(
|
||||||
target: KotlinTarget,
|
target: KotlinTarget,
|
||||||
@@ -35,16 +35,16 @@ open class KotlinJsCompilation(
|
|||||||
}
|
}
|
||||||
|
|
||||||
override val apiConfigurationName: String
|
override val apiConfigurationName: String
|
||||||
get() = disambiguateNameInPlatform("api")
|
get() = disambiguateNameInPlatform(API)
|
||||||
|
|
||||||
override val implementationConfigurationName: String
|
override val implementationConfigurationName: String
|
||||||
get() = disambiguateNameInPlatform("implementation")
|
get() = disambiguateNameInPlatform(IMPLEMENTATION)
|
||||||
|
|
||||||
override val compileOnlyConfigurationName: String
|
override val compileOnlyConfigurationName: String
|
||||||
get() = disambiguateNameInPlatform("compileOnly")
|
get() = disambiguateNameInPlatform(COMPILE_ONLY)
|
||||||
|
|
||||||
override val runtimeOnlyConfigurationName: String
|
override val runtimeOnlyConfigurationName: String
|
||||||
get() = disambiguateNameInPlatform("runtimeOnly")
|
get() = disambiguateNameInPlatform(RUNTIME_ONLY)
|
||||||
|
|
||||||
protected open val disambiguationClassifierInPlatform: String?
|
protected open val disambiguationClassifierInPlatform: String?
|
||||||
get() = (target as KotlinJsTarget).disambiguationClassifierInPlatform
|
get() = (target as KotlinJsTarget).disambiguationClassifierInPlatform
|
||||||
|
|||||||
+13
@@ -0,0 +1,13 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||||
|
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.jetbrains.kotlin.gradle.utils
|
||||||
|
|
||||||
|
const val COMPILE_ONLY = "compileOnly"
|
||||||
|
const val COMPILE = "compile"
|
||||||
|
const val IMPLEMENTATION = "implementation"
|
||||||
|
const val API = "api"
|
||||||
|
const val RUNTIME_ONLY = "runtimeOnly"
|
||||||
|
const val RUNTIME = "runtime"
|
||||||
Reference in New Issue
Block a user