gtache / intellij-lsp

Plugin adding Language Server Protocol support for IntelliJ

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

"Reformat Code" doesn't work anymore when LSP plugin is activated

vobu opened this issue · comments

related issue: #44

"Reformat Code" (at least HTML + JS) doesn't work any more once the lsp plugin is activated.

macOS 10.14.5
WebStorm 2019.1.3, Build #WS-191.7479.14, built on May 27, 2019
JRE: 1.8.0_202-release-1483-b53 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

What is happening exactly? Nothing happens and no errors are thrown?

exactly - formatting doesn't work anymore, neither via keyboard shortcut nor via the menu option. also, no error msg what so ever.
when i disable the lsp plugin, formatting is working again.
i'll attach a lsp.out file later from a time period where i try to reformat with plugin active. maybe that contains a clue. also, i'll post my lsp config.

ok, so finally an exception occured while turning on the plugin :)
However, even with my limited Java knowledge, this doesn't look like the root cause to the formatting issue.
Still, here's the output:

cannot dispose configurable

java.lang.IllegalArgumentException: Parameter specified as non-null is null: method com.intellij.openapi.project.ProjectUtil.guessProjectDir, parameter receiver$0
	at com.intellij.openapi.project.ProjectUtil.guessProjectDir(ProjectUtil.kt)
	at com.github.gtache.lsp.utils.FileUtils$.editorToProjectFolderPath(FileUtils.scala:153)
	at com.github.gtache.lsp.utils.FileUtils$.editorToProjectFolderUri(FileUtils.scala:149)
	at com.github.gtache.lsp.client.languageserver.wrapper.LanguageServerWrapperImpl$.forEditor(LanguageServerWrapperImpl.scala:50)
	at com.github.gtache.lsp.PluginMain$.editorClosed(PluginMain.scala:275)
	at com.github.gtache.lsp.editor.listeners.EditorListener.editorReleased(EditorListener.scala:15)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.intellij.util.EventDispatcher.dispatchVoidMethod(EventDispatcher.java:132)
	at com.intellij.util.EventDispatcher.access$000(EventDispatcher.java:26)
	at com.intellij.util.EventDispatcher$1.invoke(EventDispatcher.java:90)
	at com.sun.proxy.$Proxy89.editorReleased(Unknown Source)
	at com.intellij.openapi.editor.impl.EditorFactoryImpl.releaseEditor(EditorFactoryImpl.java:217)
	at org.intellij.plugins.markdown.settings.MarkdownSettingsForm.dispose(MarkdownSettingsForm.java:285)
	at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:48)
	at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:44)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:214)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeUnregistered(ObjectTree.java:227)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeAll(ObjectTree.java:153)
	at com.intellij.openapi.util.Disposer.dispose(Disposer.java:129)
	at com.intellij.openapi.util.Disposer.dispose(Disposer.java:125)
	at org.intellij.plugins.markdown.settings.MarkdownSettingsConfigurable.disposeUIResources(MarkdownSettingsConfigurable.java:119)
	at com.intellij.openapi.options.ex.ConfigurableWrapper.disposeUIResources(ConfigurableWrapper.java:177)
	at com.intellij.openapi.options.ex.ConfigurableCardPanel.dispose(ConfigurableCardPanel.java:109)
	at com.intellij.openapi.options.ex.ConfigurableCardPanel.dispose(ConfigurableCardPanel.java:35)
	at com.intellij.ui.CardLayoutPanel.removeAll(CardLayoutPanel.java:195)
	at com.intellij.ui.CardLayoutPanel.dispose(CardLayoutPanel.java:71)
	at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:48)
	at com.intellij.openapi.util.Disposer$1.execute(Disposer.java:44)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:136)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:214)
	at com.intellij.openapi.util.objectTree.ObjectNode.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:125)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:214)
	at com.intellij.openapi.util.objectTree.ObjectNode.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:125)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:214)
	at com.intellij.openapi.util.objectTree.ObjectNode.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:125)
	at com.intellij.openapi.util.objectTree.ObjectNode$1.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeActionWithRecursiveGuard(ObjectTree.java:214)
	at com.intellij.openapi.util.objectTree.ObjectNode.execute(ObjectNode.java:105)
	at com.intellij.openapi.util.objectTree.ObjectTree.executeAll(ObjectTree.java:162)
	at com.intellij.openapi.util.Disposer.dispose(Disposer.java:129)
	at com.intellij.openapi.util.Disposer.dispose(Disposer.java:125)
	at com.intellij.openapi.ui.DialogWrapper.close(DialogWrapper.java:430)
	at com.intellij.openapi.ui.DialogWrapper.close(DialogWrapper.java:435)
	at com.intellij.openapi.ui.DialogWrapper.doOKAction(DialogWrapper.java:1029)
	at com.intellij.openapi.options.newEditor.SettingsDialog.applyAndClose(SettingsDialog.java:178)
	at com.intellij.openapi.options.newEditor.SettingsDialog.doOKAction(SettingsDialog.java:170)
	at com.intellij.openapi.ui.DialogWrapper$OkAction.doAction(DialogWrapper.java:1875)
	at com.intellij.openapi.ui.DialogWrapper$DialogWrapperAction.actionPerformed(DialogWrapper.java:1835)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6550)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
	at java.awt.Component.processEvent(Component.java:6315)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4899)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4721)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4721)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:739)
	at java.awt.EventQueue$4.run(EventQueue.java:737)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:736)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:729)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:674)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:373)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
	at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235)
	at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233)
	at java.awt.Dialog.show(Dialog.java:1077)
	at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:706)
	at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:437)
	at com.intellij.openapi.ui.DialogWrapper.invokeShow(DialogWrapper.java:1682)
	at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1631)
	at com.intellij.openapi.options.newEditor.SettingsDialog.lambda$show$0(SettingsDialog.java:73)
	at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:88)
	at com.intellij.openapi.application.TransactionGuardImpl.submitTransactionAndWait(TransactionGuardImpl.java:153)
	at com.intellij.openapi.options.newEditor.SettingsDialog.show(SettingsDialog.java:73)
	at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:84)
	at com.intellij.ide.actions.ShowSettingsAction.perform(ShowSettingsAction.java:54)
	at com.intellij.ide.MacOSApplicationProvider$Worker.lambda$null$1(MacOSApplicationProvider.java:104)
	at com.intellij.ide.MacOSApplicationProvider$Worker.lambda$submit$7(MacOSApplicationProvider.java:177)
	at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:88)
	at com.intellij.openapi.application.TransactionGuardImpl.lambda$pollQueueLater$0(TransactionGuardImpl.java:74)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:435)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:419)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:403)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:764)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:734)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:729)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:678)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:373)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

then, as promised, here's the LSP log output - error log was empty though :(
context: I edited a watched file that is attached to the LSP, then went over to a js file in the same dir and tried re-formatting it, both w/ shortcut and via menu option (which as expected both didn't work).
cds_out_20190703.log

and here's my LSP config, via a screenshot
image

Facing the same problem: when LSP plugin enabled, Code > Reformat code does not work.

The lsp/log/*.log files do not contain any errors, as well as the main PHPStrom log located with Help > Show log in finder.

Reproduces on both existing and newly-created with File > New project PHP projects.

I've tried to disable all PhpStorm plugins except the bundled ones, but the problem still remains.

Currently using PhpStorm 2020.1.2 build 201.7648.90 dd 03.06.2020