Remove ModuleResult.Missing from commonization results

This result seems to not be used

^KT-51026
This commit is contained in:
Timofey Solonin
2023-12-21 09:22:49 +01:00
committed by Space Team
parent b70c50cd1f
commit 59b8941c28
7 changed files with 19 additions and 41 deletions
@@ -7,7 +7,6 @@ package org.jetbrains.kotlin.commonizer
import org.jetbrains.kotlin.commonizer.konan.NativeSensitiveManifestData
import org.jetbrains.kotlin.library.SerializedMetadata
import java.io.File
internal fun buildResultsConsumer(init: ResultsConsumerBuilder.() -> Unit): ResultsConsumer {
return ResultsConsumerBuilder().apply(init).build()
@@ -16,17 +15,9 @@ internal fun buildResultsConsumer(init: ResultsConsumerBuilder.() -> Unit): Resu
interface ResultsConsumer {
enum class Status { NOTHING_TO_DO, DONE }
sealed class ModuleResult {
abstract val libraryName: String
class Missing(val originalLocation: File) : ModuleResult() {
override val libraryName: String get() = originalLocation.name
}
class Commonized(
override val libraryName: String, val metadata: SerializedMetadata, val manifest: NativeSensitiveManifestData
) : ModuleResult()
}
class ModuleResult(
val libraryName: String, val metadata: SerializedMetadata, val manifest: NativeSensitiveManifestData
)
/**
* Consume a single [ModuleResult] for the specified [CommonizerTarget].
@@ -94,7 +94,7 @@ internal fun serializeTarget(
val manifestData = parameters.manifestProvider[outputTarget].buildManifest(libraryName)
parameters.resultsConsumer.consume(
parameters, outputTarget,
ResultsConsumer.ModuleResult.Commonized(libraryName, serializedMetadata, manifestData)
ResultsConsumer.ModuleResult(libraryName, serializedMetadata, manifestData)
)
}
parameters.resultsConsumer.targetConsumed(parameters, outputTarget)
@@ -5,10 +5,7 @@
package org.jetbrains.kotlin.commonizer.konan
import org.jetbrains.kotlin.commonizer.CommonizerOutputFileLayout
import org.jetbrains.kotlin.commonizer.CommonizerParameters
import org.jetbrains.kotlin.commonizer.CommonizerTarget
import org.jetbrains.kotlin.commonizer.ResultsConsumer
import org.jetbrains.kotlin.commonizer.*
import org.jetbrains.kotlin.library.SerializedMetadata
import org.jetbrains.kotlin.library.impl.BaseWriterImpl
import org.jetbrains.kotlin.library.impl.BuiltInsPlatform
@@ -20,20 +17,15 @@ internal class ModuleSerializer(
private val destination: File,
) : ResultsConsumer {
override fun consume(parameters: CommonizerParameters, target: CommonizerTarget, moduleResult: ResultsConsumer.ModuleResult) {
val librariesDestination = CommonizerOutputFileLayout.resolveCommonizedDirectory(destination, target)
when (moduleResult) {
is ResultsConsumer.ModuleResult.Commonized -> {
val libraryDestination = librariesDestination.resolve(moduleResult.fileSystemCompatibleLibraryName)
writeLibrary(moduleResult.metadata, moduleResult.manifest, libraryDestination)
}
is ResultsConsumer.ModuleResult.Missing -> {
val missingModuleSourceLocation = moduleResult.originalLocation
val missingModuleDestinationLocation = librariesDestination.resolve(moduleResult.fileSystemCompatibleLibraryName)
if (!missingModuleDestinationLocation.exists()) {
missingModuleSourceLocation.copyRecursively(librariesDestination.resolve(moduleResult.fileSystemCompatibleLibraryName))
}
}
}
val librariesDestination = CommonizerOutputFileLayout.resolveCommonizedDirectory(
destination,
target,
)
writeLibrary(
moduleResult.metadata,
moduleResult.manifest,
librariesDestination.resolve(moduleResult.fileSystemCompatibleLibraryName)
)
}
}
@@ -77,8 +77,7 @@ abstract class AbstractCommonizationFromSourcesTest : KtUsefulTestCase() {
assertEquals(sharedTarget, results.sharedTarget)
val sharedModuleAsExpected: SerializedMetadata = analyzedModules.commonizedModules.getValue(sharedTarget)
val sharedModuleByCommonizer: SerializedMetadata =
(results.modulesByTargets.getValue(sharedTarget).single() as ModuleResult.Commonized).metadata
val sharedModuleByCommonizer: SerializedMetadata = results.modulesByTargets.getValue(sharedTarget).single().metadata
assertModulesAreEqual(sharedModuleAsExpected, sharedModuleByCommonizer, sharedTarget)
}
@@ -9,7 +9,7 @@ import org.intellij.lang.annotations.Language
import org.jetbrains.kotlin.builtins.DefaultBuiltIns
import org.jetbrains.kotlin.commonizer.AbstractInlineSourcesCommonizationTest.DependencyAwareInlineSourceTestFactory
import org.jetbrains.kotlin.commonizer.AbstractInlineSourcesCommonizationTest.Parameters
import org.jetbrains.kotlin.commonizer.ResultsConsumer.ModuleResult.Commonized
import org.jetbrains.kotlin.commonizer.ResultsConsumer.ModuleResult
import org.jetbrains.kotlin.commonizer.konan.NativeManifestDataProvider
import org.jetbrains.kotlin.commonizer.utils.*
import kotlin.test.assertIs
@@ -226,7 +226,7 @@ fun HierarchicalCommonizationResult.assertCommonized(
val module = getTarget(target).firstOrNull { moduleResult -> moduleResult.libraryName == referenceModule.name }
?: fail("Missing ${referenceModule.name} in target $target")
val commonizedModule = assertIs<Commonized>(module, "Expected ${module.libraryName} to be 'Commonized'")
val commonizedModule = assertIs<ResultsConsumer.ModuleResult>(module, "Expected ${module.libraryName} to be 'Commonized'")
assertModulesAreEqual(
inlineSourceTest.createMetadata(referenceModule), commonizedModule.metadata, target
@@ -247,7 +247,7 @@ fun HierarchicalCommonizationResult.assertCommonized(
moduleBuilder: InlineSourceBuilder.ModuleBuilder.() -> Unit
) = assertCommonized(parseCommonizerTarget(target), moduleBuilder)
fun Collection<ResultsConsumer.ModuleResult>.assertSingleCommonizedModule(): Commonized {
fun Collection<ResultsConsumer.ModuleResult>.assertSingleCommonizedModule(): ResultsConsumer.ModuleResult {
kotlin.test.assertEquals(1, size, "Expected exactly one module. Found: ${this.map { it.libraryName }}")
return assertIs(single(), "Expected single module to be 'Commonized'")
}
@@ -135,10 +135,7 @@ class CommonizerFacadeTest {
val actualMissingModuleNames = mutableSetOf<String>()
actualModuleResults.forEach { moduleResult ->
when (moduleResult) {
is ModuleResult.Commonized -> actualCommonizedModuleNames += moduleResult.libraryName
is ModuleResult.Missing -> actualMissingModuleNames += moduleResult.libraryName
}
actualCommonizedModuleNames += moduleResult.libraryName
}
assertEquals(expectedCommonizedModuleNames.size + expectedMissingModuleNames.size, actualModuleResults.size)
@@ -6,7 +6,6 @@
package org.jetbrains.kotlin.commonizer.hierarchical
import org.jetbrains.kotlin.commonizer.AbstractInlineSourcesCommonizationTest
import org.jetbrains.kotlin.commonizer.ResultsConsumer.ModuleResult.Missing
import org.jetbrains.kotlin.commonizer.ResultsConsumer.Status
import org.jetbrains.kotlin.commonizer.assertCommonized
import org.jetbrains.kotlin.commonizer.parseCommonizerTarget