From b89d4f076dd7be97f8a668dd8110f7ab4dbaf213 Mon Sep 17 00:00:00 2001 From: Nikolay Chashnikov Date: Wed, 10 Jan 2024 16:32:57 +0100 Subject: [PATCH] [kotlin] API cleanup: remove unused deprecated API (IJPL-275) GitOrigin-RevId: eb8a3bafe5fb32fc4ed97add71573ed0ed773451 --- .../jetbrains/kotlin/idea/project/Platform.kt | 15 --------- .../idea/caches/project/multiplatformUtil.kt | 13 -------- .../util/DescriptorMemberChooserObject.kt | 28 ---------------- .../org/jetbrains/kotlin/idea/KotlinBundle.kt | 19 ----------- .../jetbrains/kotlin/idea/util/dumbUtils.kt | 32 ------------------- .../moduleInfo/ModuleSourceInfo.kt | 9 ------ ...SelfTargetingOffsetIndependentIntention.kt | 12 ------- .../KotlinGradleSourceSetDataService.kt | 16 ---------- .../kotlin/gradle/projectStructureDSL.kt | 7 ---- .../idea/configuration/GradleDetector.kt | 12 ------- .../idea/framework/KotlinLibraryUtil.kt | 10 ------ .../debugger/core/KotlinPositionManager.kt | 13 -------- 12 files changed, 186 deletions(-) delete mode 100644 plugins/kotlin/base/fe10/obsolete-compat/src/org/jetbrains/kotlin/idea/core/util/DescriptorMemberChooserObject.kt delete mode 100644 plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/KotlinBundle.kt delete mode 100644 plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/util/dumbUtils.kt diff --git a/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/project/Platform.kt b/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/project/Platform.kt index 7ee8a3e60611..f40d31e8d8bd 100644 --- a/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/project/Platform.kt +++ b/plugins/kotlin/analysis/src/org/jetbrains/kotlin/idea/project/Platform.kt @@ -3,15 +3,11 @@ package org.jetbrains.kotlin.idea.project import com.intellij.openapi.module.Module -import com.intellij.psi.PsiElement -import org.jetbrains.annotations.ApiStatus import org.jetbrains.kotlin.builtins.KotlinBuiltIns -import org.jetbrains.kotlin.config.LanguageVersionSettings import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.platform.TargetPlatform import org.jetbrains.kotlin.psi.KtElement import org.jetbrains.kotlin.idea.base.facet.platform.platform as platformNew -import org.jetbrains.kotlin.idea.base.projectStructure.languageVersionSettings as languageVersionSettingsNew val KtElement.builtIns: KotlinBuiltIns get() = getResolutionFacade().moduleDescriptor.builtIns @@ -31,14 +27,3 @@ val Module.platform: TargetPlatform @Suppress("unused") val KtElement.platform: TargetPlatform get() = platformNew - -@get:ApiStatus.ScheduledForRemoval -@get:Deprecated("Use 'org.jetbrains.kotlin.idea.base.projectStructure.languageVersionSettings' instead") -@Deprecated( - "Use 'org.jetbrains.kotlin.idea.base.projectStructure.languageVersionSettings' instead", - ReplaceWith("languageVersionSettings", "org.jetbrains.kotlin.idea.base.projectStructure.languageVersionSettings"), - level = DeprecationLevel.ERROR -) -@Suppress("unused") -val PsiElement.languageVersionSettings: LanguageVersionSettings - get() = languageVersionSettingsNew \ No newline at end of file diff --git a/plugins/kotlin/base/fe10/analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt b/plugins/kotlin/base/fe10/analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt index d1380a4f078a..a4db1f7838ff 100644 --- a/plugins/kotlin/base/fe10/analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt +++ b/plugins/kotlin/base/fe10/analysis/src/org/jetbrains/kotlin/idea/caches/project/multiplatformUtil.kt @@ -4,7 +4,6 @@ package org.jetbrains.kotlin.idea.caches.project import com.intellij.openapi.module.Module import com.intellij.psi.PsiElement -import org.jetbrains.annotations.ApiStatus import org.jetbrains.kotlin.analyzer.ModuleInfo import org.jetbrains.kotlin.caches.resolve.KotlinCacheService import org.jetbrains.kotlin.config.KotlinSourceRootType @@ -24,7 +23,6 @@ import org.jetbrains.kotlin.idea.base.projectStructure.testSourceInfo import org.jetbrains.kotlin.platform.TargetPlatform import org.jetbrains.kotlin.platform.isCommon import org.jetbrains.kotlin.types.typeUtil.closure -import org.jetbrains.kotlin.idea.base.facet.implementingModules as implementingModulesNew @Deprecated( "Use 'org.jetbrains.kotlin.idea.base.facet.isNewMultiPlatformModule' instead.", @@ -57,17 +55,6 @@ val Module.sourceType: SourceType? val Module.isMPPModule: Boolean get() = isMultiPlatformModule -@get:ApiStatus.ScheduledForRemoval -@get:Deprecated("Use 'org.jetbrains.kotlin.idea.base.facet.implementingModules' instead.") -@Deprecated( - "Use 'org.jetbrains.kotlin.idea.base.facet.implementingModules' instead.", - ReplaceWith("implementingModules", imports = ["org.jetbrains.kotlin.idea.base.facet"]), - level = DeprecationLevel.ERROR -) -@Suppress("unused") -val Module.implementingModules: List - get() = implementingModulesNew - val ModuleDescriptor.implementingDescriptors: List get() { val moduleInfo = getCapability(ModuleInfo.Capability) diff --git a/plugins/kotlin/base/fe10/obsolete-compat/src/org/jetbrains/kotlin/idea/core/util/DescriptorMemberChooserObject.kt b/plugins/kotlin/base/fe10/obsolete-compat/src/org/jetbrains/kotlin/idea/core/util/DescriptorMemberChooserObject.kt deleted file mode 100644 index a3cfbc04da0c..000000000000 --- a/plugins/kotlin/base/fe10/obsolete-compat/src/org/jetbrains/kotlin/idea/core/util/DescriptorMemberChooserObject.kt +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.idea.core.util - -import com.intellij.openapi.util.NlsSafe -import com.intellij.psi.PsiElement -import org.jetbrains.annotations.ApiStatus -import org.jetbrains.kotlin.descriptors.DeclarationDescriptor -import javax.swing.Icon -import org.jetbrains.kotlin.idea.base.fe10.codeInsight.DescriptorMemberChooserObject as DescriptorMemberChooserObjectNew - -@Suppress("unused") -@ApiStatus.ScheduledForRemoval -@Deprecated("Use 'org.jetbrains.kotlin.idea.base.fe10.codeInsight.DescriptorMemberChooserObject' instead") -open class DescriptorMemberChooserObject( - psiElement: PsiElement, - descriptor: DeclarationDescriptor -) : DescriptorMemberChooserObjectNew(psiElement, descriptor) { - companion object { - @NlsSafe - fun getText(descriptor: DeclarationDescriptor): String { - return DescriptorMemberChooserObjectNew.getText(descriptor) - } - - fun getIcon(declaration: PsiElement?, descriptor: DeclarationDescriptor): Icon? { - return DescriptorMemberChooserObjectNew.getIcon(declaration, descriptor) - } - } -} \ No newline at end of file diff --git a/plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/KotlinBundle.kt b/plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/KotlinBundle.kt deleted file mode 100644 index 04fd01ca2c02..000000000000 --- a/plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/KotlinBundle.kt +++ /dev/null @@ -1,19 +0,0 @@ -// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -package org.jetbrains.kotlin.idea - -import org.jetbrains.annotations.ApiStatus -import org.jetbrains.annotations.Nls -import org.jetbrains.annotations.NonNls -import org.jetbrains.annotations.PropertyKey -import org.jetbrains.kotlin.util.AbstractKotlinBundle -import org.jetbrains.kotlin.idea.base.resources.BUNDLE as _BUNDLE -import org.jetbrains.kotlin.idea.base.resources.KotlinBundle as _KotlinBundle - -@ApiStatus.ScheduledForRemoval -@Deprecated("Please use org.jetbrains.kotlin.idea.base.resources.KotlinBundle instead") -object KotlinBundle: AbstractKotlinBundle(_BUNDLE) { - @Nls - @JvmStatic - fun message(@NonNls @PropertyKey(resourceBundle = _BUNDLE) key: String, vararg params: Any): String = - _KotlinBundle.message(key, params) -} \ No newline at end of file diff --git a/plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/util/dumbUtils.kt b/plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/util/dumbUtils.kt deleted file mode 100644 index ef768f3555ae..000000000000 --- a/plugins/kotlin/base/obsolete-compat/src/org/jetbrains/kotlin/idea/util/dumbUtils.kt +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. - -@file:Suppress("DeprecatedCallableAddReplaceWith") - -package org.jetbrains.kotlin.idea.util - -import com.intellij.openapi.application.ApplicationManager -import com.intellij.openapi.project.DumbService -import com.intellij.openapi.project.Project -import org.jetbrains.annotations.ApiStatus - -@ApiStatus.ScheduledForRemoval -@Deprecated("Use org.jetbrains.kotlin.idea.base.util.runReadActionInSmartMode()") -fun Project.runReadActionInSmartMode(action: () -> T): T { - if (ApplicationManager.getApplication().isReadAccessAllowed) return action() - return DumbService.getInstance(this).runReadActionInSmartMode(action) -} - -@ApiStatus.ScheduledForRemoval -@Deprecated("Use org.jetbrains.kotlin.idea.base.util.runWithAlternativeResolveEnabled()") -fun Project.runWithAlternativeResolveEnabled(action: () -> T): T { - @Suppress("UNCHECKED_CAST") var result: T = null as T - DumbService.getInstance(this).withAlternativeResolveEnabled { result = action() } - @Suppress("USELESS_CAST") - return result as T -} - -@ApiStatus.ScheduledForRemoval -@Deprecated("Use org.jetbrains.kotlin.idea.base.util.runWhenSmart()") -fun Project.runWhenSmart(action: () -> Unit) { - DumbService.getInstance(this).runWhenSmart(action) -} \ No newline at end of file diff --git a/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/moduleInfo/ModuleSourceInfo.kt b/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/moduleInfo/ModuleSourceInfo.kt index 44a3496c9dd2..f371344fc509 100644 --- a/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/moduleInfo/ModuleSourceInfo.kt +++ b/plugins/kotlin/base/project-structure/src/org/jetbrains/kotlin/idea/base/projectStructure/moduleInfo/ModuleSourceInfo.kt @@ -32,15 +32,6 @@ interface ModuleSourceInfo : OldModuleSourceInfo, IdeaModuleInfo, TrackableModul override val platform: TargetPlatform get() = module.platform - @Suppress("DEPRECATION_ERROR") - @ApiStatus.ScheduledForRemoval - @Deprecated( - message = "This accessor is deprecated and will be removed soon, use API from 'org.jetbrains.kotlin.platform.*' packages instead", - replaceWith = ReplaceWith("platform"), - level = DeprecationLevel.ERROR - ) - fun getPlatform(): org.jetbrains.kotlin.resolve.TargetPlatform = platform.toOldPlatform() - override val analyzerServices: PlatformDependentAnalyzerServices get() = platform.findAnalyzerServices(module.project) diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/classic/intentions/SelfTargetingOffsetIndependentIntention.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/classic/intentions/SelfTargetingOffsetIndependentIntention.kt index 8a003ed709bd..548e7a8f1b4f 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/classic/intentions/SelfTargetingOffsetIndependentIntention.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/classic/intentions/SelfTargetingOffsetIndependentIntention.kt @@ -4,7 +4,6 @@ package org.jetbrains.kotlin.idea.codeinsight.api.classic.intentions import com.intellij.codeInspection.util.IntentionFamilyName import com.intellij.codeInspection.util.IntentionName import com.intellij.openapi.util.TextRange -import org.jetbrains.annotations.ApiStatus import org.jetbrains.kotlin.psi.KtElement abstract class SelfTargetingOffsetIndependentIntention( @@ -12,17 +11,6 @@ abstract class SelfTargetingOffsetIndependentIntention( textGetter: () -> @IntentionName String, familyNameGetter: () -> @IntentionFamilyName String = textGetter, ) : SelfTargetingRangeIntention(elementType, textGetter, familyNameGetter) { - @ApiStatus.ScheduledForRemoval - @Deprecated( - "Replace with primary constructor", - ReplaceWith("SelfTargetingOffsetIndependentIntention(elementType, { text }, { familyName })") - ) - constructor( - elementType: Class, - text: @IntentionName String, - familyName: @IntentionFamilyName String = text, - ) : this(elementType, { text }, { familyName }) - abstract fun isApplicableTo(element: TElement): Boolean final override fun applicabilityRange(element: TElement): TextRange? { diff --git a/plugins/kotlin/gradle/gradle-java/src/org/jetbrains/kotlin/idea/gradleJava/configuration/KotlinGradleSourceSetDataService.kt b/plugins/kotlin/gradle/gradle-java/src/org/jetbrains/kotlin/idea/gradleJava/configuration/KotlinGradleSourceSetDataService.kt index de89eb08f298..a36d251f6fab 100644 --- a/plugins/kotlin/gradle/gradle-java/src/org/jetbrains/kotlin/idea/gradleJava/configuration/KotlinGradleSourceSetDataService.kt +++ b/plugins/kotlin/gradle/gradle-java/src/org/jetbrains/kotlin/idea/gradleJava/configuration/KotlinGradleSourceSetDataService.kt @@ -221,22 +221,6 @@ fun detectPlatformKindByPlugin(moduleNode: DataNode): IdePlatformKin return IdePlatformKind.ALL_KINDS.firstOrNull { it.tooling.gradlePluginId == pluginId } } -@Suppress("DEPRECATION_ERROR") -@ApiStatus.ScheduledForRemoval -@Deprecated( - "Use detectPlatformKindByPlugin() instead", - replaceWith = ReplaceWith("detectPlatformKindByPlugin(moduleNode)"), - level = DeprecationLevel.ERROR -) -fun detectPlatformByPlugin(moduleNode: DataNode): TargetPlatformKind<*>? { - return when (moduleNode.kotlinGradleProjectDataOrFail.platformPluginId) { - "kotlin-platform-jvm" -> TargetPlatformKind.Jvm[JvmTarget.DEFAULT] - "kotlin-platform-js" -> TargetPlatformKind.JavaScript - "kotlin-platform-common" -> TargetPlatformKind.Common - else -> null - } -} - internal fun detectPlatformByLibrary(moduleNode: DataNode): IdePlatformKind? { val detectedPlatforms = mavenLibraryIdToPlatform.entries diff --git a/plugins/kotlin/gradle/gradle-java/tests/test/org/jetbrains/kotlin/gradle/projectStructureDSL.kt b/plugins/kotlin/gradle/gradle-java/tests/test/org/jetbrains/kotlin/gradle/projectStructureDSL.kt index 54fe530ea2fc..44847f0e8cf6 100644 --- a/plugins/kotlin/gradle/gradle-java/tests/test/org/jetbrains/kotlin/gradle/projectStructureDSL.kt +++ b/plugins/kotlin/gradle/gradle-java/tests/test/org/jetbrains/kotlin/gradle/projectStructureDSL.kt @@ -62,13 +62,6 @@ class ProjectInfo( private var allModulesAsserter: (ModuleInfo.() -> Unit)? = null private val moduleInfos = moduleManager.modules.associateWith { module -> ModuleInfo(module, this) } - @ApiStatus.ScheduledForRemoval - @Deprecated("Use .forEachModule instead. This method is error prone and has to be called before 'module(..)' in order to run") - fun allModules(body: ModuleInfo.() -> Unit) { - assert(allModulesAsserter == null) - allModulesAsserter = body - } - fun forEachModule(body: ModuleInfo.() -> Unit) { moduleInfos.values.forEach { moduleInfo -> moduleInfo.run(body) diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/configuration/GradleDetector.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/configuration/GradleDetector.kt index 99d8d0f58085..700b2859aa42 100644 --- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/configuration/GradleDetector.kt +++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/configuration/GradleDetector.kt @@ -3,9 +3,7 @@ package org.jetbrains.kotlin.idea.configuration import com.intellij.facet.FacetManager import com.intellij.openapi.externalSystem.model.ProjectSystemId -import com.intellij.openapi.externalSystem.util.ExternalSystemApiUtil import com.intellij.openapi.module.Module -import org.jetbrains.annotations.ApiStatus import org.jetbrains.kotlin.idea.base.util.isGradleModule val GRADLE_SYSTEM_ID = ProjectSystemId("GRADLE") @@ -21,13 +19,3 @@ class GradleDetector : BuildSystemTypeDetector { return null } } - -@ApiStatus.ScheduledForRemoval -@Deprecated( - "Moved to the 'org.jetbrains.kotlin.idea.base.util' package.", - level = DeprecationLevel.ERROR, - replaceWith = ReplaceWith("org.jetbrains.kotlin.idea.base.util.isGradleModule()") -) -fun Module.isGradleModule(): Boolean { - return ExternalSystemApiUtil.isExternalSystemAwareModule(GRADLE_SYSTEM_ID, this) -} \ No newline at end of file diff --git a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/KotlinLibraryUtil.kt b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/KotlinLibraryUtil.kt index 2f4108e24ec5..f632796ac68f 100644 --- a/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/KotlinLibraryUtil.kt +++ b/plugins/kotlin/idea/src/org/jetbrains/kotlin/idea/framework/KotlinLibraryUtil.kt @@ -3,16 +3,6 @@ package org.jetbrains.kotlin.idea.framework import com.intellij.openapi.externalSystem.model.ProjectSystemId -import org.jetbrains.annotations.ApiStatus val MAVEN_SYSTEM_ID = ProjectSystemId("Maven") -@get:ApiStatus.ScheduledForRemoval -@get:Deprecated("Moved to the org.jetbrains.kotlin.idea.configuration package.") -@Deprecated( - "Moved to the org.jetbrains.kotlin.idea.configuration package.", - level = DeprecationLevel.ERROR, - replaceWith = ReplaceWith("org.jetbrains.kotlin.idea.configuration.GRADLE_SYSTEM_ID") -) -val GRADLE_SYSTEM_ID: ProjectSystemId - get() = org.jetbrains.kotlin.idea.configuration.GRADLE_SYSTEM_ID diff --git a/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/core/KotlinPositionManager.kt b/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/core/KotlinPositionManager.kt index 144b53b78f95..90a4a320b19b 100644 --- a/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/core/KotlinPositionManager.kt +++ b/plugins/kotlin/jvm-debugger/core/src/org/jetbrains/kotlin/idea/debugger/core/KotlinPositionManager.kt @@ -579,19 +579,6 @@ class KotlinPositionManager(private val debugProcess: DebugProcess) : MultiReque } } - @ApiStatus.ScheduledForRemoval - @Deprecated("Use 'ClassNameProvider' directly") - fun originalClassNamesForPosition(position: SourcePosition): List { - return runReadAction { - val classNameProvider = ClassNameProvider( - debugProcess.project, - debugProcess.searchScope, - ClassNameProvider.Configuration.DEFAULT.copy(findInlineUseSites = false) - ) - classNameProvider.getCandidates(position) - } - } - override fun locationsOfLine(type: ReferenceType, position: SourcePosition): List { if (position.file !is KtFile) { throw NoDataException.INSTANCE