strawberry-graphql/strawberry-pycharm-plugin

Plugin stopped working with the latest version of PyCharm 2022.3

Closed this issue · 5 comments

General Info

Since the update of PyCharm to version 2022.3 the plugin stopped working, crashing on start and blocking the indexing of project files.

Describe the Bug

  • Error 1:

    java.lang.NoClassDefFoundError
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
        at java.base/java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:564)
        at java.base/java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:591)
        at java.base/java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:672)
        at com.intellij.concurrency.JobLauncherImpl.processQueue(JobLauncherImpl.java:360)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.processInOrder(InspectionRunner.java:300)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.visitElements(InspectionRunner.java:275)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$inspect$4(InspectionRunner.java:129)
        at com.intellij.codeInspection.InspectionEngine.withSession(InspectionEngine.java:226)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.inspect(InspectionRunner.java:116)
        at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.collectInformationWithProgress(LocalInspectionsPass.java:117)
        at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:97)
        at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:57)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$1(PassExecutorService.java:405)
        at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1086)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:397)
        at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:591)
        at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:666)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:622)
        at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:590)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:396)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:372)
        at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:174)
        at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:182)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:370)
        at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:181)
        at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
        at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
        at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
        at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
        at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
    Caused by: java.lang.NoClassDefFoundError: com/jetbrains/python/codeInsight/PyDataclassParametersProvider$DefaultImpls
        at rocks.strawberry.StrawberryParametersProvider.getDataclassParameters(StrawberryParametersProvider.kt:11)
        at com.jetbrains.python.codeInsight.PyDataclassesKt$parseDataclassParametersFromAST$provided$1.invoke(PyDataclasses.kt:172)
        at com.jetbrains.python.codeInsight.PyDataclassesKt$parseDataclassParametersFromAST$provided$1.invoke(PyDataclasses.kt:171)
        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:168)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParametersFromAST(PyDataclasses.kt:173)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParameters$lambda-4$lambda-2(PyDataclasses.kt:118)
        at com.jetbrains.python.psi.impl.StubAwareComputation.compute(StubAwareComputation.java:234)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParameters$lambda-4(PyDataclasses.kt:120)
        at com.jetbrains.python.psi.PyUtil.getNullableParameterizedCachedValue(PyUtil.java:675)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParameters(PyDataclasses.kt:114)
        at com.jetbrains.python.inspections.PyDataclassInspection$Visitor.visitPyClass(PyDataclassInspection.kt:65)
        at com.jetbrains.python.psi.impl.PyClassImpl.acceptPyVisitor(PyClassImpl.java:135)
        at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:61)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$9(InspectionRunner.java:324)
        at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1086)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$10(InspectionRunner.java:332)
        at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:174)
        at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:182)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$11(InspectionRunner.java:338)
        at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:159)
        at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:151)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$12(InspectionRunner.java:301)
        at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:130)
        at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:119)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$13(InspectionRunner.java:301)
        at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.lambda$call$0(JobLauncherImpl.java:299)
        at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:591)
        at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:666)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:622)
        at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:590)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
        at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.call(JobLauncherImpl.java:284)
        at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.call(JobLauncherImpl.java:272)
        at java.base/java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1428)
        ... 5 more
    Caused by: java.lang.ClassNotFoundException: com.jetbrains.python.codeInsight.PyDataclassParametersProvider$DefaultImpls PluginClassLoader(plugin=PluginDescriptor(name=Strawberry GraphQL, id=rocks.strawberry, descriptorPath=plugin.xml, path=~/.local/share/JetBrains/PyCharm2022.3/strawberry-pycharm-plugin, version=0.0.8, package=null, isBundled=false), packagePrefix=null, instanceId=132, state=active)
        ... 42 more
    
    
  • Error 2:

    java.lang.NoClassDefFoundError
        at java.base/jdk.internal.reflect.GeneratedConstructorAccessor110.newInstance(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
        at java.base/java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:564)
        at java.base/java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:591)
        at java.base/java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:672)
        at com.intellij.concurrency.JobLauncherImpl.processQueue(JobLauncherImpl.java:360)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.processInOrder(InspectionRunner.java:300)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.visitElements(InspectionRunner.java:275)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$inspect$4(InspectionRunner.java:129)
        at com.intellij.codeInspection.InspectionEngine.withSession(InspectionEngine.java:226)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.inspect(InspectionRunner.java:116)
        at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.collectInformationWithProgress(LocalInspectionsPass.java:117)
        at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:97)
        at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:57)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$1(PassExecutorService.java:405)
        at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1086)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:397)
        at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:591)
        at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:666)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:622)
        at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:590)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:396)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:372)
        at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:174)
        at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:182)
        at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:370)
        at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:181)
        at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
        at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
        at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
        at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
        at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
    Caused by: java.lang.NoClassDefFoundError: com/jetbrains/python/codeInsight/PyDataclassParametersProvider$DefaultImpls
        at rocks.strawberry.StrawberryParametersProvider.getDataclassParameters(StrawberryParametersProvider.kt:11)
        at com.jetbrains.python.codeInsight.PyDataclassesKt$parseDataclassParametersFromAST$provided$1.invoke(PyDataclasses.kt:172)
        at com.jetbrains.python.codeInsight.PyDataclassesKt$parseDataclassParametersFromAST$provided$1.invoke(PyDataclasses.kt:171)
        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:168)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParametersFromAST(PyDataclasses.kt:173)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParameters$lambda-4$lambda-2(PyDataclasses.kt:118)
        at com.jetbrains.python.psi.impl.StubAwareComputation.compute(StubAwareComputation.java:234)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParameters$lambda-4(PyDataclasses.kt:120)
        at com.jetbrains.python.psi.PyUtil.getNullableParameterizedCachedValue(PyUtil.java:675)
        at com.jetbrains.python.codeInsight.PyDataclassesKt.parseDataclassParameters(PyDataclasses.kt:114)
        at com.jetbrains.python.inspections.PyDataclassInspection$Visitor.visitPyClass(PyDataclassInspection.kt:65)
        at com.jetbrains.python.psi.impl.PyClassImpl.acceptPyVisitor(PyClassImpl.java:135)
        at com.jetbrains.python.psi.impl.PyBaseElementImpl.accept(PyBaseElementImpl.java:61)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$9(InspectionRunner.java:324)
        at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1086)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$10(InspectionRunner.java:332)
        at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:174)
        at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:182)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$11(InspectionRunner.java:338)
        at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:159)
        at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:151)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$12(InspectionRunner.java:301)
        at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:130)
        at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:119)
        at com.intellij.codeInsight.daemon.impl.InspectionRunner.lambda$processInOrder$13(InspectionRunner.java:301)
        at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.lambda$call$0(JobLauncherImpl.java:299)
        at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:591)
        at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:666)
        at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:622)
        at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:590)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
        at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.call(JobLauncherImpl.java:284)
        at com.intellij.concurrency.JobLauncherImpl$1MyProcessQueueTask.call(JobLauncherImpl.java:272)
        at java.base/java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1428)
        ... 5 more
    Caused by: java.lang.ClassNotFoundException: com.jetbrains.python.codeInsight.PyDataclassParametersProvider$DefaultImpls PluginClassLoader(plugin=PluginDescriptor(name=Strawberry GraphQL, id=rocks.strawberry, descriptorPath=plugin.xml, path=~/.local/share/JetBrains/PyCharm2022.3/strawberry-pycharm-plugin, version=0.0.8, package=null, isBundled=false), packagePrefix=null, instanceId=132, state=active)
        ... 42 more
    
    

System Information

  • Operating system: Ubuntu 20.04 / 22.04
  • Build:
    Build #PY-223.7571.203, built on November 30, 2022
    
    Runtime version: 17.0.5+1-b653.14 amd64
    VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
    

Yep, I have the same problem. This error crashes the whole IDE and leads to broken (no more existing) autocomplete. Have to disable this plugin to get a working IDE again :/

Win10
Build #PY-223.7571.203, built on November 30, 2022
Runtime version: 17.0.5+1-b653.14 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.

I'll take a look at this during the next few days :)

I will check it this week.

I'll re-close this PR once I made the release, thanks @koxudaxi for the PR! <3

This should be fixed and released now!