idok/sass-lint-plugin

IllegalArgumentException when opening settings in PhpStorm 2016.2

Closed this issue · 5 comments

Great plugin, but since upgrading to PhpStorm 2016.2 we're experiencing the following error after configuring the Sass Lint plugin and opening Storm's settings afterwards:

IllegalArgumentException: cannot create configurable component: path doesn't exist

Also .idea/sasslintPlugin.xml loses it's path configuration after that.

Our work-around was to change the XML file's permission to read-only, but maybe there's a better way to fix this in a future update. Thanks! :)

I run into the same issue. Webstorm 2016.2 throws following error:

cannot create configurable component: path doesn't exist
java.lang.IllegalArgumentException: path doesn't exist
    at com.wix.nodejs.NodeRunner.createCommandLine(NodeRunner.java:40)
    at com.sasslint.cli.SassLintRunner.createCommandLine(SassLintRunner.java:99)
    at com.sasslint.cli.SassLintRunner.version(SassLintRunner.java:79)
    at com.sasslint.cli.SassLintRunner.runVersion(SassLintRunner.java:90)
    at com.sasslint.settings.SassLintSettingsPage.getVersion(SassLintSettingsPage.java:185)
    at com.sasslint.settings.SassLintSettingsPage.validate(SassLintSettingsPage.java:165)
    at com.sasslint.settings.SassLintSettingsPage.update(SassLintSettingsPage.java:126)
    at com.sasslint.settings.SassLintSettingsPage.access$300(SassLintSettingsPage.java:39)
    at com.sasslint.settings.SassLintSettingsPage$4.run(SassLintSettingsPage.java:119)
    at com.intellij.util.ui.UIUtil.invokeLaterIfNeeded(UIUtil.java:2397)
    at com.sasslint.settings.SassLintSettingsPage.updateLaterInEDT(SassLintSettingsPage.java:117)
    at com.sasslint.settings.SassLintSettingsPage.access$200(SassLintSettingsPage.java:39)
    at com.sasslint.settings.SassLintSettingsPage$3.textChanged(SassLintSettingsPage.java:103)
    at com.intellij.ui.DocumentAdapter.insertUpdate(DocumentAdapter.java:27)
    at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201)
    at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748)
    at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707)
    at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
    at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:669)
    at javax.swing.text.JTextComponent.setText(JTextComponent.java:1669)
    at javax.swing.plaf.basic.BasicComboBoxEditor$BorderlessTextField.setText(BasicComboBoxEditor.java:144)
    at com.intellij.ui.TextFieldWithHistory.setText(TextFieldWithHistory.java:77)
    at com.sasslint.settings.SassLintSettingsPage.loadSettings(SassLintSettingsPage.java:291)
    at com.sasslint.settings.SassLintSettingsPage.createComponent(SassLintSettingsPage.java:249)
    at com.intellij.openapi.options.ex.ConfigurableCardPanel$1.compute(ConfigurableCardPanel.java:71)
    at com.intellij.openapi.options.ex.ConfigurableCardPanel$1.compute(ConfigurableCardPanel.java:65)
    at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:866)
    at com.intellij.openapi.options.ex.ConfigurableCardPanel.create(ConfigurableCardPanel.java:65)
    at com.intellij.openapi.options.newEditor.ConfigurableEditor$1.create(ConfigurableEditor.java:70)
    at com.intellij.openapi.options.newEditor.ConfigurableEditor$1.create(ConfigurableEditor.java:67)
    at com.intellij.ui.CardLayoutPanel.a(CardLayoutPanel.java:88)
    at com.intellij.ui.CardLayoutPanel.b(CardLayoutPanel.java:116)
    at com.intellij.ui.CardLayoutPanel.a(CardLayoutPanel.java:132)
    at com.intellij.openapi.application.TransactionGuardImpl$6.run(TransactionGuardImpl.java:291)
    at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.a(LaterInvocator.java:326)
    at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:310)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
    at com.intellij.ide.IdeEventQueue.h(IdeEventQueue.java:863)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:699)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:385)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:109)
    at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:184)
    at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:229)
    at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:227)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:227)
    at java.awt.Dialog.show(Dialog.java:1084)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:778)
    at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:455)
    at com.intellij.openapi.ui.DialogWrapper.invokeShow(DialogWrapper.java:1665)
    at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:1607)
    at com.intellij.openapi.options.newEditor.SettingsDialog.access$101(SettingsDialog.java:41)
    at com.intellij.openapi.options.newEditor.SettingsDialog.a(SettingsDialog.java:77)
    at com.intellij.openapi.project.DumbPermissionServiceImpl.allowStartingDumbModeInside(DumbPermissionServiceImpl.java:37)
    at com.intellij.openapi.project.DumbService.allowStartingDumbModeInside(DumbService.java:283)
    at com.intellij.openapi.options.newEditor.SettingsDialog.show(SettingsDialog.java:77)
    at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:94)
    at com.intellij.ide.actions.ShowSettingsAction.actionPerformed(ShowSettingsAction.java:62)
    at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:197)
    at com.intellij.openapi.application.TransactionGuardImpl.a(TransactionGuardImpl.java:88)
    at com.intellij.openapi.application.TransactionGuardImpl.submitTransactionAndWait(TransactionGuardImpl.java:156)
    at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:211)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher$1.performAction(IdeKeyEventDispatcher.java:587)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.a(IdeKeyEventDispatcher.java:634)
    at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:199)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.processAction(IdeKeyEventDispatcher.java:633)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.d(IdeKeyEventDispatcher.java:477)
    at com.intellij.openapi.keymap.impl.IdeKeyEventDispatcher.dispatchKeyEvent(IdeKeyEventDispatcher.java:211)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:677)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:385)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    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)

When navigating to Preferences/Other Settings/Sass Lint it says 'Select configuration element in the tree to edit settings'

any ideas to enable this plugin?

Also seeing this in Webstorm 2016.2. Preferences are empty, and event log just fills up with exceptions above.

It seems that #8 and #9 point into the same direction.

I believe you're right. I never used the plugin before Webstorm 2016.2, but I know at least these three issues are reproducible in this version (and other Jetbrains products, from the sound of it).

I just downloaded the latest Webstorm on a Linux to reproduce the error.

First everything goes well, installing the plugin and do the settings. But after apply it failes somehow and the settings tab is no longer available.
It claims that 'SassLint bin path is not a file. Path /home/paesku/.npm-packages/lib/node_modules/sass-lint not found in project', which seems to be my fault. It offers me a Fix Configuration link that then throws the above mentioned error.

Even reinstalling this plugin doesn't change anything.

``