[Gradle] Migrate errors collector to new persistent storage
^KT-58223 In Progress
This commit is contained in:
committed by
Space Team
parent
cf44bff164
commit
3d94679db4
+1
-1
@@ -168,7 +168,7 @@ abstract class AbstractKotlinCompile<T : CommonCompilerArguments> @Inject constr
|
||||
@get:Internal
|
||||
protected val gradleCompileTaskProvider: Provider<GradleCompileTaskProvider> = objectFactory
|
||||
.property(
|
||||
objectFactory.newInstance<GradleCompileTaskProvider>(project.gradle, this, project, incrementalModuleInfoProvider)
|
||||
objectFactory.newInstance<GradleCompileTaskProvider>(this, project, incrementalModuleInfoProvider)
|
||||
)
|
||||
|
||||
@get:Internal
|
||||
|
||||
+5
-5
@@ -9,13 +9,13 @@ import org.gradle.api.Project
|
||||
import org.gradle.api.Task
|
||||
import org.gradle.api.file.DirectoryProperty
|
||||
import org.gradle.api.file.ProjectLayout
|
||||
import org.gradle.api.invocation.Gradle
|
||||
import org.gradle.api.logging.Logger
|
||||
import org.gradle.api.model.ObjectFactory
|
||||
import org.gradle.api.provider.Provider
|
||||
import org.gradle.api.tasks.Internal
|
||||
import org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner.Companion.normalizeForFlagFile
|
||||
import org.jetbrains.kotlin.gradle.incremental.IncrementalModuleInfoProvider
|
||||
import org.jetbrains.kotlin.gradle.utils.kotlinErrorsDir
|
||||
import org.jetbrains.kotlin.gradle.utils.property
|
||||
import org.jetbrains.kotlin.gradle.utils.kotlinSessionsDir
|
||||
import java.io.File
|
||||
@@ -24,7 +24,6 @@ import javax.inject.Inject
|
||||
abstract class GradleCompileTaskProvider @Inject constructor(
|
||||
objectFactory: ObjectFactory,
|
||||
projectLayout: ProjectLayout,
|
||||
gradle: Gradle,
|
||||
task: Task,
|
||||
project: Project,
|
||||
incrementalModuleInfoProvider: Provider<IncrementalModuleInfoProvider>
|
||||
@@ -56,8 +55,9 @@ abstract class GradleCompileTaskProvider @Inject constructor(
|
||||
.property(incrementalModuleInfoProvider)
|
||||
|
||||
@get:Internal
|
||||
val errorsFile: Provider<File?> = objectFactory
|
||||
val errorsFile: Provider<File> = objectFactory
|
||||
.property(
|
||||
gradle.rootProject.rootDir.resolve(".gradle/kotlin/errors/").also { it.mkdirs() }
|
||||
.resolve("errors-${System.currentTimeMillis()}.log"))
|
||||
project.kotlinErrorsDir.also { it.mkdirs() }
|
||||
.resolve("errors-${System.currentTimeMillis()}.log")
|
||||
)
|
||||
}
|
||||
+4
@@ -16,6 +16,7 @@ private const val PROJECTS_CACHE_NAME_FULL = "$PROJECTS_CACHE_NAME-$PROJECTS_CAC
|
||||
|
||||
private const val SESSIONS_DIR_NAME = "sessions"
|
||||
private const val METADATA_DIR_NAME = "metadata"
|
||||
private const val ERRORS_DIR_NAME = "errors"
|
||||
|
||||
internal val Project.basePersistentDir
|
||||
get() = kotlinPropertiesProvider.kotlinUserHomeDir?.let { File(it) }
|
||||
@@ -27,6 +28,9 @@ internal val Project.kotlinSessionsDir
|
||||
internal val Project.kotlinMetadataDir
|
||||
get() = basePersistentDir.projectSpecificCache(rootDir).resolve(METADATA_DIR_NAME)
|
||||
|
||||
internal val Project.kotlinErrorsDir
|
||||
get() = basePersistentDir.projectSpecificCache(rootDir).resolve(ERRORS_DIR_NAME)
|
||||
|
||||
private val md5Digest by lazy { MessageDigest.getInstance("MD5") }
|
||||
|
||||
private fun File.absolutePathMd5Hash(): String = md5Digest.digest(absolutePath.toByteArray()).toHexString()
|
||||
|
||||
Reference in New Issue
Block a user