mrcljx / rubocop-for-rubymine

DEPRECATED: RubyMine supports RuboCop now
https://blog.jetbrains.com/ruby/2017/01/rubymine-2017-1-eap-2-creating-gemsets-rubocop-support/
MIT License
131 stars 29 forks source link

Failed to parse RuboCop output #43

Open big-samantha opened 8 years ago

big-samantha commented 8 years ago

error

It's definitely installed and available.

working

seen by rubymine

Could this be a bug?

defsprite commented 8 years ago

Here is the relevant excerpt from idea.log Executing the command manually works fine.

2016-04-15 11:53:02,405 [1074767]   INFO - .ruby.ruby.run.RubyCommandLine - Executing [rubocop --format json /Users/defsprite/Workspace/gopade/consumer-web/app/controllers/quotes/reviews_controller.rb], working dir =[/Users/defsprite/Workspace/gopade/consumer-web] 
2016-04-15 11:53:02,587 [1074949]   WARN - hub.sirlantis.rubymine.rubocop - Failed to parse RuboCop output 
java.io.EOFException: End of input at line 1 column 1
    at com.google.gson.stream.JsonReader.nextNonWhitespace(JsonReader.java:1414)
    at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:553)
    at com.google.gson.stream.JsonReader.beginObject(JsonReader.java:381)
    at io.github.sirlantis.rubymine.rubocop.model.RubocopResult$Companion.readFromJsonReader(RubocopResult.kt:24)
    at io.github.sirlantis.rubymine.rubocop.model.RubocopResult$Companion.readFromReader(RubocopResult.kt:18)
    at io.github.sirlantis.rubymine.rubocop.RubocopTask.parseProcessOutput(RubocopTask.kt:83)
    at io.github.sirlantis.rubymine.rubocop.RubocopTask.runViaCommandLine(RubocopTask.kt:173)
    at io.github.sirlantis.rubymine.rubocop.RubocopTask.run(RubocopTask.kt:60)
    at io.github.sirlantis.rubymine.rubocop.RubocopAnnotator.doAnnotate(RubocopAnnotator.kt:157)
    at io.github.sirlantis.rubymine.rubocop.RubocopAnnotator.doAnnotate(RubocopAnnotator.kt:24)
    at com.intellij.codeInsight.daemon.impl.ExternalToolPass.a(ExternalToolPass.java:218)
    at com.intellij.codeInsight.daemon.impl.ExternalToolPass.access$500(ExternalToolPass.java:44)
    at com.intellij.codeInsight.daemon.impl.ExternalToolPass$1.run(ExternalToolPass.java:160)
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:337)
    at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:327)
    at com.intellij.util.ui.update.MergingUpdateQueue$3.run(MergingUpdateQueue.java:271)
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:286)
    at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:244)
    at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:234)
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    at com.intellij.util.Alarm$Request$1.run(Alarm.java:352)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at com.intellij.util.concurrency.QueueProcessor$RunnableConsumer.consume(QueueProcessor.java:298)
    at com.intellij.util.concurrency.QueueProcessor$RunnableConsumer.consume(QueueProcessor.java:295)
    at com.intellij.util.concurrency.QueueProcessor$2$1.run(QueueProcessor.java:110)
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    at com.intellij.util.concurrency.QueueProcessor$2.consume(QueueProcessor.java:107)
    at com.intellij.util.concurrency.QueueProcessor$2.consume(QueueProcessor.java:104)
    at com.intellij.util.concurrency.QueueProcessor$3$1.run(QueueProcessor.java:215)
    at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    at com.intellij.util.concurrency.QueueProcessor$3.run(QueueProcessor.java:212)
    at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:365)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
    at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:55)
2016-04-15 11:53:02,587 [1074949]   WARN - hub.sirlantis.rubymine.rubocop - === RuboCop STDOUT START ===

=== RuboCop STDOUT END === 
2016-04-15 11:53:02,587 [1074949]   WARN - hub.sirlantis.rubymine.rubocop - === RuboCop STDERR START ===

=== RuboCop STDERR END === 
2016-04-15 11:53:02,587 [1074949]   WARN - hub.sirlantis.rubymine.rubocop - RuboCop exited with 1 
dylanpinn commented 8 years ago

I had a similar problem, and it was due to Rubocop changing some of the cops.

If you fix the error message displayed in your output about Style/TrailingComma cop that might help.

CyberStrike commented 8 years ago

Building and installing the version from #39 solved this problem for me on the latest 2016 EAP. You can get it from the release on my fork.

Rubocop for Rubymine v3.1.0.a