intellij-haskforce icon indicating copy to clipboard operation
intellij-haskforce copied to clipboard

"add type signature" and "error checking" aren't working

Open andregpss opened this issue 8 years ago • 0 comments

"add type signature" and "error checking" features aren't working. My setup is:

GHC 7.10.22 Cabal 1.22.6.0 Haskforce 0.3-beta36 Stack isn't installed IntelliJ IDEA 2016.1.4 Build #IC-145.2070.6 JDK: 1.8.0_92 Windows 10

I've tried the solutions listed on Quick Start Guide but they didnt worked, e.g, on Cabal file, i've added the flag -fwarn-missing-signatures:

executable Server
  main-is:         ServerMain.hs
  ghc-options:     -Wall  -O2 -rtsopts -threaded -fwarn-missing-signatures

I have other executables on the same cabal file, and no libraries.

On Settings > Other Settings > Haskell Tools, i've also added -g -fwarn-missing-signatures flag on GHC Mod options. As it didn't worked, i've deleted this flag.

On the other hand, on Haskell Tools Console, GHCi shows errors and warnings normally, including warnings for type signature, e.g: Warning: Top-level binding with no type signature: myTest :: [Char] -> [Char]

I think this problem occours only on Windows, because i've installed on Ubuntu Linux and there was no problem.

My IntelliJ log is:

2017-01-06 09:00:09,008 [  76440]  ERROR - plication.TransactionGuardImpl - Write access is allowed from write-safe contexts only. Please ensure you're using invokeLater/invokeAndWait with a correct modality state (not "any"). See TransactionGuard documentation for details.
  current modality=ModalityState.NON_MODAL
  known modalities={ModalityState:Loading Project 14072210: running=false; canceled=false=true, ModalityState.NON_MODAL=true} 
java.lang.Throwable
	at com.intellij.openapi.diagnostic.Logger.error(Logger.java:132)
	at com.intellij.openapi.application.TransactionGuardImpl.assertWriteActionAllowed(TransactionGuardImpl.java:246)
	at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:296)
	at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.saveAllDocuments(FileDocumentManagerImpl.java:288)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$$anonfun$saveAllFiles$1.apply$mcV$sp(HaskellExternalAnnotator.scala:58)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$$anonfun$saveAllFiles$1.apply(HaskellExternalAnnotator.scala:58)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$$anonfun$saveAllFiles$1.apply(HaskellExternalAnnotator.scala:58)
	at com.haskforce.Implicits$Fun0$$anon$3.run(Implicits.scala:16)
	at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:166)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:417)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:401)
	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:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:843)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:679)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:391)
	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)
2017-01-06 09:00:09,036 [  76468]  ERROR - plication.TransactionGuardImpl - IntelliJ IDEA 2016.3.2  Build #IC-163.10154.41 
2017-01-06 09:00:09,036 [  76468]  ERROR - plication.TransactionGuardImpl - JDK: 1.8.0_112-release 
2017-01-06 09:00:09,036 [  76468]  ERROR - plication.TransactionGuardImpl - VM: OpenJDK Server VM 
2017-01-06 09:00:09,036 [  76468]  ERROR - plication.TransactionGuardImpl - Vendor: JetBrains s.r.o 
2017-01-06 09:00:09,036 [  76468]  ERROR - plication.TransactionGuardImpl - OS: Windows 10 
2017-01-06 09:00:09,036 [  76468]  ERROR - plication.TransactionGuardImpl - Last Action:  
2017-01-06 09:00:17,401 [  84833]  ERROR - plication.impl.ApplicationImpl - Read access is allowed from event dispatch thread or inside read-action only (see com.intellij.openapi.application.Application.runReadAction())
Details: Current thread: Thread[ApplicationImpl pooled thread 1,4,main] 21825167
; dispatch thread: false; isDispatchThread(): false
SystemEventQueueThread: Thread[AWT-EventQueue-0 2016.3.2#IC-163.10154.41 IDEA, eap:false, os:Windows 10 10.0, java-version:JetBrains s.r.o 1.8.0_112-release-408-b6,6,main] 30972796 
java.lang.Throwable
	at com.intellij.openapi.diagnostic.Logger.error(Logger.java:150)
	at com.intellij.openapi.application.impl.ApplicationImpl.assertReadAccessAllowed(ApplicationImpl.java:979)
	at com.intellij.psi.impl.source.PsiFileImpl.loadTreeElement(PsiFileImpl.java:174)
	at com.intellij.psi.impl.source.PsiFileImpl.calcTreeElement(PsiFileImpl.java:825)
	at com.intellij.psi.impl.source.PsiFileImpl.getChildren(PsiFileImpl.java:831)
	at com.haskforce.cabal.query.CabalQuery.getLibrary(CabalQuery.scala:38)
	at com.haskforce.cabal.query.CabalQuery.getBuildInfo(CabalQuery.scala:56)
	at com.haskforce.cabal.query.CabalQuery$$anonfun$findBuildInfoForSourceFile$1.apply(CabalQuery.scala:65)
	at com.haskforce.cabal.query.CabalQuery$$anonfun$findBuildInfoForSourceFile$1.apply(CabalQuery.scala:64)
	at scala.Option.flatMap(Option.scala:171)
	at com.haskforce.cabal.query.CabalQuery.findBuildInfoForSourceFile(CabalQuery.scala:64)
	at com.haskforce.cabal.query.CabalQuery$$anonfun$findBuildInfoForSourceFile$3.apply(CabalQuery.scala:74)
	at com.haskforce.cabal.query.CabalQuery$$anonfun$findBuildInfoForSourceFile$3.apply(CabalQuery.scala:74)
	at scala.Option.flatMap(Option.scala:171)
	at com.haskforce.cabal.query.CabalQuery.findBuildInfoForSourceFile(CabalQuery.scala:74)
	at com.haskforce.cabal.query.CabalQuery$$anonfun$findBuildInfoForSourceFile$2.apply(CabalQuery.scala:70)
	at com.haskforce.cabal.query.CabalQuery$$anonfun$findBuildInfoForSourceFile$2.apply(CabalQuery.scala:70)
	at scala.Option.flatMap(Option.scala:171)
	at com.haskforce.cabal.query.CabalQuery.findBuildInfoForSourceFile(CabalQuery.scala:70)
	at com.haskforce.cabal.query.BuildInfoUtil$$anonfun$getBuildInfo$2.apply(BuildInfoUtil.scala:14)
	at com.haskforce.cabal.query.BuildInfoUtil$$anonfun$getBuildInfo$2.apply(BuildInfoUtil.scala:12)
	at scala.Option.flatMap(Option.scala:171)
	at com.haskforce.cabal.query.BuildInfoUtil$.getBuildInfo(BuildInfoUtil.scala:12)
	at com.haskforce.cabal.query.BuildInfoUtil.getBuildInfo(BuildInfoUtil.scala)
	at com.haskforce.highlighting.annotation.external.HLint.getParamsFromCabal(HLint.java:118)
	at com.haskforce.highlighting.annotation.external.HLint.getParams(HLint.java:113)
	at com.haskforce.highlighting.annotation.external.HLint.access$100(HLint.java:45)
	at com.haskforce.highlighting.annotation.external.HLint$3.apply(HLint.java:91)
	at com.haskforce.highlighting.annotation.external.HLint$3.apply(HLint.java:87)
	at scala.util.Either.fold(Either.scala:99)
	at com.haskforce.highlighting.annotation.external.HLint.parseProblems(HLint.java:80)
	at com.haskforce.highlighting.annotation.external.HLint.lint(HLint.java:58)
	at com.haskforce.highlighting.annotation.external.impl.HLintProblemsProvider.getProblems(HLintProblemsProvider.scala:24)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$State$$anonfun$buildForFile$1$$anonfun$apply$1.apply(HaskellExternalAnnotator.scala:94)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$State$$anonfun$buildForFile$1$$anonfun$apply$1.apply(HaskellExternalAnnotator.scala:94)
	at scala.Option.map(Option.scala:146)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$State$$anonfun$buildForFile$1.apply(HaskellExternalAnnotator.scala:94)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$State$$anonfun$buildForFile$1.apply(HaskellExternalAnnotator.scala:94)
	at scala.collection.immutable.List.flatMap(List.scala:327)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator$State$.buildForFile(HaskellExternalAnnotator.scala:94)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator.doAnnotate(HaskellExternalAnnotator.scala:44)
	at com.haskforce.highlighting.annotation.external.HaskellExternalAnnotator.doAnnotate(HaskellExternalAnnotator.scala:19)
	at com.intellij.codeInsight.daemon.impl.ExternalToolPass.doAnnotate(ExternalToolPass.java:212)
	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.lambda$flush$1(MergingUpdateQueue.java:277)
	at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:291)
	at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:246)
	at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:223)
	at com.intellij.util.Alarm$Request$1.run(Alarm.java:387)
	at com.intellij.util.Alarm$Request.run(Alarm.java:398)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:237)
	at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:210)
	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)

andregpss avatar Jan 05 '17 02:01 andregpss