diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCompilationResults.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCompilationResults.kt index f6436383903..5cd4e8d48f0 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCompilationResults.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCompilationResults.kt @@ -7,7 +7,7 @@ import org.jetbrains.kotlin.daemon.common.LoopbackNetworkInterface import org.jetbrains.kotlin.daemon.common.SOCKET_ANY_FREE_PORT import org.jetbrains.kotlin.daemon.report.CompileIterationResult import org.jetbrains.kotlin.gradle.plugin.kotlinDebug -import org.jetbrains.kotlin.incremental.pathsAsStringRelativeTo +import org.jetbrains.kotlin.gradle.utils.pathsAsStringRelativeTo import java.io.Serializable import java.rmi.RemoteException import java.rmi.server.UnicastRemoteObject diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleKotlinCompilerRunner.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleKotlinCompilerRunner.kt index 028fa483bee..f4c8c4e5d50 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleKotlinCompilerRunner.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/compilerRunner/GradleKotlinCompilerRunner.kt @@ -34,6 +34,9 @@ import org.jetbrains.kotlin.daemon.client.CompileServiceSession import org.jetbrains.kotlin.daemon.common.* import org.jetbrains.kotlin.daemon.common.IncrementalModuleEntry import org.jetbrains.kotlin.daemon.common.IncrementalModuleInfo +import org.jetbrains.kotlin.gradle.incremental.GRADLE_CACHE_VERSION +import org.jetbrains.kotlin.gradle.incremental.GRADLE_CACHE_VERSION_FILE_NAME +import org.jetbrains.kotlin.gradle.utils.relativeToRoot import org.jetbrains.kotlin.gradle.plugin.kotlinDebug import org.jetbrains.kotlin.gradle.tasks.InspectClassesForMultiModuleIC import org.jetbrains.kotlin.gradle.tasks.KotlinCompile @@ -262,21 +265,21 @@ internal class GradleCompilerRunner(private val project: Project) : KotlinCompil val verbose = environment.compilerArgs.verbose val compilationOptions = IncrementalCompilationOptions( - areFileChangesKnown = knownChangedFiles != null, - modifiedFiles = knownChangedFiles?.modified, - deletedFiles = knownChangedFiles?.removed, - workingDir = environment.workingDir, - customCacheVersion = GRADLE_CACHE_VERSION, - customCacheVersionFileName = GRADLE_CACHE_VERSION_FILE_NAME, - reportCategories = reportCategories(verbose), - reportSeverity = reportSeverity(verbose), - requestedCompilationResults = arrayOf(CompilationResultCategory.IC_COMPILE_ITERATION.code), - compilerMode = CompilerMode.INCREMENTAL_COMPILER, - targetPlatform = targetPlatform, - usePreciseJavaTracking = environment.usePreciseJavaTracking, - localStateDirs = environment.localStateDirs, - multiModuleICSettings = environment.multiModuleICSettings, - modulesInfo = buildModulesInfo(project.gradle) + areFileChangesKnown = knownChangedFiles != null, + modifiedFiles = knownChangedFiles?.modified, + deletedFiles = knownChangedFiles?.removed, + workingDir = environment.workingDir, + customCacheVersion = GRADLE_CACHE_VERSION, + customCacheVersionFileName = GRADLE_CACHE_VERSION_FILE_NAME, + reportCategories = reportCategories(verbose), + reportSeverity = reportSeverity(verbose), + requestedCompilationResults = arrayOf(CompilationResultCategory.IC_COMPILE_ITERATION.code), + compilerMode = CompilerMode.INCREMENTAL_COMPILER, + targetPlatform = targetPlatform, + usePreciseJavaTracking = environment.usePreciseJavaTracking, + localStateDirs = environment.localStateDirs, + multiModuleICSettings = environment.multiModuleICSettings, + modulesInfo = buildModulesInfo(project.gradle) ) log.info("Options for KOTLIN DAEMON: $compilationOptions") diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/ChangedFiles.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/ChangedFiles.kt new file mode 100644 index 00000000000..51ffcf6d348 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/ChangedFiles.kt @@ -0,0 +1,23 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. 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.incremental + +import org.gradle.api.tasks.incremental.IncrementalTaskInputs +import org.jetbrains.kotlin.incremental.ChangedFiles +import java.io.File +import java.util.* + +internal fun ChangedFiles(taskInputs: IncrementalTaskInputs): ChangedFiles { + if (!taskInputs.isIncremental) return ChangedFiles.Unknown() + + val modified = ArrayList() + val removed = ArrayList() + + taskInputs.outOfDate { modified.add(it.file) } + taskInputs.removed { removed.add(it.file) } + + return ChangedFiles.Known(modified, removed) +} diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/GradleICReporter.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/GradleICReporter.kt similarity index 51% rename from libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/GradleICReporter.kt rename to libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/GradleICReporter.kt index 6b1ca6b109d..b464480b140 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/GradleICReporter.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/GradleICReporter.kt @@ -1,24 +1,15 @@ /* - * Copyright 2010-2016 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * Copyright 2010-2018 JetBrains s.r.o. 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.incremental +package org.jetbrains.kotlin.gradle.incremental import org.gradle.api.logging.Logging import org.jetbrains.kotlin.cli.common.ExitCode import org.jetbrains.kotlin.gradle.plugin.kotlinDebug +import org.jetbrains.kotlin.gradle.utils.pathsAsStringRelativeTo +import org.jetbrains.kotlin.incremental.ICReporter import java.io.File internal class GradleICReporter(private val projectRootFile: File) : ICReporter { @@ -29,7 +20,7 @@ internal class GradleICReporter(private val projectRootFile: File) : ICReporter } override fun pathsAsString(files: Iterable): String = - files.pathsAsStringRelativeTo(projectRootFile) + files.pathsAsStringRelativeTo(projectRootFile) override fun reportCompileIteration(sourceFiles: Collection, exitCode: ExitCode) { if (sourceFiles.any()) { diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/gradleCacheVersion.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/gradleCacheVersion.kt new file mode 100644 index 00000000000..1f2bd361d12 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/gradleCacheVersion.kt @@ -0,0 +1,21 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. 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.incremental + +import org.jetbrains.kotlin.incremental.CacheVersion +import org.jetbrains.kotlin.incremental.customCacheVersion +import java.io.File + +internal const val GRADLE_CACHE_VERSION = 4 +internal const val GRADLE_CACHE_VERSION_FILE_NAME = "gradle-format-version.txt" + +internal fun gradleCacheVersion(dataRoot: File, enabled: Boolean): CacheVersion = + customCacheVersion( + GRADLE_CACHE_VERSION, + GRADLE_CACHE_VERSION_FILE_NAME, + dataRoot, + enabled + ) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/jvmUtils.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/jvmUtils.kt similarity index 89% rename from libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/jvmUtils.kt rename to libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/jvmUtils.kt index 40a45fad75e..dcd54b9a940 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/jvmUtils.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/incremental/jvmUtils.kt @@ -1,4 +1,4 @@ -package org.jetbrains.kotlin.incremental +package org.jetbrains.kotlin.gradle.incremental import com.sun.xml.internal.messaging.saaj.util.ByteOutputStream import java.io.PrintStream diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptGenerateStubsTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptGenerateStubsTask.kt index c4ef3a6ce50..e8d4267bfc2 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptGenerateStubsTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptGenerateStubsTask.kt @@ -23,15 +23,13 @@ import org.gradle.api.tasks.* import org.gradle.api.tasks.incremental.IncrementalTaskInputs import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments import org.jetbrains.kotlin.gradle.plugin.kotlinDebug -import org.jetbrains.kotlin.gradle.plugin.kotlinWarn -import org.jetbrains.kotlin.gradle.tasks.CompilerPluginOptions import org.jetbrains.kotlin.gradle.tasks.FilteringSourceRootsContainer import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.jetbrains.kotlin.gradle.tasks.SourceRoots -import org.jetbrains.kotlin.incremental.ChangedFiles +import org.jetbrains.kotlin.gradle.incremental.ChangedFiles import org.jetbrains.kotlin.incremental.classpathAsList import org.jetbrains.kotlin.incremental.destinationAsFile -import org.jetbrains.kotlin.incremental.pathsAsStringRelativeTo +import org.jetbrains.kotlin.gradle.utils.pathsAsStringRelativeTo import java.io.File @CacheableTask diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt index 537e450f630..35726206c89 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt @@ -13,8 +13,8 @@ import org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner import org.jetbrains.kotlin.compilerRunner.OutputItemsCollectorImpl import org.jetbrains.kotlin.gradle.plugin.PLUGIN_CLASSPATH_CONFIGURATION_NAME import org.jetbrains.kotlin.gradle.tasks.* -import org.jetbrains.kotlin.incremental.isJavaFile -import org.jetbrains.kotlin.incremental.toSortedPathsArray +import org.jetbrains.kotlin.gradle.utils.isJavaFile +import org.jetbrains.kotlin.gradle.utils.toSortedPathsArray import java.io.File @CacheableTask diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinGradleBuildServices.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinGradleBuildServices.kt index 7ad5067d994..3ef3f05e4b1 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinGradleBuildServices.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinGradleBuildServices.kt @@ -27,7 +27,7 @@ import org.jetbrains.kotlin.compilerRunner.DELETED_SESSION_FILE_PREFIX import org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner import org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile import org.jetbrains.kotlin.gradle.utils.isWindows -import org.jetbrains.kotlin.incremental.relativeToRoot +import org.jetbrains.kotlin.gradle.utils.relativeToRoot import org.jetbrains.kotlin.utils.addToStdlib.sumByLong import java.lang.management.ManagementFactory diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt index 131233a85e2..dee586c546b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/KotlinCompileCommon.kt @@ -18,7 +18,6 @@ package org.jetbrains.kotlin.gradle.tasks import org.gradle.api.Project import org.gradle.api.tasks.CacheableTask -import org.gradle.api.tasks.compile.AbstractCompile import org.jetbrains.kotlin.cli.common.arguments.K2MetadataCompilerArguments import org.jetbrains.kotlin.compilerRunner.GradleCompilerEnvironment import org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/SourceRoots.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/SourceRoots.kt index 2a6655d4d2c..f86c99d5e63 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/SourceRoots.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/SourceRoots.kt @@ -5,8 +5,8 @@ import org.gradle.api.file.SourceDirectorySet import org.gradle.api.logging.Logger import com.intellij.openapi.util.io.FileUtil import org.jetbrains.kotlin.gradle.plugin.kotlinDebug -import org.jetbrains.kotlin.incremental.isJavaFile -import org.jetbrains.kotlin.incremental.isKotlinFile +import org.jetbrains.kotlin.gradle.utils.isJavaFile +import org.jetbrains.kotlin.gradle.utils.isKotlinFile import java.io.File import java.util.* diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt index 73f7aa0eeb8..568441d4a63 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt @@ -27,10 +27,14 @@ import org.jetbrains.kotlin.cli.common.messages.MessageCollector import org.jetbrains.kotlin.compilerRunner.* import org.jetbrains.kotlin.daemon.common.MultiModuleICSettings import org.jetbrains.kotlin.gradle.dsl.* +import org.jetbrains.kotlin.gradle.incremental.ChangedFiles +import org.jetbrains.kotlin.gradle.incremental.GradleICReporter +import org.jetbrains.kotlin.gradle.utils.pathsAsStringRelativeTo import org.jetbrains.kotlin.gradle.internal.CompilerArgumentAwareWithInput import org.jetbrains.kotlin.gradle.internal.prepareCompilerArguments import org.jetbrains.kotlin.gradle.plugin.* import org.jetbrains.kotlin.gradle.utils.ParsedGradleVersion +import org.jetbrains.kotlin.gradle.utils.toSortedPathsArray import org.jetbrains.kotlin.incremental.* import org.jetbrains.kotlin.utils.LibraryUtils import java.io.File diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/UpdateKotlinCachesTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/UpdateKotlinCachesTask.kt index ff963b660df..5aeee413e67 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/UpdateKotlinCachesTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/UpdateKotlinCachesTask.kt @@ -10,7 +10,7 @@ import org.gradle.api.file.FileCollection import org.gradle.api.tasks.* import org.gradle.jvm.tasks.Jar import org.jetbrains.kotlin.gradle.utils.inputsCompatible -import org.jetbrains.kotlin.incremental.isClassFile +import org.jetbrains.kotlin.gradle.utils.isClassFile import java.io.File internal open class InspectClassesForMultiModuleIC : DefaultTask() { diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/utils/fileUtils.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/utils/fileUtils.kt new file mode 100644 index 00000000000..1211f707e92 --- /dev/null +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/utils/fileUtils.kt @@ -0,0 +1,34 @@ +/* + * Copyright 2010-2018 JetBrains s.r.o. 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 + +import org.gradle.api.Project +import java.io.File +import java.util.* + +internal fun File.isJavaFile() = + extension.equals("java", ignoreCase = true) + +internal fun File.isKotlinFile(): Boolean = + extension.let { + "kt".equals(it, ignoreCase = true) || + "kts".equals(it, ignoreCase = true) + } + +internal fun File.isClassFile(): Boolean = + extension.equals("class", ignoreCase = true) + +internal fun File.relativeOrCanonical(base: File): String = + relativeToOrNull(base)?.path ?: canonicalPath + +internal fun Iterable.pathsAsStringRelativeTo(base: File): String = + map { it.relativeOrCanonical(base) }.sorted().joinToString() + +internal fun File.relativeToRoot(project: Project): String = + relativeOrCanonical(project.rootProject.rootDir) + +internal fun Iterable.toSortedPathsArray(): Array = + map { it.canonicalPath }.toTypedArray().also { Arrays.sort(it) } \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/ChangedFiles.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/ChangedFiles.kt deleted file mode 100644 index 835876b04bf..00000000000 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/ChangedFiles.kt +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright 2010-2016 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.kotlin.incremental - -import org.gradle.api.tasks.incremental.IncrementalTaskInputs -import java.io.File -import java.util.* - -internal fun ChangedFiles(taskInputs: IncrementalTaskInputs): ChangedFiles { - if (!taskInputs.isIncremental) return ChangedFiles.Unknown() - - val modified = ArrayList() - val removed = ArrayList() - - taskInputs.outOfDate { modified.add(it.file) } - taskInputs.removed { removed.add(it.file) } - - return ChangedFiles.Known(modified, removed) -} diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/fileUtils.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/fileUtils.kt deleted file mode 100644 index 532ec6d2d42..00000000000 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/fileUtils.kt +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright 2010-2016 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.kotlin.incremental - -import org.gradle.api.Project -import java.io.File -import java.util.* - -// todo: Move all files under org.jetbrains.kotlin.gradle package to avoid class clash (KT-18621, KT-20516) - -internal fun File.isJavaFile() = - extension.equals("java", ignoreCase = true) - -internal fun File.isKotlinFile(): Boolean = - extension.let { - "kt".equals(it, ignoreCase = true) || - "kts".equals(it, ignoreCase = true) - } - -internal fun File.isClassFile(): Boolean = - extension.equals("class", ignoreCase = true) - -internal fun listClassFiles(path: String): Sequence = - File(path).walk().filter { it.isFile && it.isClassFile() } - -internal fun File.relativeOrCanonical(base: File): String = - relativeToOrNull(base)?.path ?: canonicalPath - -internal fun Iterable.pathsAsStringRelativeTo(base: File): String = - map { it.relativeOrCanonical(base) }.sorted().joinToString() - -internal fun File.relativeToRoot(project: Project): String = - relativeOrCanonical(project.rootProject.rootDir) - -internal fun Iterable.toSortedPathsArray(): Array = - map { it.canonicalPath }.toTypedArray().also { Arrays.sort(it) } \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/gradleCacheVersion.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/gradleCacheVersion.kt deleted file mode 100644 index 3fe6e96383f..00000000000 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/incremental/gradleCacheVersion.kt +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Copyright 2010-2016 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.kotlin.incremental - -import java.io.File - -internal const val GRADLE_CACHE_VERSION = 4 -internal const val GRADLE_CACHE_VERSION_FILE_NAME = "gradle-format-version.txt" - -internal fun gradleCacheVersion(dataRoot: File, enabled: Boolean): CacheVersion = - customCacheVersion(GRADLE_CACHE_VERSION, GRADLE_CACHE_VERSION_FILE_NAME, dataRoot, enabled)