[Gradle] Rename IdePlatformDependencyResolver to IdePlatformBinaryDependencyResolver

^KT-54948 Verification Pending
This commit is contained in:
Sebastian Sellmair
2022-11-15 11:45:16 +01:00
committed by Space Team
parent ee7989eb3b
commit 071395ef62
5 changed files with 30 additions and 29 deletions
@@ -9,8 +9,8 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
import org.jetbrains.kotlin.gradle.idea.serialize.IdeaKotlinExtrasSerializer
import org.jetbrains.kotlin.gradle.kpm.idea.kotlinDebugKey
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeDependsOnDependencyResolver
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformDependencyResolver
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformDependencyResolver
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformBinaryDependencyResolver
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformBinaryDependencyResolver
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeTransformedMetadataDependencyResolver
fun IdeMultiplatformImport(extension: KotlinMultiplatformExtension): IdeMultiplatformImport {
@@ -31,7 +31,7 @@ fun IdeMultiplatformImport(extension: KotlinMultiplatformExtension): IdeMultipla
)
registerDependencyResolver(
resolver = IdePlatformDependencyResolver(),
resolver = IdePlatformBinaryDependencyResolver(),
constraint = IdeMultiplatformImport.SourceSetConstraint.isPlatform,
phase = IdeMultiplatformImport.DependencyResolutionPhase.BinaryDependencyResolution,
level = IdeMultiplatformImport.DependencyResolutionLevel.Default
@@ -42,7 +42,7 @@ fun IdeMultiplatformImport(extension: KotlinMultiplatformExtension): IdeMultipla
This resolver will resolve dependencies visible to the source set from a 'jvm' perspective.
*/
registerDependencyResolver(
resolver = IdeJvmAndAndroidPlatformDependencyResolver(extension.project),
resolver = IdeJvmAndAndroidPlatformBinaryDependencyResolver(extension.project),
constraint = IdeMultiplatformImport.SourceSetConstraint.isJvmAndAndroid,
phase = IdeMultiplatformImport.DependencyResolutionPhase.BinaryDependencyResolution,
level = IdeMultiplatformImport.DependencyResolutionLevel.Default
@@ -20,17 +20,18 @@ import org.jetbrains.kotlin.gradle.utils.named
/**
* Resolves dependencies of jvm and Android source sets from the perspective jvm
*/
internal fun IdeJvmAndAndroidPlatformDependencyResolver(project: Project): IdeDependencyResolver = IdePlatformDependencyResolver(
binaryType = IdeaKotlinDependency.CLASSPATH_BINARY_TYPE,
artifactResolutionStrategy = IdePlatformDependencyResolver.ArtifactResolutionStrategy.PlatformLikeSourceSet(
setupPlatformResolutionAttributes = {
attributes.attribute(Usage.USAGE_ATTRIBUTE, project.usageByName(Usage.JAVA_API))
attributes.attribute(Category.CATEGORY_ATTRIBUTE, project.objects.named(Category.LIBRARY))
attributes.attribute(KotlinPlatformType.attribute, KotlinPlatformType.jvm)
attributes.attribute(
TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE,
project.objects.named(TargetJvmEnvironment.STANDARD_JVM)
)
},
internal fun IdeJvmAndAndroidPlatformBinaryDependencyResolver(project: Project): IdeDependencyResolver =
IdePlatformBinaryDependencyResolver(
binaryType = IdeaKotlinDependency.CLASSPATH_BINARY_TYPE,
artifactResolutionStrategy = IdePlatformBinaryDependencyResolver.ArtifactResolutionStrategy.PlatformLikeSourceSet(
setupPlatformResolutionAttributes = {
attributes.attribute(Usage.USAGE_ATTRIBUTE, project.usageByName(Usage.JAVA_API))
attributes.attribute(Category.CATEGORY_ATTRIBUTE, project.objects.named(Category.LIBRARY))
attributes.attribute(KotlinPlatformType.attribute, KotlinPlatformType.jvm)
attributes.attribute(
TargetJvmEnvironment.TARGET_JVM_ENVIRONMENT_ATTRIBUTE,
project.objects.named(TargetJvmEnvironment.STANDARD_JVM)
)
},
)
)
)
@@ -27,7 +27,7 @@ import org.jetbrains.kotlin.gradle.plugin.sources.*
import org.jetbrains.kotlin.gradle.targets.metadata.ALL_COMPILE_METADATA_CONFIGURATION_NAME
import org.jetbrains.kotlin.tooling.core.mutableExtrasOf
internal class IdePlatformDependencyResolver(
internal class IdePlatformBinaryDependencyResolver(
private val binaryType: String = IdeaKotlinDependency.CLASSPATH_BINARY_TYPE,
private val artifactResolutionStrategy: ArtifactResolutionStrategy = ArtifactResolutionStrategy.Compilation()
) : IdeDependencyResolver {
@@ -152,6 +152,6 @@ internal class IdePlatformDependencyResolver(
}
private companion object {
val logger = Logging.getLogger(IdePlatformDependencyResolver::class.java)
val logger = Logging.getLogger(IdePlatformBinaryDependencyResolver::class.java)
}
}
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.gradle.dsl.multiplatformExtension
import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.assertMatches
import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.binaryCoordinates
import org.jetbrains.kotlin.gradle.kpm.idea.mavenCentralCacheRedirector
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformDependencyResolver
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdeJvmAndAndroidPlatformBinaryDependencyResolver
import org.jetbrains.kotlin.gradle.utils.androidExtension
import kotlin.test.BeforeTest
import kotlin.test.Test
@@ -66,10 +66,10 @@ class IdeJvmAndAndroidPlatformDependencyResolverTest {
binaryCoordinates("org.jetbrains.kotlin:kotlin-stdlib-common:1.7.10")
)
IdeJvmAndAndroidPlatformDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidMain"))
IdeJvmAndAndroidPlatformBinaryDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidMain"))
.assertMatches(jvmAndAndroidDependencies)
IdeJvmAndAndroidPlatformDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidTest"))
IdeJvmAndAndroidPlatformBinaryDependencyResolver(project).resolve(kotlin.sourceSets.getByName("jvmAndAndroidTest"))
.assertMatches(jvmAndAndroidDependencies)
}
}
@@ -15,10 +15,10 @@ import org.jetbrains.kotlin.gradle.enableDependencyVerification
import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.assertMatches
import org.jetbrains.kotlin.gradle.idea.testFixtures.tcs.binaryCoordinates
import org.jetbrains.kotlin.gradle.kpm.idea.mavenCentralCacheRedirector
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformDependencyResolver
import org.jetbrains.kotlin.gradle.plugin.ide.dependencyResolvers.IdePlatformBinaryDependencyResolver
import kotlin.test.Test
class IdePlatformDependencyResolverTest {
class IdePlatformBinaryDependencyResolverTest {
@Test
fun `test - MVIKotlin - on jvm and linux platform source sets`() {
@@ -46,7 +46,7 @@ class IdePlatformDependencyResolverTest {
}
/* This resolver shall refuse to resolve for dependencies for metadata based dependencies */
IdePlatformDependencyResolver().resolve(commonMain).assertMatches()
IdePlatformBinaryDependencyResolver().resolve(commonMain).assertMatches()
val jvmDependencies = listOf(
binaryCoordinates("com.arkivanov.mvikotlin:mvikotlin-jvm:3.0.2"),
@@ -72,9 +72,9 @@ class IdePlatformDependencyResolverTest {
binaryCoordinates("com.arkivanov.essenty:utils-internal-linuxx64:0.4.2"),
)
IdePlatformDependencyResolver().resolve(jvmMain).assertMatches(jvmDependencies)
IdePlatformDependencyResolver().resolve(jvmTest).assertMatches(jvmDependencies)
IdePlatformDependencyResolver().resolve(linuxX64Main).assertMatches(linuxDependencies)
IdePlatformDependencyResolver().resolve(linuxX64Test).assertMatches(linuxDependencies)
IdePlatformBinaryDependencyResolver().resolve(jvmMain).assertMatches(jvmDependencies)
IdePlatformBinaryDependencyResolver().resolve(jvmTest).assertMatches(jvmDependencies)
IdePlatformBinaryDependencyResolver().resolve(linuxX64Main).assertMatches(linuxDependencies)
IdePlatformBinaryDependencyResolver().resolve(linuxX64Test).assertMatches(linuxDependencies)
}
}