@@ -58,20 +58,20 @@ import com.intellij.psi.PsiTreeChangeListener
5858import com.intellij.psi.search.GlobalSearchScope
5959import com.intellij.util.ui.EDT
6060import org.jetbrains.kotlin.analysis.api.KaExperimentalApi
61+ import org.jetbrains.kotlin.analysis.api.KaIdeApi
6162import org.jetbrains.kotlin.analysis.api.KaImplementationDetail
6263import org.jetbrains.kotlin.analysis.api.platform.KotlinMessageBusProvider
6364import org.jetbrains.kotlin.analysis.api.platform.KotlinPlatformSettings
6465import org.jetbrains.kotlin.analysis.api.platform.KotlinProjectMessageBusProvider
6566import org.jetbrains.kotlin.analysis.api.platform.declarations.*
6667import org.jetbrains.kotlin.analysis.api.platform.lifetime.KotlinAlwaysAccessibleLifetimeTokenFactory
6768import org.jetbrains.kotlin.analysis.api.platform.lifetime.KotlinLifetimeTokenFactory
68- import org.jetbrains.kotlin.analysis.api.platform.modification.KotlinGlobalModificationService
6969import org.jetbrains.kotlin.analysis.api.platform.modification.KotlinModificationTrackerFactory
70+ import org.jetbrains.kotlin.analysis.api.platform.modification.publishGlobalModuleStateModificationEvent
7071import org.jetbrains.kotlin.analysis.api.platform.packages.KotlinPackagePartProviderFactory
7172import org.jetbrains.kotlin.analysis.api.platform.packages.KotlinPackageProviderFactory
7273import org.jetbrains.kotlin.analysis.api.platform.permissions.KotlinAnalysisPermissionOptions
73- import org.jetbrains.kotlin.analysis.api.platform.projectStructure.KotlinByModulesResolutionScopeProvider
74- import org.jetbrains.kotlin.analysis.api.platform.projectStructure.KotlinResolutionScopeProvider
74+ import org.jetbrains.kotlin.analysis.api.platform.resolution.KaResolutionActivityTracker
7575import org.jetbrains.kotlin.analysis.api.projectStructure.KaModule
7676import org.jetbrains.kotlin.analysis.api.projectStructure.KaSourceModule
7777import org.jetbrains.kotlin.analysis.api.resolve.extensions.KaResolveExtensionProvider
@@ -81,12 +81,12 @@ import org.jetbrains.kotlin.analysis.api.standalone.StandaloneAnalysisAPISession
8181import org.jetbrains.kotlin.analysis.api.standalone.base.KotlinStandalonePlatformSettings
8282import org.jetbrains.kotlin.analysis.api.standalone.base.declarations.KotlinStandaloneAnnotationsResolverFactory
8383import org.jetbrains.kotlin.analysis.api.standalone.base.declarations.KotlinStandaloneDeclarationProviderMerger
84- import org.jetbrains.kotlin.analysis.api.standalone.base.modification.KotlinStandaloneGlobalModificationService
8584import org.jetbrains.kotlin.analysis.api.standalone.base.modification.KotlinStandaloneModificationTrackerFactory
8685import org.jetbrains.kotlin.analysis.api.standalone.base.permissions.KotlinStandaloneAnalysisPermissionOptions
8786import org.jetbrains.kotlin.analysis.api.standalone.base.projectStructure.FirStandaloneServiceRegistrar
8887import org.jetbrains.kotlin.analysis.api.standalone.base.projectStructure.StandaloneProjectFactory
8988import org.jetbrains.kotlin.analysis.low.level.api.fir.api.getFirResolveSession
89+ import org.jetbrains.kotlin.analysis.low.level.api.fir.lazy.resolve.LLFirResolutionActivityTracker
9090import org.jetbrains.kotlin.analysis.low.level.api.fir.providers.LLSealedInheritorsProvider
9191import org.jetbrains.kotlin.analysis.project.structure.builder.KtModuleBuilder
9292import org.jetbrains.kotlin.analysis.project.structure.builder.KtModuleProviderBuilder
@@ -150,7 +150,7 @@ class KotlinSymbolProcessing(
150150 setupIdeaStandaloneExecution()
151151 }
152152
153- @OptIn(KaExperimentalApi ::class , KaImplementationDetail ::class )
153+ @OptIn(KaExperimentalApi ::class , KaImplementationDetail ::class , KaIdeApi :: class )
154154 private fun createAASession (
155155 compilerConfiguration : CompilerConfiguration ,
156156 projectDisposable : Disposable ,
@@ -254,6 +254,10 @@ class KotlinSymbolProcessing(
254254 KotlinAnalysisPermissionOptions ::class .java,
255255 KotlinStandaloneAnalysisPermissionOptions ::class .java
256256 )
257+ kotlinCoreProjectEnvironment.registerApplicationServices(
258+ KaResolutionActivityTracker ::class .java,
259+ LLFirResolutionActivityTracker ::class .java
260+ )
257261
258262 registerProjectServices(
259263 kotlinCoreProjectEnvironment,
@@ -313,10 +317,6 @@ class KotlinSymbolProcessing(
313317 KotlinModificationTrackerFactory ::class .java,
314318 KotlinStandaloneModificationTrackerFactory ::class .java
315319 )
316- registerService(
317- KotlinGlobalModificationService ::class .java,
318- KotlinStandaloneGlobalModificationService ::class .java
319- )
320320 registerService(
321321 KotlinLifetimeTokenFactory ::class .java,
322322 KotlinAlwaysAccessibleLifetimeTokenFactory ::class .java
@@ -327,10 +327,6 @@ class KotlinSymbolProcessing(
327327 KotlinAnnotationsResolverFactory ::class .java,
328328 KotlinStandaloneAnnotationsResolverFactory (project, ktFiles)
329329 )
330- registerService(
331- KotlinResolutionScopeProvider ::class .java,
332- KotlinByModulesResolutionScopeProvider ::class .java
333- )
334330 registerService(
335331 KotlinDeclarationProviderFactory ::class .java,
336332 IncrementalKotlinDeclarationProviderFactory (this )
@@ -545,7 +541,7 @@ class KotlinSymbolProcessing(
545541
546542 fun dropCaches () {
547543 maybeRunInWriteAction {
548- KotlinGlobalModificationService .getInstance( project).publishGlobalSourceModuleStateModification ()
544+ project.publishGlobalModuleStateModificationEvent ()
549545 KaSessionProvider .getInstance(project).clearCaches()
550546 psiManager.dropResolveCaches()
551547 psiManager.dropPsiCaches()
@@ -690,8 +686,11 @@ internal val DEAR_SHADOW_JAR_PLEASE_DO_NOT_REMOVE_THESE = listOf(
690686 org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSessionInvalidationService ::class .java,
691687 org.jetbrains.kotlin.analysis.low.level.api.fir.symbolProviders.factories.LLStubOriginLibrarySymbolProviderFactory ::class .java,
692688 org.jetbrains.kotlin.analysis.api.impl.base.java.KaBaseJavaModuleResolver ::class .java,
689+ org.jetbrains.kotlin.analysis.api.impl.base.java.KaBaseKotlinJavaPsiFacade ::class .java,
693690 org.jetbrains.kotlin.analysis.api.impl.base.permissions.KaBaseAnalysisPermissionChecker ::class .java,
694691 org.jetbrains.kotlin.analysis.api.impl.base.permissions.KaBaseAnalysisPermissionRegistry ::class .java,
692+ org.jetbrains.kotlin.analysis.api.impl.base.projectStructure.KaBaseContentScopeProvider ::class .java,
693+ org.jetbrains.kotlin.analysis.api.impl.base.projectStructure.KaBaseResolutionScopeProvider ::class .java,
695694 org.jetbrains.kotlin.analysis.api.permissions.KaAnalysisPermissionRegistry ::class .java,
696695 org.jetbrains.kotlin.analysis.api.platform.KotlinProjectMessageBusProvider ::class .java,
697696 org.jetbrains.kotlin.analysis.api.platform.permissions.KaAnalysisPermissionChecker ::class .java,
0 commit comments