Status Update
Comments
l3...@gmail.com <l3...@gmail.com> #2 Restricted+
aa...@google.com <aa...@google.com>
je...@google.com <je...@google.com>
sp...@google.com <sp...@google.com>
sp...@google.com <sp...@google.com> #3
This looks to be related to either Lint or the Kotlin Plugin. Redirecting this bug to the Lint team to take a first look.
The EDT is waiting for a write lock, while the thread running Lint is blocking it with a long-running operation in a read lock. From the stack, it's not clear to me if the Lint code is doing a bunch of stuff without checking for cancellation (in which case adding cancellation checks would probably resolve this), or if it's logic within the Kotlin plugin that is blocking for a longer amount of time.
"DefaultDispatcher-worker-12" prio=0 tid=0x0 nid=0x0 runnable
java.lang.Thread.State: RUNNABLE
at com.intellij.platform.instanceContainer.internal.InstanceContainerImpl.getInstanceHolder(InstanceContainerImpl.kt:99)
at com.intellij.serviceContainer.ComponentManagerImpl.doGetService(ComponentManagerImpl.kt:717)
at com.intellij.serviceContainer.ComponentManagerImpl.getService(ComponentManagerImpl.kt:695)
at org.jetbrains.uast.kotlin.KotlinAbstractUElement.getBaseResolveProviderService(KotlinAbstractUElement.kt:27)
at org.jetbrains.uast.kotlin.KotlinAbstractUElement.convertParent(KotlinAbstractUElement.kt:41)
at org.jetbrains.uast.kotlin.KotlinAbstractUElement.getUastParent(KotlinAbstractUElement.kt:34)
at org.jetbrains.uast.UastUtils__UastUtilsKt.getParentOfType(UastUtils.kt:28)
at org.jetbrains.uast.UastUtils.getParentOfType(Unknown Source)
at org.jetbrains.uast.kotlin.psi.UastKotlinPsiParameter$Companion.create$kotlin_uast_uast_kotlin_base(UastKotlinPsiParameter.kt:77)
at org.jetbrains.uast.kotlin.KotlinULambdaExpression.getParameters(KotlinULambdaExpression.kt:71)
at org.jetbrains.uast.kotlin.KotlinULambdaExpression.getValueParameters(KotlinULambdaExpression.kt:61)
at org.jetbrains.uast.kotlin.BaseKotlinConverter.convertParameter$lambda$41(BaseKotlinConverter.kt:413)
at org.jetbrains.uast.kotlin.BaseKotlinConverter$$Lambda/0x0000000803cc6ed8.invoke(Unknown Source)
at org.jetbrains.uast.internal.ImplementationUtilsKt.accommodate$lambda$2(implementationUtils.kt:30)
at org.jetbrains.uast.internal.ImplementationUtilsKt$$Lambda/0x00000008037dd688.invoke(Unknown Source)
at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:210)
at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:170)
at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
at kotlin.sequences.SequencesKt___SequencesKt.firstOrNull(_Sequences.kt:172)
at org.jetbrains.uast.kotlin.BaseKotlinConverter.convertDeclaration(BaseKotlinConverter.kt:233)
at org.jetbrains.uast.kotlin.BaseKotlinConverter.convertDeclarationOrElement(BaseKotlinConverter.kt:294)
at org.jetbrains.uast.kotlin.KotlinUastLanguagePlugin.convertElementWithParent(KotlinUastLanguagePlugin.kt:53)
at org.jetbrains.uast.UastFacade.convertElementWithParent(UastContext.kt:66)
at org.jetbrains.uast.UastContextKt.toUElement(UastContext.kt:145)
at org.jetbrains.uast.kotlin.BaseKotlinInternalUastUtilsKt.getMaybeLightElement(baseKotlinInternalUastUtils.kt:147)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveToDeclarationImpl(kotlinInternalUastUtils.kt:421)
at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.resolveToDeclarationImpl(kotlinInternalUastUtils.kt:414)
at org.jetbrains.uast.kotlin.KotlinUastResolveProviderService.resolveToDeclaration(KotlinUastResolveProviderService.kt:388)
at org.jetbrains.uast.kotlin.KotlinUSimpleReferenceExpression.getResolvedDeclaration(KotlinUSimpleReferenceExpression.kt:37)
at org.jetbrains.uast.kotlin.KotlinUSimpleReferenceExpression.resolve(KotlinUSimpleReferenceExpression.kt:44)
at com.android.tools.lint.client.api.AnnotationHandler$checkContextAnnotations$1.visitSimpleNameReferenceExpression(AnnotationHandler.kt:219)
at org.jetbrains.uast.kotlin.KotlinUSimpleReferenceExpression.accept(KotlinUSimpleReferenceExpression.kt:58)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:33)
at org.jetbrains.uast.UBinaryExpression.accept(UBinaryExpression.kt:42)
at org.jetbrains.uast.UParenthesizedExpression.accept(UParenthesizedExpression.kt:21)
at org.jetbrains.uast.UBinaryExpression.accept(UBinaryExpression.kt:42)
at org.jetbrains.uast.UIfExpression.accept(UIfExpression.kt:58)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.kotlin.KotlinUSimpleReferenceExpression.visitAccessorCalls(KotlinUSimpleReferenceExpression.kt:86)
at org.jetbrains.uast.kotlin.KotlinUSimpleReferenceExpression.accept(KotlinUSimpleReferenceExpression.kt:61)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.UBinaryExpression.accept(UBinaryExpression.kt:42)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.UMethod.accept(UMethod.kt:45)
at com.android.tools.lint.client.api.AnnotationHandler.checkContextAnnotations(AnnotationHandler.kt:214)
at com.android.tools.lint.client.api.AnnotationHandler.visitVariable(AnnotationHandler.kt:1082)
at com.android.tools.lint.client.api.UElementVisitor$DelegatingUastVisitor.visitVariable(UElementVisitor.kt:840)
at org.jetbrains.uast.visitor.UastVisitor.visitParameter(UastVisitor.kt:16)
at com.android.tools.lint.client.api.UElementVisitor$DispatchUastVisitor.visitParameter(UElementVisitor.kt:551)
at com.android.tools.lint.client.api.UElementVisitor$DelegatingUastVisitor.visitParameter(UElementVisitor.kt:889)
at org.jetbrains.uast.UParameter.accept(UVariable.kt:80)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.kotlin.KotlinUCatchClause.accept(KotlinUCatchClause.kt:55)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UTryExpression.accept(UTryExpression.kt:79)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.UBinaryExpression.accept(UBinaryExpression.kt:43)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.kotlin.KotlinULocalVariable.accept(KotlinULocalVariable.kt:46)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UDeclarationsExpression.accept(UDeclarationsExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UExpressionList.accept(UExpressionList.kt:26)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.UReturnExpression.accept(UReturnExpression.kt:22)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.ULambdaExpression.accept(ULambdaExpression.kt:40)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UCallExpression.accept(UCallExpression.kt:98)
at org.jetbrains.uast.UQualifiedReferenceExpression.accept(UQualifiedReferenceExpression.kt:34)
at org.jetbrains.uast.UBinaryExpression.accept(UBinaryExpression.kt:43)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UBlockExpression.accept(UBlockExpression.kt:21)
at org.jetbrains.uast.UMethod.accept(UMethod.kt:45)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.kotlin.AbstractKotlinUClass.accept(AbstractKotlinUClass.kt:213)
at org.jetbrains.uast.internal.ImplementationUtilsKt.acceptList(implementationUtils.kt:15)
at org.jetbrains.uast.UFile.accept(UFile.kt:89)
at com.android.tools.lint.detector.api.UastLintUtilsKt.acceptSourceFile(UastLintUtils.kt:992)
at com.android.tools.lint.client.api.UElementVisitor.visitFile$lambda$5(UElementVisitor.kt:216)
at com.android.tools.lint.client.api.UElementVisitor$$Lambda/0x0000000803fd0d58.run(Unknown Source)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.tryRunReadAction(AnyThreadWriteThreadingSupport.kt:333)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:971)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:95)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils$$Lambda/0x0000000801625000.run(Unknown Source)
at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:66)
...
sp...@google.com <sp...@google.com> #4
Adding more freezes for you
ws...@gmail.com <ws...@gmail.com> #5
The problem is so severe that it is difficult to use this release.
sp...@google.com <sp...@google.com> #6
It is hanging everywhere now in AS2024.3.1.5:
Android Studio Meerkat | 2024.3.1 Canary 5
Build #AI-243.21565.193.2431.12752199, built on December 5, 2024
Runtime version: 21.0.5+-12651406-b631.16 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Toolkit: sun.awt.windows.WToolkit
Windows 11.0
GC: G1 Young Generation, G1 Concurrent GC, G1 Old Generation
Memory: 4050M
Cores: 20
Registry:
ide.experimental.ui=true
i18n.locale=
ide.images.show.chessboard=true
terminal.new.ui=true
Adding more logs.
an...@google.com <an...@google.com> #7
Some new hang reports, if it helps...
wa...@gmail.com <wa...@gmail.com> #8
Still hanging everywhere in AS2024.3.1.6
You MUST prioritize this issue, i don't like reverting back because here are so much other good stuff which is fixed...
sp...@google.com <sp...@google.com> #9
May be not related, but I took look at the last log:
2024-12-17 10:56:19,614 [1220737] INFO - #com.android.tools.idea.gradle.run.MakeBeforeRunTask - Gradle invocation complete, build result = com.android.tools.idea.gradle.project.build.invoker.AssembleInvocationResult@99befcf
2024-12-17 10:56:19,615 [1220738] SEVERE - #c.i.u.SlowOperations - Slow operations are prohibited on EDT. See SlowOperations.assertSlowOperationsAreAllowed javadoc.
java.lang.Throwable: Slow operations are prohibited on EDT. See SlowOperations.assertSlowOperationsAreAllowed javadoc.
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:376)
at com.intellij.util.SlowOperations.assertSlowOperationsAreAllowed(SlowOperations.java:114)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexDataImpl.ensureIsUpToDate(WorkspaceFileIndexDataImpl.kt:153)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexDataImpl.getFileInfo(WorkspaceFileIndexDataImpl.kt:98)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexImpl.getFileInfo(WorkspaceFileIndexImpl.kt:267)
at com.intellij.workspaceModel.core.fileIndex.impl.WorkspaceFileIndexImpl.findFileSet(WorkspaceFileIndexImpl.kt:220)
at com.intellij.openapi.roots.impl.ProjectFileIndexImpl.isInProject(ProjectFileIndexImpl.java:84)
at com.intellij.psi.search.ProjectAndLibrariesScope.contains(ProjectAndLibrariesScope.java:33)
at com.intellij.psi.search.ProjectScopeBuilderImpl$3.contains(ProjectScopeBuilderImpl.java:92)
at com.android.tools.idea.editors.build.PsiCodeFileChangeDetectorService.prepareMarkUpToDate$lambda$2(PsiCodeFileChangeDetectorService.kt:230)
at com.android.tools.idea.editors.build.RenderingBuildStatusManagerImpl$buildListener$1.buildStarted$handleSuccess$lambda$0(RenderingBuildStatusManager.kt:210)
at com.intellij.util.SlowOperations.allowSlowOperations(SlowOperations.java:205)
at com.android.tools.idea.editors.build.RenderingBuildStatusManagerImpl$buildListener$1.buildStarted$handleSuccess(RenderingBuildStatusManager.kt:209)
at com.android.tools.idea.editors.build.RenderingBuildStatusManagerImpl$buildListener$1.buildStarted$handleBuildResult(RenderingBuildStatusManager.kt:219)
at com.android.tools.idea.editors.build.RenderingBuildStatusManagerImpl$buildListener$1.access$buildStarted$handleBuildResult(RenderingBuildStatusManager.kt:185)
at com.android.tools.idea.editors.build.RenderingBuildStatusManagerImpl$buildListener$1$buildStarted$1$1.invokeSuspend(RenderingBuildStatusManager.kt:229)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:236)
at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:25)
at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:198)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread$lambda$2(AnyThreadWriteThreadingSupport.kt:217)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:128)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread(AnyThreadWriteThreadingSupport.kt:216)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:842)
at com.intellij.openapi.application.impl.ApplicationImpl$3.run(ApplicationImpl.java:434)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:117)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:43)
at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:675)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:573)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$18$lambda$17$lambda$16$lambda$15(IdeEventQueue.kt:355)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:857)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$18$lambda$17$lambda$16(IdeEventQueue.kt:354)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$2$lambda$1(IdeEventQueue.kt:1045)
at com.intellij.openapi.application.WriteIntentReadAction.lambda$run$0(WriteIntentReadAction.java:24)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:128)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteIntentReadAction(ApplicationImpl.java:916)
at com.intellij.openapi.application.WriteIntentReadAction.compute(WriteIntentReadAction.java:55)
at com.intellij.openapi.application.WriteIntentReadAction.run(WriteIntentReadAction.java:23)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$2(IdeEventQueue.kt:1045)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$3(IdeEventQueue.kt:1054)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:109)
at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1054)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$18(IdeEventQueue.kt:349)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:395)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
2024-12-17 10:56:19,616 [1220739] SEVERE - #c.i.u.SlowOperations - Android Studio Meerkat | 2024.3.1 Canary 6 Build #AI-243.22562.145.2431.12789491
2024-12-17 10:56:19,616 [1220739] SEVERE - #c.i.u.SlowOperations - JDK: 21.0.5; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2024-12-17 10:56:19,616 [1220739] SEVERE - #c.i.u.SlowOperations - OS: Windows 11
2024-12-17 10:56:19,616 [1220739] SEVERE - #c.i.u.SlowOperations - Last Action: Run
and some reference to that I am not running Linux subsystem (wsl.exe), is that a request in Meerkat ?
2024-12-17 11:04:24,832 [1705955] WARN - #c.i.e.w.WslDistributionManager - Failed to run C:\WINDOWS\system32\wsl.exe --list --verbose: {exitCode=1, timeout=false, cancelled=false, stdout=, stderr=Windows-undersystem for Linux er ikke installert. Du kan installere ved å kjøre wsl.exe --install.
Hvis du vil ha mer informasjon, kan du gå til https://aka.ms/wslinstall
}, done in 52 ms
java.io.IOException: Failed to run C:\WINDOWS\system32\wsl.exe --list --verbose: {exitCode=1, timeout=false, cancelled=false, stdout=, stderr=Windows-undersystem for Linux er ikke installert. Du kan installere ved å kjøre wsl.exe --install.
Hvis du vil ha mer informasjon, kan du gå til https://aka.ms/wslinstall
}, done in 52 ms
at com.intellij.execution.wsl.WslDistributionManagerImpl.loadInstalledDistributionsWithVersions(WslDistributionManagerImpl.java:85)
at com.intellij.execution.wsl.WslDistributionManager.loadInstalledDistributions(WslDistributionManager.java:167)
at com.intellij.execution.wsl.WslDistributionManager.getInstalledDistributions(WslDistributionManager.java:86)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(Unknown Source)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:107)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:101)
at com.intellij.util.concurrency.ContextRunnable.run(ContextRunnable.java:27)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Unknown Source)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
2024-12-17 11:04:24,868 [1705991] INFO - #c.i.e.w.WslDistributionManager - Cannot parse WSL distributions
java.io.IOException: Failed to run C:\WINDOWS\system32\wsl.exe --list --quiet: {exitCode=1, timeout=false, cancelled=false, stdout=, stderr=Windows-undersystem for Linux er ikke installert. Du kan installere ved å kjøre wsl.exe --install.
Hvis du vil ha mer informasjon, kan du gå til https://aka.ms/wslinstall
}
at com.intellij.execution.wsl.WslDistributionManagerImpl.doFetchDistributionsFromWslCli(WslDistributionManagerImpl.java:156)
at com.intellij.execution.wsl.WslDistributionManagerImpl.loadInstalledDistributionMsIds(WslDistributionManagerImpl.java:41)
at com.intellij.execution.wsl.WslDistributionManager.loadInstalledDistributions(WslDistributionManager.java:182)
at com.intellij.execution.wsl.WslDistributionManager.getInstalledDistributions(WslDistributionManager.java:86)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(Unknown Source)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:107)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:101)
at com.intellij.util.concurrency.ContextRunnable.run(ContextRunnable.java:27)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Unknown Source)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
2024-12-17 11:04:31,699 [1712822] INFO - #c.i.o.p.DumbServiceImpl - enter dumb mode [Norva24 MSlam]
2024-12-17 11:04:31,743 [1712866] INFO - #c.i.o.p.MergingQueueGuiExecutor - Running task: (dumb mode task) com.intellij.openapi.roots.impl.PushedFilePropertiesUpdaterImpl$MyDumbModeTask@423a3c5 (reason: Push on VFS changes)
2024-12-17 11:04:31,752 [1712875] INFO - #c.i.o.p.MergingQueueGuiExecutor - Task finished: (dumb mode task) com.intellij.openapi.roots.impl.PushedFilePropertiesUpdaterImpl$MyDumbModeTask@423a3c5 (reason: Push on VFS changes)
2024-12-17 11:04:31,802 [1712925] INFO - #c.i.o.p.DumbServiceImpl - exit dumb mode [Norva24 MSlam]
2024-12-17 11:04:31,908 [1713031] INFO - #o.j.p.g.GradleManager - Instructing gradle to use java from C:/Program Files/Android Studio/Android Studio 2024.2.2.7/jbr
2024-12-17 11:04:32,039 [1713162] INFO - #o.j.p.g.GradleManager - Instructing gradle to use java from C:/Program Files/Android Studio/Android Studio 2024.2.2.7/jbr
2024-12-17 11:04:55,832 [1736955] INFO - #com.android.studio.ml.aida.AidaMetrics - Completion CES response:
2024-12-17 11:07:25,597 [1886720] WARN - #c.i.i.a.CopyTBXReferenceAction - Cannot find TBX tool for IDE: AndroidStudio
Description
DESCRIBE THE ISSUE IN DETAIL:
We are trying to write a gradle plugin that supports Android. We'd like to create one gradle dependency configuration per sourceset, and then have a resolvable configuration (and gradle tasks) per variant. To do this, we need to know which android sourceSets are used by each variant.
In the old AGP APIs, we could use
variant.sourceSets
, and then use the sourceSet names to find the corresponding dependency configurations.In the new AGP APIs, the source set names are not exposed from variants, so it's hard to determine which configurations should used by each variant. We have to hardcode some naming convention and determine the 'hierarchy' of configurations ourselves.
For example, our gradle plugin might define dependency configurations like
pluginDeps
(the 'main' sourceset),debugPluginDeps
,androidTestPluginDeps
,androidTestDebugPluginDeps
, ... for our users. Then, we would define tasks per variant / testVariant, so fordebug
we might have:myDebugTask
which uses dependencies frompluginDeps
anddebugPluginDeps
(of course, not directly but through a resolvable configuration)myAndroidTestDebugTask
which uses all ofpluginDeps
,debugPluginDeps
,androidTestPluginDeps
,androidTestDebugPluginDeps
, etc.We'd rather be able to use the existing logic in AGP, than have to hardcode all those rules of how configurations are named and used by variants.