From a9df9b22e97c9f6c9f96b61609890ad996ed13d9 Mon Sep 17 00:00:00 2001 From: Andrey Uskov Date: Wed, 9 Jan 2019 13:27:21 +0300 Subject: [PATCH] Fix scope detection for MPP projects #KT-27718 Fixed #KT-28626 Fixed --- gradle/versions.properties | 2 +- gradle/versions.properties.cidr183 | 2 +- .../kotlin/config/KotlinResourceRootType.kt | 4 ++- .../config/KotlinResourceRootType.kt.182 | 25 +++++++++++++++++ .../config/KotlinResourceRootType.kt.as34 | 25 +++++++++++++++++ .../kotlin/config/KotlinSourceRootType.kt | 2 ++ .../kotlin/config/KotlinSourceRootType.kt.182 | 28 +++++++++++++++++++ .../config/KotlinSourceRootType.kt.as34 | 28 +++++++++++++++++++ 8 files changed, 113 insertions(+), 3 deletions(-) create mode 100644 idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt.182 create mode 100644 idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt.as34 create mode 100644 idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt.182 create mode 100644 idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt.as34 diff --git a/gradle/versions.properties b/gradle/versions.properties index d446a6c5559..fd0f1443e05 100644 --- a/gradle/versions.properties +++ b/gradle/versions.properties @@ -1,4 +1,4 @@ -versions.intellijSdk=183.4886.37 +versions.intellijSdk=183.5153.4 versions.androidBuildTools=r23.0.1 versions.idea.NodeJS=181.3494.12 versions.jar.guava=25.1-jre diff --git a/gradle/versions.properties.cidr183 b/gradle/versions.properties.cidr183 index 85c013b7f69..4349b5f13f7 100644 --- a/gradle/versions.properties.cidr183 +++ b/gradle/versions.properties.cidr183 @@ -1,4 +1,4 @@ -versions.intellijSdk=183.4588.61 +versions.intellijSdk=183.5153.4 versions.androidBuildTools=r23.0.1 versions.idea.NodeJS=181.3494.12 # TODO: select appropriate 183 base build for AppCode diff --git a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt index 0a2bc5272df..b9172990487 100644 --- a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt +++ b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt @@ -12,7 +12,7 @@ import org.jetbrains.jps.model.java.JpsJavaExtensionService import org.jetbrains.jps.model.module.JpsModuleSourceRootType sealed class KotlinResourceRootType(val isTest: Boolean) : JpsElementTypeBase(), - JpsModuleSourceRootType, KotlinRootType { + JpsModuleSourceRootType, KotlinRootType { object Resource : KotlinResourceRootType(false) object TestResource : KotlinResourceRootType(true) @@ -21,5 +21,7 @@ sealed class KotlinResourceRootType(val isTest: Boolean) : JpsElementTypeBase(), + JpsModuleSourceRootType, KotlinRootType { + object Resource : KotlinResourceRootType(false) + object TestResource : KotlinResourceRootType(true) + + override fun createDefaultProperties() = + JpsJavaExtensionService.getInstance().createResourceRootProperties("", false) + + override fun isTestRoot() = isTest + + override fun equals(other: Any?) = if (super.equals(other)) true else isSameRootType(this, other) +} \ No newline at end of file diff --git a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt.as34 b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt.as34 new file mode 100644 index 00000000000..fff8d020dea --- /dev/null +++ b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinResourceRootType.kt.as34 @@ -0,0 +1,25 @@ +/* + * 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.config + +import org.jetbrains.jps.model.ex.JpsElementTypeBase +import org.jetbrains.jps.model.java.JavaResourceRootProperties +import org.jetbrains.jps.model.java.JavaResourceRootType +import org.jetbrains.jps.model.java.JpsJavaExtensionService +import org.jetbrains.jps.model.module.JpsModuleSourceRootType + +sealed class KotlinResourceRootType(val isTest: Boolean) : JpsElementTypeBase(), + JpsModuleSourceRootType, KotlinRootType { + object Resource : KotlinResourceRootType(false) + object TestResource : KotlinResourceRootType(true) + + override fun createDefaultProperties() = + JpsJavaExtensionService.getInstance().createResourceRootProperties("", false) + + override fun isTestRoot() = isTest + + override fun equals(other: Any?) = if (super.equals(other)) true else isSameRootType(this, other) +} \ No newline at end of file diff --git a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt index d6b6b689287..8b5b3d94565 100644 --- a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt +++ b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt @@ -23,6 +23,8 @@ sealed class KotlinSourceRootType(val isTest: Boolean) : JpsElementTypeBase(), JpsModuleSourceRootType, KotlinRootType { + object Source : KotlinSourceRootType(false) + object TestSource : KotlinSourceRootType(true) + + override fun createDefaultProperties() = JpsJavaExtensionService.getInstance().createSourceRootProperties("") + + companion object { + val ALL_SOURCES = setOf(Source, TestSource) + } + + override fun isTestRoot() = isTest + + override fun equals(other: Any?) = if (super.equals(other)) true else isSameRootType(this, other) +} + diff --git a/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt.as34 b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt.as34 new file mode 100644 index 00000000000..d6b6b689287 --- /dev/null +++ b/idea/idea-jps-common/src/org/jetbrains/kotlin/config/KotlinSourceRootType.kt.as34 @@ -0,0 +1,28 @@ +/* + * 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.config + +import org.jetbrains.jps.model.ex.JpsElementTypeBase +import org.jetbrains.jps.model.java.JavaSourceRootProperties +import org.jetbrains.jps.model.java.JavaSourceRootType +import org.jetbrains.jps.model.java.JpsJavaExtensionService +import org.jetbrains.jps.model.module.JpsModuleSourceRootType + +sealed class KotlinSourceRootType(val isTest: Boolean) : JpsElementTypeBase(), JpsModuleSourceRootType, KotlinRootType { + object Source : KotlinSourceRootType(false) + object TestSource : KotlinSourceRootType(true) + + override fun createDefaultProperties() = JpsJavaExtensionService.getInstance().createSourceRootProperties("") + + companion object { + val ALL_SOURCES = setOf(Source, TestSource) + } + + override fun isTestRoot() = isTest + + override fun equals(other: Any?) = if (super.equals(other)) true else isSameRootType(this, other) +} +