Today I get this exception in my PyCharm with Odoo 12:
PyCharm 2020.3.2 (Professional Edition)
Build #PY-203.6682.179, built on December 30, 2020
Runtime version: 11.0.9.1+11-b1145.63 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 10.15.7
GC: ParNew, ConcurrentMarkSweep
Memory: 1933M
Cores: 12
Non-Bundled Plugins: Statistic, com.chesterccw.excelreader, com.intellij.ideolog, com.karateca.jstoolbox, net.seesharpsoft.intellij.plugins.csv, org.jetbrains.plugins.hocon, Gitflow, mobi.hsz.idea.gitignore, name.kropp.intellij.makefile, MetricsReloaded, dev.ngocta.pycharm-odoo, net.ashald.envfile, ru.adelf.idea.dotenv, XPathView
Exception:
`java.lang.Throwable: Non-idempotent computation: it returns different results when invoked multiple times or on different threads:
0 != 1
which is length of [] and [PyFunction('items')@0]
Recomputation gives [Lcom.intellij.psi.ResolveResult;@9d7a6f0 (class [Lcom.intellij.psi.ResolveResult;) which is equivalent to 'fresh'
Recomputation log:
Resolving PyQualifiedReference(PyReferenceExpression: items,com.jetbrains.python.psi.resolve.PyResolveContext@da265805) of class dev.ngocta.pycharm.odoo.python.psi.OdooPyQualifiedReference
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:159)
at com.intellij.util.IdempotenceChecker.reportFailure(IdempotenceChecker.java:88)
at com.intellij.util.IdempotenceChecker.checkEquivalence(IdempotenceChecker.java:75)
at com.intellij.psi.impl.source.resolve.ResolveCache.cache(ResolveCache.java:282)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:210)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:149)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:164)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:157)
at com.jetbrains.python.psi.impl.references.PyReferenceImpl.multiResolve(PyReferenceImpl.java:95)
at com.jetbrains.python.codeInsight.typing.PyTypedDictTypeProvider$Companion.getTypedDictTypeForCallee(PyTypedDictTypeProvider.kt:109)
at com.jetbrains.python.codeInsight.typing.PyTypedDictTypeProvider$Companion.access$getTypedDictTypeForCallee(PyTypedDictTypeProvider.kt:35)
at com.jetbrains.python.codeInsight.typing.PyTypedDictTypeProvider.getReferenceExpressionType(PyTypedDictTypeProvider.kt:28)
at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getTypeFromProviders(PyReferenceExpressionImpl.java:386)
at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getType(PyReferenceExpressionImpl.java:219)
at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169)
at com.jetbrains.python.psi.impl.PyCallExpressionHelper.resolveDunderCallMembers(PyCallExpressionHelper.java:248)
at com.jetbrains.python.psi.impl.PyCallExpressionHelper.getExplicitResolveResults(PyCallExpressionHelper.java:184)
at com.jetbrains.python.psi.impl.PyCallExpressionHelper.lambda$multiResolveCallee$0(PyCallExpressionHelper.java:159)
at com.jetbrains.python.psi.PyUtil.getNullableParameterizedCachedValue(PyUtil.java:668)
at com.jetbrains.python.psi.PyUtil.getParameterizedCachedValue(PyUtil.java:646)
at com.jetbrains.python.psi.impl.PyCallExpressionHelper.multiResolveCallee(PyCallExpressionHelper.java:155)
at com.jetbrains.python.psi.impl.PyCallExpressionHelper.getCallType(PyCallExpressionHelper.java:538)
at com.jetbrains.python.psi.impl.PyCallExpressionImpl.getType(PyCallExpressionImpl.java:61)
at dev.ngocta.pycharm.odoo.python.psi.OdooPyCallExpression.getType(OdooPyCallExpression.java:67)
at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169)
at com.jetbrains.python.psi.impl.PyTargetExpressionImpl.getTypeFromIteration(PyTargetExpressionImpl.java:351)
at com.jetbrains.python.psi.impl.PyTargetExpressionImpl.getType(PyTargetExpressionImpl.java:205)
at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169)
at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getGenericTypeFromTarget(PyReferenceExpressionImpl.java:470)
at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getTypeFromTarget(PyReferenceExpressionImpl.java:402)
at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getTypeFromTargets(PyReferenceExpressionImpl.java:313)
at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getType(PyReferenceExpressionImpl.java:231)
at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169)
at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getTypeByModifications(PyCollectionTypeUtil.kt:253)
at com.jetbrains.python.psi.types.PyCollectionTypeUtil.access$getTypeByModifications(PyCollectionTypeUtil.kt:17)
at com.jetbrains.python.psi.types.PyCollectionTypeUtil$PyDictTypeVisitor.visitPySubscriptionExpression(PyCollectionTypeUtil.kt:410)
at com.jetbrains.python.psi.impl.PySubscriptionExpressionImpl.acceptPyVisitor(PySubscriptionExpressionImpl.java:72)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyAssignmentStatement(PyElementVisitor.java:106)
at com.jetbrains.python.psi.impl.PyAssignmentStatementImpl.acceptPyVisitor(PyAssignmentStatementImpl.java:38)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyConditionalStatementPart(PyElementVisitor.java:270)
at com.jetbrains.python.psi.impl.PyConditionalStatementPartImpl.acceptPyVisitor(PyConditionalStatementPartImpl.java:26)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyIfStatement(PyElementVisitor.java:150)
at com.jetbrains.python.psi.impl.PyIfStatementImpl.acceptPyVisitor(PyIfStatementImpl.java:22)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyConditionalStatementPart(PyElementVisitor.java:270)
at com.jetbrains.python.psi.impl.PyConditionalStatementPartImpl.acceptPyVisitor(PyConditionalStatementPartImpl.java:26)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyIfStatement(PyElementVisitor.java:150)
at com.jetbrains.python.psi.impl.PyIfStatementImpl.acceptPyVisitor(PyIfStatementImpl.java:22)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyConditionalStatementPart(PyElementVisitor.java:270)
at com.jetbrains.python.psi.impl.PyConditionalStatementPartImpl.acceptPyVisitor(PyConditionalStatementPartImpl.java:26)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyIfStatement(PyElementVisitor.java:150)
at com.jetbrains.python.psi.impl.PyIfStatementImpl.acceptPyVisitor(PyIfStatementImpl.java:22)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154)
at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154)
at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154)
at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170)
at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154)
at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198)
at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69)
at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14)
at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26)
at com.jetbrains.python.psi.PyElementVisitor.visitPyFunction(PyElementVisitor.java:206)
at com.jetbrains.python.psi.types.PyCollectionTypeUtil$PyCollectionTypeVisitor.visitPyFunction(PyCollectionTypeUtil.kt:285)
at com.jetbrains.python.psi.impl.PyFunctionImpl.acceptPyVisitor(PyFunctionImpl.java:551)
at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69)
at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getCollectionTypeByModifications(PyCollectionTypeUtil.kt:148)
at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getDictElementTypesWithModifications(PyCollectionTypeUtil.kt:123)
at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getTypeByModifications(PyCollectionTypeUtil.kt:44)
at com.jetbrains.python.psi.impl.PyBuiltinCache.createLiteralCollectionType(PyBuiltinCache.java:172)
at com.jetbrains.python.psi.impl.PyDictLiteralExpressionImpl.getType(PyDictLiteralExpressionImpl.java:28)
at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180)
at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169)
at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getClassType(PyTypingTypeProvider.java:908)
at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getTypeForResolvedElement(PyTypingTypeProvider.java:814)
at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getType(PyTypingTypeProvider.java:724)
at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getParameterizedType(PyTypingTypeProvider.java:1335)
at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getTypeForResolvedElement(PyTypingTypeProvider.java:781)
at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getType(PyTypingTypeProvider.java:724)
at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getType(PyTypingTypeProvider.java:716)
at com.jetbrains.python.codeInsight.typing.PyTypingAnnotationInjector.isTypingLiteralArgument(PyTypingAnnotationInjector.java:113)
at com.jetbrains.python.codeInsight.typing.PyTypingAnnotationInjector.getInjectedLanguage(PyTypingAnnotationInjector.java:59)
at com.jetbrains.python.codeInsight.PyInjectorBase.registerInjection(PyInjectorBase.java:46)
at com.jetbrains.python.codeInsight.typing.PyTypingAnnotationInjector.registerInjection(PyTypingAnnotationInjector.java:42)
at com.jetbrains.python.codeInsight.PyInjectorBase.getLanguagesToInject(PyInjectorBase.java:33)
at com.intellij.psi.impl.source.tree.injected.InjectedLanguageManagerImpl.processInPlaceInjectorsFor(InjectedLanguageManagerImpl.java:418)
at com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtilBase.probeElementsUp(InjectedLanguageUtilBase.java:207)
at com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtilBase.enumerate(InjectedLanguageUtilBase.java:137)
at com.intellij.psi.impl.source.tree.injected.InjectedLanguageManagerImpl.enumerateEx(InjectedLanguageManagerImpl.java:318)
at com.intellij.codeInsight.daemon.impl.InjectedGeneralHighlightingPass.lambda$getInjectedPsiFiles$3(InjectedGeneralHighlightingPass.java:198)
at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:136)
at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:149)
at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:149)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1132)
at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$1(ApplierCompleter.java:92)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:658)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:610)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:65)
at com.intellij.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:104)
at com.intellij.concurrency.ApplierCompleter.lambda$compute$0(ApplierCompleter.java:83)
at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:172)
at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:183)
at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:83)
at com.intellij.concurrency.JobLauncherImpl.invokeConcurrentlyUnderProgress(JobLauncherImpl.java:61)
at com.intellij.concurrency.JobLauncher.invokeConcurrentlyUnderProgress(JobLauncher.java:48)
at com.intellij.codeInsight.daemon.impl.InjectedGeneralHighlightingPass.getInjectedPsiFiles(InjectedGeneralHighlightingPass.java:195)
at com.intellij.codeInsight.daemon.impl.InjectedGeneralHighlightingPass.collectInformationWithProgress(InjectedGeneralHighlightingPass.java:86)
at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:84)
at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:56)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$1(PassExecutorService.java:400)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1137)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:393)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:658)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:610)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:65)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:392)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:368)
at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:172)
at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:183)
at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:366)
at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:188)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)`
Today I get this exception in my PyCharm with Odoo 12:
PyCharm 2020.3.2 (Professional Edition) Build #PY-203.6682.179, built on December 30, 2020 Runtime version: 11.0.9.1+11-b1145.63 x86_64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. macOS 10.15.7 GC: ParNew, ConcurrentMarkSweep Memory: 1933M Cores: 12 Non-Bundled Plugins: Statistic, com.chesterccw.excelreader, com.intellij.ideolog, com.karateca.jstoolbox, net.seesharpsoft.intellij.plugins.csv, org.jetbrains.plugins.hocon, Gitflow, mobi.hsz.idea.gitignore, name.kropp.intellij.makefile, MetricsReloaded, dev.ngocta.pycharm-odoo, net.ashald.envfile, ru.adelf.idea.dotenv, XPathView
Exception:
`java.lang.Throwable: Non-idempotent computation: it returns different results when invoked multiple times or on different threads: 0 != 1 which is length of [] and [PyFunction('items')@0]
Recomputation gives [Lcom.intellij.psi.ResolveResult;@9d7a6f0 (class [Lcom.intellij.psi.ResolveResult;) which is equivalent to 'fresh' Recomputation log: Resolving PyQualifiedReference(PyReferenceExpression: items,com.jetbrains.python.psi.resolve.PyResolveContext@da265805) of class dev.ngocta.pycharm.odoo.python.psi.OdooPyQualifiedReference at com.intellij.openapi.diagnostic.Logger.error(Logger.java:159) at com.intellij.util.IdempotenceChecker.reportFailure(IdempotenceChecker.java:88) at com.intellij.util.IdempotenceChecker.checkEquivalence(IdempotenceChecker.java:75) at com.intellij.psi.impl.source.resolve.ResolveCache.cache(ResolveCache.java:282) at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:210) at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:149) at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:164) at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:157) at com.jetbrains.python.psi.impl.references.PyReferenceImpl.multiResolve(PyReferenceImpl.java:95) at com.jetbrains.python.codeInsight.typing.PyTypedDictTypeProvider$Companion.getTypedDictTypeForCallee(PyTypedDictTypeProvider.kt:109) at com.jetbrains.python.codeInsight.typing.PyTypedDictTypeProvider$Companion.access$getTypedDictTypeForCallee(PyTypedDictTypeProvider.kt:35) at com.jetbrains.python.codeInsight.typing.PyTypedDictTypeProvider.getReferenceExpressionType(PyTypedDictTypeProvider.kt:28) at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getTypeFromProviders(PyReferenceExpressionImpl.java:386) at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getType(PyReferenceExpressionImpl.java:219) at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180) at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111) at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42) at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68) at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169) at com.jetbrains.python.psi.impl.PyCallExpressionHelper.resolveDunderCallMembers(PyCallExpressionHelper.java:248) at com.jetbrains.python.psi.impl.PyCallExpressionHelper.getExplicitResolveResults(PyCallExpressionHelper.java:184) at com.jetbrains.python.psi.impl.PyCallExpressionHelper.lambda$multiResolveCallee$0(PyCallExpressionHelper.java:159) at com.jetbrains.python.psi.PyUtil.getNullableParameterizedCachedValue(PyUtil.java:668) at com.jetbrains.python.psi.PyUtil.getParameterizedCachedValue(PyUtil.java:646) at com.jetbrains.python.psi.impl.PyCallExpressionHelper.multiResolveCallee(PyCallExpressionHelper.java:155) at com.jetbrains.python.psi.impl.PyCallExpressionHelper.getCallType(PyCallExpressionHelper.java:538) at com.jetbrains.python.psi.impl.PyCallExpressionImpl.getType(PyCallExpressionImpl.java:61) at dev.ngocta.pycharm.odoo.python.psi.OdooPyCallExpression.getType(OdooPyCallExpression.java:67) at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180) at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111) at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42) at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68) at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169) at com.jetbrains.python.psi.impl.PyTargetExpressionImpl.getTypeFromIteration(PyTargetExpressionImpl.java:351) at com.jetbrains.python.psi.impl.PyTargetExpressionImpl.getType(PyTargetExpressionImpl.java:205) at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180) at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111) at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42) at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68) at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169) at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getGenericTypeFromTarget(PyReferenceExpressionImpl.java:470) at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getTypeFromTarget(PyReferenceExpressionImpl.java:402) at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getTypeFromTargets(PyReferenceExpressionImpl.java:313) at com.jetbrains.python.psi.impl.PyReferenceExpressionImpl.getType(PyReferenceExpressionImpl.java:231) at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180) at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111) at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42) at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68) at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169) at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getTypeByModifications(PyCollectionTypeUtil.kt:253) at com.jetbrains.python.psi.types.PyCollectionTypeUtil.access$getTypeByModifications(PyCollectionTypeUtil.kt:17) at com.jetbrains.python.psi.types.PyCollectionTypeUtil$PyDictTypeVisitor.visitPySubscriptionExpression(PyCollectionTypeUtil.kt:410) at com.jetbrains.python.psi.impl.PySubscriptionExpressionImpl.acceptPyVisitor(PySubscriptionExpressionImpl.java:72) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyAssignmentStatement(PyElementVisitor.java:106) at com.jetbrains.python.psi.impl.PyAssignmentStatementImpl.acceptPyVisitor(PyAssignmentStatementImpl.java:38) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyConditionalStatementPart(PyElementVisitor.java:270) at com.jetbrains.python.psi.impl.PyConditionalStatementPartImpl.acceptPyVisitor(PyConditionalStatementPartImpl.java:26) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyIfStatement(PyElementVisitor.java:150) at com.jetbrains.python.psi.impl.PyIfStatementImpl.acceptPyVisitor(PyIfStatementImpl.java:22) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyConditionalStatementPart(PyElementVisitor.java:270) at com.jetbrains.python.psi.impl.PyConditionalStatementPartImpl.acceptPyVisitor(PyConditionalStatementPartImpl.java:26) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyIfStatement(PyElementVisitor.java:150) at com.jetbrains.python.psi.impl.PyIfStatementImpl.acceptPyVisitor(PyIfStatementImpl.java:22) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyConditionalStatementPart(PyElementVisitor.java:270) at com.jetbrains.python.psi.impl.PyConditionalStatementPartImpl.acceptPyVisitor(PyConditionalStatementPartImpl.java:26) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyIfStatement(PyElementVisitor.java:150) at com.jetbrains.python.psi.impl.PyIfStatementImpl.acceptPyVisitor(PyIfStatementImpl.java:22) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154) at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154) at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154) at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.impl.PyBaseElementImpl.acceptPyVisitor(PyBaseElementImpl.java:77) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatement(PyElementVisitor.java:170) at com.jetbrains.python.psi.PyElementVisitor.visitPyForStatement(PyElementVisitor.java:154) at com.jetbrains.python.psi.impl.PyForStatementImpl.acceptPyVisitor(PyForStatementImpl.java:21) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyStatementList(PyElementVisitor.java:198) at com.jetbrains.python.psi.impl.PyStatementListImpl.acceptPyVisitor(PyStatementListImpl.java:25) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.intellij.psi.impl.PsiElementBase.acceptChildren(PsiElementBase.java:69) at com.jetbrains.python.psi.PyRecursiveElementVisitor.visitElement(PyRecursiveElementVisitor.java:14) at com.jetbrains.python.psi.PyElementVisitor.visitPyElement(PyElementVisitor.java:26) at com.jetbrains.python.psi.PyElementVisitor.visitPyFunction(PyElementVisitor.java:206) at com.jetbrains.python.psi.types.PyCollectionTypeUtil$PyCollectionTypeVisitor.visitPyFunction(PyCollectionTypeUtil.kt:285) at com.jetbrains.python.psi.impl.PyFunctionImpl.acceptPyVisitor(PyFunctionImpl.java:551) at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:69) at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getCollectionTypeByModifications(PyCollectionTypeUtil.kt:148) at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getDictElementTypesWithModifications(PyCollectionTypeUtil.kt:123) at com.jetbrains.python.psi.types.PyCollectionTypeUtil.getTypeByModifications(PyCollectionTypeUtil.kt:44) at com.jetbrains.python.psi.impl.PyBuiltinCache.createLiteralCollectionType(PyBuiltinCache.java:172) at com.jetbrains.python.psi.impl.PyDictLiteralExpressionImpl.getType(PyDictLiteralExpressionImpl.java:28) at com.jetbrains.python.psi.types.TypeEvalContext.lambda$getType$0(TypeEvalContext.java:180) at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111) at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:42) at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68) at com.jetbrains.python.psi.types.TypeEvalContext.getType(TypeEvalContext.java:169) at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getClassType(PyTypingTypeProvider.java:908) at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getTypeForResolvedElement(PyTypingTypeProvider.java:814) at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getType(PyTypingTypeProvider.java:724) at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getParameterizedType(PyTypingTypeProvider.java:1335) at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getTypeForResolvedElement(PyTypingTypeProvider.java:781) at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getType(PyTypingTypeProvider.java:724) at com.jetbrains.python.codeInsight.typing.PyTypingTypeProvider.getType(PyTypingTypeProvider.java:716) at com.jetbrains.python.codeInsight.typing.PyTypingAnnotationInjector.isTypingLiteralArgument(PyTypingAnnotationInjector.java:113) at com.jetbrains.python.codeInsight.typing.PyTypingAnnotationInjector.getInjectedLanguage(PyTypingAnnotationInjector.java:59) at com.jetbrains.python.codeInsight.PyInjectorBase.registerInjection(PyInjectorBase.java:46) at com.jetbrains.python.codeInsight.typing.PyTypingAnnotationInjector.registerInjection(PyTypingAnnotationInjector.java:42) at com.jetbrains.python.codeInsight.PyInjectorBase.getLanguagesToInject(PyInjectorBase.java:33) at com.intellij.psi.impl.source.tree.injected.InjectedLanguageManagerImpl.processInPlaceInjectorsFor(InjectedLanguageManagerImpl.java:418) at com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtilBase.probeElementsUp(InjectedLanguageUtilBase.java:207) at com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtilBase.enumerate(InjectedLanguageUtilBase.java:137) at com.intellij.psi.impl.source.tree.injected.InjectedLanguageManagerImpl.enumerateEx(InjectedLanguageManagerImpl.java:318) at com.intellij.codeInsight.daemon.impl.InjectedGeneralHighlightingPass.lambda$getInjectedPsiFiles$3(InjectedGeneralHighlightingPass.java:198) at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:136) at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:149) at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:149) at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1132) at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$1(ApplierCompleter.java:92) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:658) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:610) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:65) at com.intellij.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:104) at com.intellij.concurrency.ApplierCompleter.lambda$compute$0(ApplierCompleter.java:83) at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:172) at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:183) at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:83) at com.intellij.concurrency.JobLauncherImpl.invokeConcurrentlyUnderProgress(JobLauncherImpl.java:61) at com.intellij.concurrency.JobLauncher.invokeConcurrentlyUnderProgress(JobLauncher.java:48) at com.intellij.codeInsight.daemon.impl.InjectedGeneralHighlightingPass.getInjectedPsiFiles(InjectedGeneralHighlightingPass.java:195) at com.intellij.codeInsight.daemon.impl.InjectedGeneralHighlightingPass.collectInformationWithProgress(InjectedGeneralHighlightingPass.java:86) at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:84) at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:56) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$1(PassExecutorService.java:400) at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1137) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:393) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:658) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:610) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:65) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:392) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:368) at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:172) at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:183) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:366) at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:188) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)`