nrwl / nx-console

Nx Console is the user interface for Nx & Lerna.
https://nx.dev
MIT License
1.31k stars 210 forks source link

Crashes (plugin UI hangs) #1998

Closed RobvH closed 7 months ago

RobvH commented 7 months ago

Current Behavior

It detects a new workspace (using the plugin for the first time on an existing app). It starts to scan (or something), and then IntelliJ (PhpStorm (latest and last few versions) reports IDE error. Gives the stack trace below; says to report it to the vendor (you).

Expected Behavior

Expect it to scan the workspace of the application; and properly set up the NX Console UI.

Steps to Reproduce

It's just an existing Nx based repo. Not sure if this plugin has ever been used on it. Enable plugin, restart IDE, let it scan the new workspace; boom.

Failure Logs / Images / Videos

java.lang.NullPointerException: Parameter specified as non-null is null: method dev.nx.console.nx_toolwindow.tree.NxSimpleNode$Project., parameter nxProjectName at dev.nx.console.nx_toolwindow.tree.NxSimpleNode$Project.(NxSimpleNode.kt) at dev.nx.console.nx_toolwindow.tree.builder.NxFolderTreeBuilder.createFolderOrProjectNode(NxFolderTreeBuilder.kt:63) at dev.nx.console.nx_toolwindow.tree.builder.NxFolderTreeBuilder.buildChildren(NxFolderTreeBuilder.kt:24) at dev.nx.console.nx_toolwindow.tree.NxSimpleNode.buildChildren(NxSimpleNode.kt:33) at dev.nx.console.nx_toolwindow.tree.NxSimpleNode.buildChildren(NxSimpleNode.kt:9) at com.intellij.ui.treeStructure.CachingSimpleNode.getChildren(CachingSimpleNode.java:26) at com.intellij.ui.treeStructure.SimpleTreeStructure.getChildElements(SimpleTreeStructure.java:12) at com.intellij.ui.tree.StructureTreeModel.getValidChildren(StructureTreeModel.java:411) at com.intellij.ui.tree.StructureTreeModel.validateChildren(StructureTreeModel.java:329) at com.intellij.ui.tree.StructureTreeModel$Node.isModelLeaf(StructureTreeModel.java:584) at com.intellij.ui.tree.StructureTreeModel.isLeaf(StructureTreeModel.java:365) at com.intellij.ui.tree.LeafState.get(LeafState.java:62) at com.intellij.ui.tree.AsyncTreeModel$CmdGetChildren.load(AsyncTreeModel.java:645) at com.intellij.ui.tree.AsyncTreeModel$CmdGetChildren.load(AsyncTreeModel.java:624) at com.intellij.ui.tree.AsyncTreeModel$CmdGetChildren.computeNode(AsyncTreeModel.java:613) at com.intellij.ui.tree.AsyncTreeModel$Command.computeNode(AsyncTreeModel.java:489) at com.intellij.util.concurrency.Invoker$Task.run(Invoker.java:381) at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1075) at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:73) at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:73) at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:128) at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:111) at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:73) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:192) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:610) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:685) at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:641) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:609) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:78) at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:179) at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:73) at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:108) at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:73) at com.intellij.util.concurrency.Invoker.startTask(Invoker.java:238) at com.intellij.util.concurrency.Invoker.invokeSafely(Invoker.java:194) at com.intellij.util.concurrency.Invoker.lambda$offerSafely$0(Invoker.java:177) at com.intellij.util.concurrency.Invoker$Background.lambda$offer$0(Invoker.java:508) at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:244) at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:30) at com.intellij.util.concurrency.BoundedTaskExecutor$1.executeFirstTaskAndHelpQueue(BoundedTaskExecutor.java:222) at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:218) at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:210) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699) at java.base/java.lang.Thread.run(Thread.java:840)

Environment

macOS Ventura and Sonoma

   Node : 18.18.2
   OS   : darwin arm64
   npm  : 9.8.1

   nx : 12.10.1
   @nrwl/angular : undefined
   @nrwl/cli : 13.5.2
   @nrwl/cypress : 13.5.2
   @nrwl/detox : undefined
   @nrwl/devkit : 13.5.2
   @nrwl/eslint-plugin-nx : 13.5.2
   @nrwl/express : 13.5.2
   @nrwl/jest : 13.5.2
   @nrwl/js : 13.5.2
   @nrwl/linter : 13.5.2
   @nrwl/nest : undefined
   @nrwl/next : undefined
   @nrwl/node : 13.5.2
   @nrwl/nx-cloud : undefined
   @nrwl/react : 13.5.2
   @nrwl/react-native : undefined
   @nrwl/schematics : undefined
   @nrwl/storybook : 13.5.2
   @nrwl/tao : 13.5.2
   @nrwl/web : 13.5.2
   @nrwl/workspace : 13.5.2
   typescript : 4.9.5
   rxjs : 6.6.7
   ---------------------------------------
   Community plugins:
MaxKless commented 7 months ago

Hey @RobvH thanks for reporting this issue. Sadly, version 13.5.2 is older than what we support with Nx Console. Can you try upgrading to 14 or even just 13.10?

I will work on making this information more clearly accessible but close this issue in the meanwhile :)