[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.targets.js.KotlinJsTarget
|
||||
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 java.util.concurrent.Callable
|
||||
import kotlin.reflect.KMutableProperty1
|
||||
@@ -325,10 +327,10 @@ abstract class AbstractKotlinTargetConfigurator<KotlinTargetType : KotlinTarget>
|
||||
}
|
||||
|
||||
internal val KotlinCompilation<*>.deprecatedCompileConfigurationName: String
|
||||
get() = disambiguateName("compile")
|
||||
get() = disambiguateName(COMPILE)
|
||||
|
||||
internal val KotlinCompilationToRunnableFiles<*>.deprecatedRuntimeConfigurationName: String
|
||||
get() = disambiguateName("runtime")
|
||||
get() = disambiguateName(RUNTIME)
|
||||
|
||||
internal val KotlinTarget.testTaskName: String
|
||||
get() = lowerCamelCaseName(targetName, AbstractKotlinTargetConfigurator.testTaskNameSuffix)
|
||||
|
||||
+27
-26
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
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.lowerCamelCaseName
|
||||
import java.io.File
|
||||
import org.jetbrains.kotlin.gradle.utils.*
|
||||
import java.util.*
|
||||
import java.util.concurrent.Callable
|
||||
|
||||
@@ -182,16 +183,16 @@ abstract class AbstractKotlinCompilation<T : KotlinCommonOptions>(
|
||||
override lateinit var compileDependencyFiles: FileCollection
|
||||
|
||||
override val apiConfigurationName: String
|
||||
get() = disambiguateName("api")
|
||||
get() = disambiguateName(API)
|
||||
|
||||
override val implementationConfigurationName: String
|
||||
get() = disambiguateName("implementation")
|
||||
get() = disambiguateName(IMPLEMENTATION)
|
||||
|
||||
override val compileOnlyConfigurationName: String
|
||||
get() = disambiguateName("compileOnly")
|
||||
get() = disambiguateName(COMPILE_ONLY)
|
||||
|
||||
override val runtimeOnlyConfigurationName: String
|
||||
get() = disambiguateName("runtimeOnly")
|
||||
get() = disambiguateName(RUNTIME_ONLY)
|
||||
|
||||
override fun dependencies(configure: KotlinDependencyHandler.() -> Unit): Unit =
|
||||
DefaultKotlinDependencyHandler(this, target.project).run(configure)
|
||||
@@ -255,24 +256,24 @@ abstract class AbstractKotlinCompilation<T : KotlinCommonOptions>(
|
||||
get() = Collections.unmodifiableList(_associateWith.toList())
|
||||
}
|
||||
|
||||
internal val KotlinCompilation<*>.ownModuleName: String
|
||||
get() {
|
||||
val project = target.project
|
||||
val baseName = project.convention.findPlugin(BasePluginConvention::class.java)?.archivesBaseName
|
||||
?: project.name
|
||||
val suffix = if (compilationName == KotlinCompilation.MAIN_COMPILATION_NAME) "" else "_$compilationName"
|
||||
return filterModuleName("$baseName$suffix")
|
||||
}
|
||||
internal val KotlinCompilation<*>.ownModuleName: String
|
||||
get() {
|
||||
val project = target.project
|
||||
val baseName = project.convention.findPlugin(BasePluginConvention::class.java)?.archivesBaseName
|
||||
?: project.name
|
||||
val suffix = if (compilationName == KotlinCompilation.MAIN_COMPILATION_NAME) "" else "_$compilationName"
|
||||
return filterModuleName("$baseName$suffix")
|
||||
}
|
||||
|
||||
internal val KotlinCompilation<*>.associateWithTransitiveClosure: Iterable<KotlinCompilation<*>>
|
||||
get() = mutableSetOf<KotlinCompilation<*>>().apply {
|
||||
fun visit(other: KotlinCompilation<*>) {
|
||||
if (add(other)) {
|
||||
other.associateWith.forEach(::visit)
|
||||
}
|
||||
}
|
||||
associateWith.forEach(::visit)
|
||||
}
|
||||
internal val KotlinCompilation<*>.associateWithTransitiveClosure: Iterable<KotlinCompilation<*>>
|
||||
get() = mutableSetOf<KotlinCompilation<*>>().apply {
|
||||
fun visit(other: KotlinCompilation<*>) {
|
||||
if (add(other)) {
|
||||
other.associateWith.forEach(::visit)
|
||||
}
|
||||
}
|
||||
associateWith.forEach(::visit)
|
||||
}
|
||||
|
||||
abstract class AbstractKotlinCompilationToRunnableFiles<T : KotlinCommonOptions>(
|
||||
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 {
|
||||
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.KotlinSourceSet
|
||||
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.KotlinProjectStructureMetadata
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.MetadataDependencyResolution
|
||||
import org.jetbrains.kotlin.gradle.utils.isGradleVersionAtLeast
|
||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
||||
import org.jetbrains.kotlin.gradle.utils.*
|
||||
import java.io.File
|
||||
import java.lang.reflect.Constructor
|
||||
import java.util.*
|
||||
@@ -34,16 +34,16 @@ class DefaultKotlinSourceSet(
|
||||
) : KotlinSourceSet {
|
||||
|
||||
override val apiConfigurationName: String
|
||||
get() = disambiguateName("api")
|
||||
get() = disambiguateName(API)
|
||||
|
||||
override val implementationConfigurationName: String
|
||||
get() = disambiguateName("implementation")
|
||||
get() = disambiguateName(IMPLEMENTATION)
|
||||
|
||||
override val compileOnlyConfigurationName: String
|
||||
get() = disambiguateName("compileOnly")
|
||||
get() = disambiguateName(COMPILE_ONLY)
|
||||
|
||||
override val runtimeOnlyConfigurationName: String
|
||||
get() = disambiguateName("runtimeOnly")
|
||||
get() = disambiguateName(RUNTIME_ONLY)
|
||||
|
||||
override val apiMetadataConfigurationName: String
|
||||
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.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||
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) {
|
||||
API_SCOPE("api"),
|
||||
IMPLEMENTATION_SCOPE("implementation"),
|
||||
COMPILE_ONLY_SCOPE("compileOnly"),
|
||||
RUNTIME_ONLY_SCOPE("runtimeOnly")
|
||||
API_SCOPE(API),
|
||||
IMPLEMENTATION_SCOPE(IMPLEMENTATION),
|
||||
COMPILE_ONLY_SCOPE(COMPILE_ONLY),
|
||||
RUNTIME_ONLY_SCOPE(RUNTIME_ONLY)
|
||||
}
|
||||
|
||||
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.initialization.BuildRequestMetaData
|
||||
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.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.lang.management.ManagementFactory
|
||||
import javax.management.MBeanServer
|
||||
@@ -219,7 +226,8 @@ internal class DefaultKotlinBuildStatsService internal constructor(
|
||||
StringMetrics.KOTLIN_REFLECT_VERSION,
|
||||
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,
|
||||
dependency.version ?: "0.0.0"
|
||||
)
|
||||
@@ -269,19 +277,19 @@ internal class DefaultKotlinBuildStatsService internal constructor(
|
||||
}
|
||||
}
|
||||
}
|
||||
"api" -> {
|
||||
API -> {
|
||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_API_COUNT, 1)
|
||||
reportLibrariesVersions(dependencies)
|
||||
}
|
||||
"implementation" -> {
|
||||
IMPLEMENTATION -> {
|
||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_IMPLEMENTATION_COUNT, 1)
|
||||
reportLibrariesVersions(dependencies)
|
||||
}
|
||||
"compile" -> {
|
||||
COMPILE -> {
|
||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_COMPILE_COUNT, 1)
|
||||
reportLibrariesVersions(dependencies)
|
||||
}
|
||||
"runtime" -> {
|
||||
RUNTIME -> {
|
||||
sessionLogger.report(NumericalMetrics.CONFIGURATION_RUNTIME_COUNT, 1)
|
||||
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.npm.PackageJson
|
||||
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
|
||||
import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
||||
import org.jetbrains.kotlin.gradle.utils.*
|
||||
|
||||
open class KotlinJsCompilation(
|
||||
target: KotlinTarget,
|
||||
@@ -35,16 +35,16 @@ open class KotlinJsCompilation(
|
||||
}
|
||||
|
||||
override val apiConfigurationName: String
|
||||
get() = disambiguateNameInPlatform("api")
|
||||
get() = disambiguateNameInPlatform(API)
|
||||
|
||||
override val implementationConfigurationName: String
|
||||
get() = disambiguateNameInPlatform("implementation")
|
||||
get() = disambiguateNameInPlatform(IMPLEMENTATION)
|
||||
|
||||
override val compileOnlyConfigurationName: String
|
||||
get() = disambiguateNameInPlatform("compileOnly")
|
||||
get() = disambiguateNameInPlatform(COMPILE_ONLY)
|
||||
|
||||
override val runtimeOnlyConfigurationName: String
|
||||
get() = disambiguateNameInPlatform("runtimeOnly")
|
||||
get() = disambiguateNameInPlatform(RUNTIME_ONLY)
|
||||
|
||||
protected open val disambiguationClassifierInPlatform: String?
|
||||
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