haskell / haskell-language-server

Official haskell ide support via language server (LSP). Successor of ghcide & haskell-ide-engine.
Apache License 2.0
2.66k stars 355 forks source link

Stuck on CPP include #1295

Closed viluon closed 3 years ago

viluon commented 3 years ago

Your environment

$ haskell-language-server-wrapper --probe-tools
haskell-language-server version: 0.9.0.0 (GHC: 8.10.1) (PATH: /home/viluon/.ghcup/bin/haskell-language-server-wrapper-0.9.0) (GIT hash: 46d2a3dc7ef49ba57b2706022af1801149ab3f2b)
Tool versions found on the $PATH
cabal:          3.2.0.0
stack:          2.5.1
ghc:            8.6.5

Which lsp-client do you use: VS Code

Describe your project (alternative: link to the project): GHC 8.10.2

Contents of hie.yaml:

# This is a IDE configuration file which tells IDEs such as `ghcide` how
# to set up a GHC API session for this project.
#
# The format is documented here - https://github.com/mpickering/hie-bios
cradle: {bios: {program: "./hadrian/hie-bios"}}

Steps to reproduce

Open any .hs file with a CPP #include, such as ghc/GHCi/UI.hs, compiler/main/InteractiveEval.hs, or libraries/containers/containers/src/Data/Map.hs.

Expected behaviour

The HLS processes the file, reporting lints.

Actual behaviour

The HLS reports a single error complaining about the non-existence of the included file and gives up further analysis. screenshot

Files without CPP includes do not trigger this kind of faulty behaviour: 2021-02-02-145634_grim

The logs also mention a match error (see the attached debug information):

[Error - 3:48:02 PM] Request textDocument/codeLens failed.
  Message: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)
  Code: -32603 

Include debug information

Execute in the root of your project the command haskell-language-server --debug . and paste the logs here:

Debug output: The first 512 lines are here: ``` (haskell-language-server)Ghcide setup tester in /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2. Report bugs at https://github.com/haskell/haskell-language-server/issues Tool versions found on the $PATH cabal: 3.2.0.0 stack: 2.5.1 ghc: 8.6.5 Step 1/4: Finding files to test in /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2 Found 11421 files Step 2/4: Looking for hie.yaml files that control setup Found 2 cradles Step 3/4: Initializing the IDE Step 4/4: Type checking the files [INFO] Consulting the cradle for "libraries/Cabal/cabal-testsuite/PackageTests/NewBuild/T4375/repo/old-time-1.1.0.3/System/Time.hs" [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main] [INFO] Consulting the cradle for "nofib/imaginary/gen_regexps/Main.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main] [INFO] Consulting the cradle for "testsuite/tests/indexed-types/should_fail/T16110_Fail1.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main] [INFO] Consulting the cradle for "testsuite/tests/rename/should_compile/Rn059_A.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/deriving/should_compile/T7947.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main] [INFO] Consulting the cradle for "nofib/spectral/eliza/Main.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main] [INFO] Consulting the cradle for "nofib/real/reptile/Diff.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main] [INFO] Consulting the cradle for "libraries/Cabal/cabal-testsuite/PackageTests/AllowOlder/cabal.test.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/rts/T5644/Conf.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/annotations/should_compile/th/annth.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/deSugar/should_compile/ds047.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/typecheck/should_fail/UnliftedNewtypesMismatchedKind.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "libraries/Cabal/Cabal/Distribution/Types/Version.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "libraries/Cabal/cabal-testsuite/PackageTests/Ambiguity/package-import/A.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/concurrent/should_run/allocLimit3.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/th/T13642.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/ghc-api/annotations/Test10399.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "compiler/stgSyn/StgSubst.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "libraries/Cabal/cabal-install/Distribution/Client/SourceFiles.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/deSugar/should_compile/ds053.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/safeHaskell/unsafeLibs/BadImport09.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "utils/haddock/haddock-api/src/Haddock/Backends/Xhtml.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "libraries/Cabal/cabal-testsuite/PackageTests/NewBuild/CmdRun/ExitCodePropagation/cabal.test.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "libraries/text/tests/Tests/SlowFunctions.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/quasiquotation/qq008/Test.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "hadrian/src/Oracles/TestSettings.hs" [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main] [INFO] Consulting the cradle for "testsuite/tests/rename/should_fail/rnfail033.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/overloadedrecflds/should_fail/T11167_ambiguous_fixity.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/typecheck/should_compile/tc132.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Making new HscEnv[main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main,main] [INFO] Consulting the cradle for "testsuite/tests/perf/should_run/T149_A.hs" [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide [INFO] Using interface files cache dir: ghcide ``` The archive [hls-debug.txt.zip](https://github.com/haskell/haskell-language-server/files/5911939/hls-debug.txt.zip) contains the result of running the requested command for half an hour. It seems to scale dreadfully with the number of Haskell sources in the project and doesn't contain useful information, so I'm not willing to let it finish. I can provide logs for a more specific command invocation upon request.

Paste the logs from the lsp-client, e.g. for VS Code

LSP logs: The following is the VS Code log displayed via the "Developer: Show Logs…" command: ``` [client] run command: "haskell-language-server-wrapper --lsp -d -l hls.log" [client] debug command: "haskell-language-server-wrapper --lsp -d -l hls.log" [client] server cwd: undefined Found "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/hie.yaml" for "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/a" Module "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/a" is loaded by Cradle: Cradle {cradleRootDir = "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2", cradleOptsProg = CradleAction: Bios} Run entered for haskell-language-server-wrapper(haskell-language-server-wrapper) Version 0.9.0.0, Git revision 46d2a3dc7ef49ba57b2706022af1801149ab3f2b (dirty) x86_64 ghc-8.10.1 Current directory: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2 Operating system: linux Arguments: ["--lsp","-d","-l","hls.log"] Cradle directory: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2 Cradle type: Bios Tool versions found on the $PATH cabal: 3.2.0.0 stack: 2.5.1 ghc: 8.6.5 Consulting the cradle to get project GHC version... Project GHC version: 8.6.5 haskell-language-server exe candidates: ["haskell-language-server-8.6.5","haskell-language-server-8.6","haskell-language-server"] Launching haskell-language-server exe at:/home/viluon/.ghcup/bin/haskell-language-server-8.6.5 haskell-language-server version: 0.9.0.0 (GHC: 8.6.5) (PATH: /home/viluon/.ghcup/bin/haskell-language-server-8.6.5~0.9.0) (GIT hash: 46d2a3dc7ef49ba57b2706022af1801149ab3f2b) Starting (haskell-language-server)LSP server... with arguments: LspArguments {argLSP = True, argsCwd = Nothing, argFiles = [], argsShakeProfiling = Nothing, argsTesting = False, argsExamplePlugin = False, argsDebugOn = True, argsLogFile = Just "hls.log", argsThreads = 0, argsProjectGhcVersion = False} with plugins: [PluginId "brittany",PluginId "class",PluginId "eval",PluginId "floskell",PluginId "fourmolu",PluginId "ghcide-code-actions",PluginId "ghcide-completions",PluginId "ghcide-hover-and-symbols",PluginId "ghcide-type-lenses",PluginId "haddockComments",PluginId "hlint",PluginId "importLens",PluginId "moduleName",PluginId "ormolu",PluginId "pragmas",PluginId "retrie",PluginId "splice",PluginId "stylish-haskell",PluginId "tactic"] in directory: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2 If you are seeing this in a terminal, you probably should have run ghcide WITHOUT the --lsp option! Started LSP server in 0.02s Output from setting up the cradle Cradle {cradleRootDir = "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2", cradleOptsProg = CradleAction: Bios} > -hide-all-packages -no-user-package-db -package-db .hie-bios/stage0/lib/package.conf.d -this-unit-id ghc-8.10.2 -package-id array-0.5.3.0 -package-id base-4.12.0.0 -package-id binary-0.8.8.0 -package-id bytestring-0.10.8.2 -package-id containers-0.6.0.1 -package-id deepseq-1.4.4.0 -package-id directory-1.3.3.0 -package-id filepath-1.4.2.1 -package-id ghc-boot-8.10.2 -package-id ghc-boot-th-8.10.2 -package-id ghc-heap-8.10.2 -package-id ghci-8.10.2 -package-id hpc-0.6.1.0 -package-id process-1.6.5.0 -package-id template-haskell-2.16.0.0 -package-id terminfo-0.4.1.4 -package-id time-1.8.0.2 -package-id transformers-0.5.6.2 -package-id unix-2.7.2.2 -i -i.hie-bios/stage0/compiler/build -i.hie-bios/stage0/compiler/build/autogen -icompiler/. -icompiler/backpack -icompiler/basicTypes -icompiler/cmm -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen -icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename -icompiler/simplCore -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/hieFile -Iincludes -I.hie-bios/stage0/lib -I.hie-bios/stage0/compiler/build -I.hie-bios/stage0/compiler/build/. -I.hie-bios/stage0/compiler/build/parser -I.hie-bios/stage0/compiler/build/utils -Icompiler/. -Icompiler/parser -Icompiler/utils -I/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5/process-1.6.5.0/include -I/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5/unix-2.7.2.2/include -I/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5/time-1.8.0.2/include -I/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5/bytestring-0.10.8.2/include -I/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5/base-4.12.0.0/include -I/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5/integer-gmp-1.0.2.0/include -I/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5/include -I.hie-bios/stage0/lib -optc-I.hie-bios/stage0/lib -optP-include -optP.hie-bios/stage0/compiler/build/autogen/cabal_macros.h -optP-DCAN_LOAD_DLL -O0 -H64m -Wall -Wno-name-shadowing -Wnoncanonical-monad-instances -Wnoncanonical-monoid-instances -this-unit-id ghc -XHaskell2010 -XNoImplicitPrelude -optc-DTHREADED_RTS -fno-warn-deprecated-flags -ighc ghc/Main.hs [Error - 3:48:02 PM] Request textDocument/codeLens failed. Message: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) Code: -32603 ```
And here is the log file saved with the Log File configuration option of the Haskell VS Code extension (Trace: Server = messages). ``` 2021-02-02 15:47:59.530479634 [ThreadId 5] - haskell-lsp:Starting up server ... 2021-02-02 15:47:59.533639394 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":73183,"clientInfo":{"name":"vscode","version":"1.52.1"},"rootPath":"/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2","rootUri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2","capabilities":{"workspace":{"applyEdit":true,"workspaceEdit":{"documentChanges":true,"resourceOperations":["create","rename","delete"],"failureHandling":"textOnlyTransactional"},"didChangeConfiguration":{"dynamicRegistration":true},"didChangeWatchedFiles":{"dynamicRegistration":true},"symbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"executeCommand":{"dynamicRegistration":true},"configuration":true,"workspaceFolders":true},"textDocument":{"publishDiagnostics":{"relatedInformation":true,"versionSupport":false,"tagSupport":{"valueSet":[1,2]}},"synchronization":{"dynamicRegistration":true,"willSave":true,"willSaveWaitUntil":true,"didSave":true},"completion":{"dynamicRegistration":true,"contextSupport":true,"completionItem":{"snippetSupport":true,"commitCharactersSupport":true,"documentationFormat":["markdown","plaintext"],"deprecatedSupport":true,"preselectSupport":true,"tagSupport":{"valueSet":[1]}},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]}},"hover":{"dynamicRegistration":true,"contentFormat":["markdown","plaintext"]},"signatureHelp":{"dynamicRegistration":true,"signatureInformation":{"documentationFormat":["markdown","plaintext"],"parameterInformation":{"labelOffsetSupport":true}},"contextSupport":true},"definition":{"dynamicRegistration":true,"linkSupport":true},"references":{"dynamicRegistration":true},"documentHighlight":{"dynamicRegistration":true},"documentSymbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"hierarchicalDocumentSymbolSupport":true},"codeAction":{"dynamicRegistration":true,"isPreferredSupport":true,"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["","quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}}},"codeLens":{"dynamicRegistration":true},"formatting":{"dynamicRegistration":true},"rangeFormatting":{"dynamicRegistration":true},"onTypeFormatting":{"dynamicRegistration":true},"rename":{"dynamicRegistration":true,"prepareSupport":true},"documentLink":{"dynamicRegistration":true,"tooltipSupport":true},"typeDefinition":{"dynamicRegistration":true,"linkSupport":true},"implementation":{"dynamicRegistration":true,"linkSupport":true},"colorProvider":{"dynamicRegistration":true},"foldingRange":{"dynamicRegistration":true,"rangeLimit":5000,"lineFoldingOnly":true},"declaration":{"dynamicRegistration":true,"linkSupport":true},"selectionRange":{"dynamicRegistration":true},"callHierarchy":{"dynamicRegistration":true},"semanticTokens":{"dynamicRegistration":true,"tokenTypes":["comment","keyword","number","regexp","operator","namespace","type","struct","class","interface","enum","typeParameter","function","member","macro","variable","parameter","property","label"],"tokenModifiers":["declaration","documentation","static","abstract","deprecated","async","readonly"]}},"window":{"workDoneProgress":true}},"trace":"off","workspaceFolders":[{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2","name":"ghc-8.10.2"}]}} 2021-02-02 15:47:59.536459986 [ThreadId 5] - haskell-lsp:initializeRequestHandler: setting current dir to project root:/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2 2021-02-02 15:47:59.563711334 [ThreadId 18] - Registering ide configuration: IdeConfiguration {workspaceFolders = fromList [NormalizedUri 2507145991114103291 "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2"], clientSettings = hashed Nothing} 2021-02-02 15:47:59.567287227 [ThreadId 7] - <--2--{"result":{"capabilities":{"typeDefinitionProvider":true,"foldingRangeProvider":false,"textDocumentSync":{"openClose":true,"change":2,"save":{}},"workspace":{"workspaceFolders":{"supported":true,"changeNotifications":true}},"implementationProvider":true,"documentRangeFormattingProvider":true,"documentHighlightProvider":true,"executeCommandProvider":{"commands":["73349:class:addMinimalMethodPlaceholders","73349:eval:evalCommand","73349:ghcide-type-lenses:typesignature.add","73349:hlint:applyOne","73349:hlint:applyAll","73349:importLens:ImportLensCommand","73349:moduleName:edit","73349:retrie:retrieCommand","73349:splice:expandTHSpliceInplace","73349:tactic:tacticsAutoCommand","73349:tactic:tacticsIntrosCommand","73349:tactic:tacticsDestructCommand","73349:tactic:tacticsHomomorphismCommand","73349:tactic:tacticsDestructLambdaCaseCommand","73349:tactic:tacticsHomomorphismLambdaCaseCommand"]},"renameProvider":false,"colorProvider":false,"definitionProvider":true,"hoverProvider":true,"codeActionProvider":true,"completionProvider":{"triggerCharacters":["."],"resolveProvider":false},"codeLensProvider":{},"documentSymbolProvider":true,"documentFormattingProvider":true}},"jsonrpc":"2.0","id":0} 2021-02-02 15:47:59.571321772 [ThreadId 5] - ---> {"jsonrpc":"2.0","method":"initialized","params":{}} 2021-02-02 15:47:59.58319594 [ThreadId 5] - ---> {"jsonrpc":"2.0","method":"workspace/didChangeConfiguration","params":{"settings":{"haskell":{"hlintOn":true,"maxNumberOfProblems":200,"diagnosticsOnChange":true,"liquidOn":true,"completionSnippetsOn":true,"formatOnImportOn":true,"formattingProvider":"ormolu","trace":{"server":"messages"},"logFile":"hls.log","languageServerVariant":"haskell-language-server","serverExecutablePath":"haskell-language-server-wrapper","updateBehavior":"keep-up-to-date","indentationRules":{"enabled":true}}}}} 2021-02-02 15:47:59.583842544 [ThreadId 18] - Configuration changed: Object (fromList [("haskell",Object (fromList [("logFile",String "hls.log"),("updateBehavior",String "keep-up-to-date"),("hlintOn",Bool True),("formatOnImportOn",Bool True),("indentationRules",Object (fromList [("enabled",Bool True)])),("liquidOn",Bool True),("languageServerVariant",String "haskell-language-server"),("serverExecutablePath",String "haskell-language-server-wrapper"),("diagnosticsOnChange",Bool True),("completionSnippetsOn",Bool True),("maxNumberOfProblems",Number 200.0),("formattingProvider",String "ormolu"),("trace",Object (fromList [("server",String "messages")]))]))]) 2021-02-02 15:47:59.583814438 [ThreadId 5] - ---> {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs","languageId":"haskell","version":1,"text":"{-# LANGUAGE CPP #-}\n#if !defined(TESTING) && defined(__GLASGOW_HASKELL__)\n{-# LANGUAGE Safe #-}\n#endif\n\n#ifdef __GLASGOW_HASKELL__\n{-# LANGUAGE DataKinds, FlexibleContexts #-}\n#endif\n#if __GLASGOW_HASKELL__ >= 800\n{-# LANGUAGE MonoLocalBinds #-}\n#endif\n\n#include \"containers.h\"\n\n-----------------------------------------------------------------------------\n-- |\n-- Module : Data.Map\n-- Copyright : (c) Daan Leijen 2002\n-- (c) Andriy Palamarchuk 2008\n-- License : BSD-style\n-- Maintainer : libraries@haskell.org\n-- Portability : portable\n--\n-- /Note:/ You should use \"Data.Map.Strict\" instead of this module if:\n--\n-- * You will eventually need all the values stored.\n--\n-- * The stored values don't represent large virtual data structures\n-- to be lazily computed.\n--\n-- An efficient implementation of ordered maps from keys to values\n-- (dictionaries).\n--\n-- These modules are intended to be imported qualified, to avoid name\n-- clashes with Prelude functions, e.g.\n--\n-- > import qualified Data.Map as Map\n--\n-- The implementation of 'Map' is based on /size balanced/ binary trees (or\n-- trees of /bounded balance/) as described by:\n--\n-- * Stephen Adams, \\\"/Efficient sets: a balancing act/\\\",\n-- Journal of Functional Programming 3(4):553-562, October 1993,\n-- .\n-- * J. Nievergelt and E.M. Reingold,\n-- \\\"/Binary search trees of bounded balance/\\\",\n-- SIAM journal of computing 2(1), March 1973.\n--\n-- Bounds for 'union', 'intersection', and 'difference' are as given\n-- by\n--\n-- * Guy Blelloch, Daniel Ferizovic, and Yihan Sun,\n-- \\\"/Just Join for Parallel Ordered Sets/\\\",\n-- .\n--\n-- Note that the implementation is /left-biased/ -- the elements of a\n-- first argument are always preferred to the second, for example in\n-- 'union' or 'insert'.\n--\n-- /Warning/: The size of the map must not exceed @maxBound::Int@. Violation of\n-- this condition is not detected and if the size limit is exceeded, its\n-- behaviour is undefined.\n--\n-- Operation comments contain the operation time complexity in\n-- the Big-O notation ().\n-----------------------------------------------------------------------------\n\nmodule Data.Map\n ( module Data.Map.Lazy\n#ifdef __GLASGOW_HASKELL__\n , insertWith'\n , insertWithKey'\n , insertLookupWithKey'\n , fold\n , foldWithKey\n#endif\n ) where\n\nimport Data.Map.Lazy\n\n#ifdef __GLASGOW_HASKELL__\nimport Utils.Containers.Internal.TypeError\n\n-- | This function is being removed and is no longer usable.\n-- Use 'Data.Map.Strict.insertWith'.\ninsertWith' :: Whoops \"Data.Map.insertWith' is gone. Use Data.Map.Strict.insertWith.\"\n => (a -> a -> a) -> k -> a -> Map k a -> Map k a\ninsertWith' _ _ _ _ = undefined\n\n-- | This function is being removed and is no longer usable.\n-- Use 'Data.Map.Strict.insertWithKey'.\ninsertWithKey' :: Whoops \"Data.Map.insertWithKey' is gone. Use Data.Map.Strict.insertWithKey.\"\n => (k -> a -> a -> a) -> k -> a -> Map k a -> Map k a\ninsertWithKey' _ _ _ _ = undefined\n\n-- | This function is being removed and is no longer usable.\n-- Use 'Data.Map.Strict.insertLookupWithKey'.\ninsertLookupWithKey' :: Whoops \"Data.Map.insertLookupWithKey' is gone. Use Data.Map.Strict.insertLookupWithKey.\"\n => (k -> a -> a -> a) -> k -> a -> Map k a\n -> (Maybe a, Map k a)\ninsertLookupWithKey' _ _ _ _ = undefined\n\n-- | This function is being removed and is no longer usable.\n-- Use 'Data.Map.Strict.foldr'.\nfold :: Whoops \"Data.Map.fold is gone. Use foldr.\"\n => (a -> b -> b) -> b -> Map k a -> b\nfold _ _ _ = undefined\n\n-- | This function is being removed and is no longer usable.\n-- Use 'foldrWithKey'.\nfoldWithKey :: Whoops \"Data.Map.foldWithKey is gone. Use foldrWithKey.\"\n => (k -> a -> b -> b) -> b -> Map k a -> b\nfoldWithKey _ _ _ = undefined\n#endif\n"}}} 2021-02-02 15:47:59.585773504 [ThreadId 16] - Finishing build session(exception: AsyncCancelled) 2021-02-02 15:47:59.585774934 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"registrations":[{"registerOptions":{"watchers":[{"kind":5,"globPattern":"**/*.hs"},{"kind":5,"globPattern":"**/*.hs-boot"},{"kind":5,"globPattern":"**/*.lhs"},{"kind":5,"globPattern":"**/*.lhs-boot"}]},"method":"workspace/didChangeWatchedFiles","id":"globalFileWatches"}]},"method":"client/registerCapability","id":0} 2021-02-02 15:47:59.585936 [ThreadId 18] - Restarting build session (aborting the previous one took 0.00s) 2021-02-02 15:47:59.586783876 [ThreadId 18] - Set files of interest to: [(NormalizedFilePath "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs",Modified)] 2021-02-02 15:47:59.58731199 [ThreadId 34] - Finishing build session(exception: AsyncCancelled) 2021-02-02 15:47:59.587442397 [ThreadId 18] - Restarting build session (aborting the previous one took 0.00s) 2021-02-02 15:47:59.587753721 [ThreadId 18] - Opened text document: file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:47:59.592828525 [ThreadId 59] - hlint:getIdeas:file:NormalizedFilePath "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:47:59.595553306 [ThreadId 62] - Consulting the cradle for "libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:47:59.604014958 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"token":0},"method":"window/workDoneProgress/create","id":1} 2021-02-02 15:47:59.6042491 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"value":{"kind":"begin","cancellable":false,"title":"Setting up ghc-8.10 (for libraries/containers/containers/src/Data/Map.hs)"},"token":0},"method":"$/progress"} 2021-02-02 15:47:59.652064483 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":0,"result":null} 2021-02-02 15:47:59.652426431 [ThreadId 5] - haskell-lsp:Got reply message:"{\"jsonrpc\":\"2.0\",\"id\":0,\"result\":null}" 2021-02-02 15:47:59.652531926 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":1,"result":null} 2021-02-02 15:47:59.652631571 [ThreadId 5] - haskell-lsp:Got reply message:"{\"jsonrpc\":\"2.0\",\"id\":1,\"result\":null}" 2021-02-02 15:47:59.70015663 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"token":"23"},"method":"window/workDoneProgress/create","id":2} 2021-02-02 15:47:59.700876672 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"value":{"kind":"begin","title":"Processing"},"token":"23"},"method":"$/progress"} 2021-02-02 15:47:59.717963506 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":2,"result":null} 2021-02-02 15:47:59.718133438 [ThreadId 5] - haskell-lsp:Got reply message:"{\"jsonrpc\":\"2.0\",\"id\":2,\"result\":null}" 2021-02-02 15:47:59.804658608 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"value":{"kind":"report","message":"0/2"},"token":"23"},"method":"$/progress"} 2021-02-02 15:47:59.900258504 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":1,"method":"textDocument/documentSymbol","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:48:00.316870828 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":2,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:48:00.317258816 [ThreadId 79] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:48:00.319511762 [ThreadId 80] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:48:00.506181363 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"value":{"kind":"report","message":"1/2"},"token":"23"},"method":"$/progress"} 2021-02-02 15:48:02.238916328 [ThreadId 62] - Session loading result: Right (ComponentOptions {componentOptions = [], componentRoot = "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2", componentDependencies = []},"/home/viluon/.ghcup/ghc/8.6.5/lib/ghc-8.6.5") 2021-02-02 15:48:02.239467793 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"value":{"kind":"end"},"token":0},"method":"$/progress"} 2021-02-02 15:48:02.345395381 [ThreadId 62] - Using interface files cache dir: ghcide 2021-02-02 15:48:02.345635573 [ThreadId 62] - Making new HscEnv[main] 2021-02-02 15:48:02.422910242 [ThreadId 62] - New Component Cache HscEnvEq: (([],Just HscEnvEq 37),fromList [("/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/hie.yaml",Just 2021-01-25 11:46:25.148850365 UTC)]) 2021-02-02 15:48:02.423137368 [ThreadId 62] - Known files updated: fromList [(TargetFile NormalizedFilePath "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs",["/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"])] 2021-02-02 15:48:02.423535679 [ThreadId 41] - Finishing build session(exception: AsyncCancelled) 2021-02-02 15:48:02.423795833 [ThreadId 62] - Restarting build session (aborting the previous one took 0.00s) 2021-02-02 15:48:02.426574871 [ThreadId 106] - hlint:getIdeas:file:NormalizedFilePath "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:48:02.430303481 [ThreadId 122] - finish: getSession (took 0.00s) 2021-02-02 15:48:02.431423548 [ThreadId 124] - finish: ModuleName.ghcSession (took 0.01s) 2021-02-02 15:48:02.434987455 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"value":{"kind":"report","message":"2/3"},"token":"23"},"method":"$/progress"} 2021-02-02 15:48:02.45901535 [ThreadId 80] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.03s" 2021-02-02 15:48:02.459225262 [ThreadId 82] - codeLens was cancelled 2021-02-02 15:48:02.459361251 [ThreadId 86] - ModuleName.GetParsedModule was cancelled 2021-02-02 15:48:02.459479767 [ThreadId 84] - was cancelled 2021-02-02 15:48:02.459637536 [ThreadId 77] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 2, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:48:02.460184957 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":2} 2021-02-02 15:48:02.478706166 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs","diagnostics":[{"severity":1,"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"source":"CPP","message":" fatal error: containers.h: No such file or directory\n 14 | \n | ^ \ncompilation terminated.\n"}]},"method":"textDocument/publishDiagnostics"} 2021-02-02 15:48:02.479064326 [ThreadId 140] - finish: ModuleName.GetParsedModule (took 0.04s) 2021-02-02 15:48:02.479201926 [ThreadId 145] - finish: codeLens (took 0.05s) 2021-02-02 15:48:02.479574056 [ThreadId 146] - finish: Outline (took 0.05s) 2021-02-02 15:48:02.479598022 [ThreadId 145] - finish: InitialLoad (took 0.06s) 2021-02-02 15:48:02.480132336 [ThreadId 7] - <--2--{"jsonrpc":"2.0","params":{"value":{"kind":"end"},"token":"23"},"method":"$/progress"} 2021-02-02 15:48:02.480411912 [ThreadId 147] - finish: (took 0.06s) 2021-02-02 15:48:02.48071887 [ThreadId 7] - <--2--{"result":[],"jsonrpc":"2.0","id":1} 2021-02-02 15:51:28.313785431 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":3,"method":"textDocument/hover","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"position":{"line":15,"character":1}}} 2021-02-02 15:51:28.314103691 [ThreadId 152] - GhcIde.hover entered (ideLogger) 2021-02-02 15:51:28.314291542 [ThreadId 152] - Hover request at position 16:2 in file: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:51:28.314519197 [ThreadId 154] - finish: C:GetHieAst (took 0.00s) 2021-02-02 15:51:28.314599111 [ThreadId 7] - <--2--{"result":null,"jsonrpc":"2.0","id":3} 2021-02-02 15:51:31.229804443 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":4,"method":"textDocument/hover","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"position":{"line":13,"character":0}}} 2021-02-02 15:51:31.230147209 [ThreadId 160] - GhcIde.hover entered (ideLogger) 2021-02-02 15:51:31.230328608 [ThreadId 160] - Hover request at position 14:1 in file: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:51:31.230548941 [ThreadId 162] - finish: C:GetHieAst (took 0.00s) 2021-02-02 15:51:31.230641798 [ThreadId 7] - <--2--{"result":null,"jsonrpc":"2.0","id":4} 2021-02-02 15:51:31.395618322 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":5,"method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"context":{"diagnostics":[{"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"message":" fatal error: containers.h: No such file or directory\n 14 | \n | ^ \ncompilation terminated.\n","severity":1,"source":"CPP"}],"only":["quickfix"]}}} 2021-02-02 15:51:31.396541993 [ThreadId 178] - finish: importLens (took 0.00s) 2021-02-02 15:51:31.397391587 [ThreadId 190] - finish: addPragma (took 0.00s) 2021-02-02 15:51:31.397937203 [ThreadId 190] - finish: splice.codeAction.GitHieAst (took 0.00s) 2021-02-02 15:51:31.397978274 [ThreadId 187] - finish: HaddockComments.GetAnnotatedParsedSource (took 0.00s) 2021-02-02 15:51:31.398065347 [ThreadId 190] - finish: CodeAction (took 0.00s) 2021-02-02 15:51:31.398081828 [ThreadId 181] - finish: tactic (took 0.00s) 2021-02-02 15:51:31.398154932 [ThreadId 187] - finish: retrie (took 0.00s) 2021-02-02 15:51:32.525521927 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":6,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:51:32.525800399 [ThreadId 195] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:51:32.526580077 [ThreadId 204] - finish: codeLens (took 0.00s) 2021-02-02 15:51:32.526815585 [ThreadId 196] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:51:32.527034516 [ThreadId 206] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:51:32.527286358 [ThreadId 208] - finish: getSession (took 0.00s) 2021-02-02 15:51:32.528655003 [ThreadId 207] - finish: (took 0.00s) 2021-02-02 15:51:32.531294861 [ThreadId 209] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:51:32.546646647 [ThreadId 196] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.02s" 2021-02-02 15:51:32.546834133 [ThreadId 193] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 6, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:51:32.547054419 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":6} 2021-02-02 15:51:32.591131589 [ThreadId 215] - finish: CodeAction:PackageExports (took 1.19s) 2021-02-02 15:51:32.594603172 [ThreadId 7] - <--2--{"result":[],"jsonrpc":"2.0","id":5} 2021-02-02 15:51:36.53929574 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":7,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:51:36.539536841 [ThreadId 219] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:51:36.539926321 [ThreadId 220] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:51:36.540330209 [ThreadId 228] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:51:36.540705748 [ThreadId 232] - finish: getSession (took 0.00s) 2021-02-02 15:51:36.540795842 [ThreadId 230] - finish: codeLens (took 0.00s) 2021-02-02 15:51:36.54285445 [ThreadId 229] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:51:36.542835517 [ThreadId 233] - finish: (took 0.00s) 2021-02-02 15:51:36.550694579 [ThreadId 220] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.01s" 2021-02-02 15:51:36.550857426 [ThreadId 217] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 7, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:51:36.55105988 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":7} 2021-02-02 15:51:37.482577503 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":8,"method":"textDocument/hover","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"position":{"line":13,"character":0}}} 2021-02-02 15:51:37.482869274 [ThreadId 242] - GhcIde.hover entered (ideLogger) 2021-02-02 15:51:37.483047278 [ThreadId 242] - Hover request at position 14:1 in file: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:51:37.483267639 [ThreadId 244] - finish: C:GetHieAst (took 0.00s) 2021-02-02 15:51:37.483359761 [ThreadId 7] - <--2--{"result":null,"jsonrpc":"2.0","id":8} 2021-02-02 15:51:37.637982726 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":9,"method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"context":{"diagnostics":[{"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"message":" fatal error: containers.h: No such file or directory\n 14 | \n | ^ \ncompilation terminated.\n","severity":1,"source":"CPP"}],"only":["quickfix"]}}} 2021-02-02 15:51:37.63883498 [ThreadId 267] - finish: importLens (took 0.00s) 2021-02-02 15:51:37.63955744 [ThreadId 273] - finish: CodeAction (took 0.00s) 2021-02-02 15:51:37.639715146 [ThreadId 270] - finish: addPragma (took 0.00s) 2021-02-02 15:51:37.639781773 [ThreadId 271] - finish: tactic (took 0.00s) 2021-02-02 15:51:37.640094268 [ThreadId 275] - finish: retrie (took 0.00s) 2021-02-02 15:51:37.640180379 [ThreadId 272] - finish: HaddockComments.GetAnnotatedParsedSource (took 0.00s) 2021-02-02 15:51:37.640272668 [ThreadId 274] - finish: splice.codeAction.GitHieAst (took 0.00s) 2021-02-02 15:51:37.640329679 [ThreadId 275] - finish: CodeAction:PackageExports (took 0.00s) 2021-02-02 15:51:37.641096606 [ThreadId 7] - <--2--{"result":[],"jsonrpc":"2.0","id":9} 2021-02-02 15:51:41.973614395 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":10,"method":"textDocument/hover","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"position":{"line":14,"character":3}}} 2021-02-02 15:51:41.973946864 [ThreadId 280] - GhcIde.hover entered (ideLogger) 2021-02-02 15:51:41.974122287 [ThreadId 280] - Hover request at position 15:4 in file: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:51:41.974450237 [ThreadId 282] - finish: C:GetHieAst (took 0.00s) 2021-02-02 15:51:41.974725924 [ThreadId 7] - <--2--{"result":null,"jsonrpc":"2.0","id":10} 2021-02-02 15:51:42.274262968 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":11,"method":"textDocument/hover","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"position":{"line":13,"character":0}}} 2021-02-02 15:51:42.274572557 [ThreadId 288] - GhcIde.hover entered (ideLogger) 2021-02-02 15:51:42.274767342 [ThreadId 288] - Hover request at position 14:1 in file: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:51:42.274998455 [ThreadId 290] - finish: C:GetHieAst (took 0.00s) 2021-02-02 15:51:42.27509116 [ThreadId 7] - <--2--{"result":null,"jsonrpc":"2.0","id":11} 2021-02-02 15:51:42.435665524 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":12,"method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"context":{"diagnostics":[{"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"message":" fatal error: containers.h: No such file or directory\n 14 | \n | ^ \ncompilation terminated.\n","severity":1,"source":"CPP"}],"only":["quickfix"]}}} 2021-02-02 15:51:42.436466007 [ThreadId 306] - finish: importLens (took 0.00s) 2021-02-02 15:51:42.43693549 [ThreadId 312] - finish: HaddockComments.GetAnnotatedParsedSource (took 0.00s) 2021-02-02 15:51:42.43731071 [ThreadId 318] - finish: retrie (took 0.00s) 2021-02-02 15:51:42.437449037 [ThreadId 320] - finish: addPragma (took 0.00s) 2021-02-02 15:51:42.437507919 [ThreadId 323] - finish: tactic (took 0.00s) 2021-02-02 15:51:42.437621976 [ThreadId 320] - finish: splice.codeAction.GitHieAst (took 0.00s) 2021-02-02 15:51:42.438108756 [ThreadId 322] - finish: CodeAction (took 0.00s) 2021-02-02 15:51:42.438296273 [ThreadId 324] - finish: CodeAction:PackageExports (took 0.00s) 2021-02-02 15:51:42.439026032 [ThreadId 7] - <--2--{"result":[],"jsonrpc":"2.0","id":12} 2021-02-02 15:51:46.753155567 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":13,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:51:46.753626529 [ThreadId 329] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:51:46.754262918 [ThreadId 330] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:51:46.755139063 [ThreadId 338] - finish: (took 0.00s) 2021-02-02 15:51:46.756044018 [ThreadId 340] - finish: codeLens (took 0.00s) 2021-02-02 15:51:46.756069628 [ThreadId 342] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:51:46.756148386 [ThreadId 344] - finish: getSession (took 0.00s) 2021-02-02 15:51:46.756585669 [ThreadId 345] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:51:46.769266231 [ThreadId 330] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.01s" 2021-02-02 15:51:46.769563485 [ThreadId 327] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 13, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:51:46.769753045 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":13} 2021-02-02 15:51:59.007625565 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":14,"method":"textDocument/hover","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"position":{"line":13,"character":0}}} 2021-02-02 15:51:59.007938619 [ThreadId 353] - GhcIde.hover entered (ideLogger) 2021-02-02 15:51:59.008147712 [ThreadId 353] - Hover request at position 14:1 in file: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:51:59.008431461 [ThreadId 355] - finish: C:GetHieAst (took 0.00s) 2021-02-02 15:51:59.008484646 [ThreadId 7] - <--2--{"result":null,"jsonrpc":"2.0","id":14} 2021-02-02 15:51:59.168956295 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":15,"method":"textDocument/codeAction","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"context":{"diagnostics":[{"range":{"start":{"line":13,"character":1},"end":{"line":13,"character":1}},"message":" fatal error: containers.h: No such file or directory\n 14 | \n | ^ \ncompilation terminated.\n","severity":1,"source":"CPP"}],"only":["quickfix"]}}} 2021-02-02 15:51:59.170271046 [ThreadId 377] - finish: addPragma (took 0.00s) 2021-02-02 15:51:59.170460726 [ThreadId 379] - finish: retrie (took 0.00s) 2021-02-02 15:51:59.170912837 [ThreadId 381] - finish: HaddockComments.GetAnnotatedParsedSource (took 0.00s) 2021-02-02 15:51:59.170025271 [ThreadId 375] - finish: importLens (took 0.00s) 2021-02-02 15:51:59.172224305 [ThreadId 388] - finish: splice.codeAction.GitHieAst (took 0.00s) 2021-02-02 15:51:59.172654471 [ThreadId 386] - finish: tactic (took 0.00s) 2021-02-02 15:51:59.173539508 [ThreadId 390] - finish: CodeAction (took 0.00s) 2021-02-02 15:51:59.174178003 [ThreadId 392] - finish: CodeAction:PackageExports (took 0.00s) 2021-02-02 15:51:59.176977184 [ThreadId 7] - <--2--{"result":[],"jsonrpc":"2.0","id":15} 2021-02-02 15:52:08.433275938 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":16,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:52:08.433572879 [ThreadId 397] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:52:08.433790278 [ThreadId 398] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:52:08.434163392 [ThreadId 408] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:52:08.434293375 [ThreadId 406] - finish: codeLens (took 0.00s) 2021-02-02 15:52:08.434620803 [ThreadId 409] - finish: getSession (took 0.00s) 2021-02-02 15:52:08.436631077 [ThreadId 412] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:52:08.436936112 [ThreadId 414] - finish: (took 0.00s) 2021-02-02 15:52:08.445504829 [ThreadId 398] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.01s" 2021-02-02 15:52:08.445689836 [ThreadId 395] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 16, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:52:08.445856724 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":16} 2021-02-02 15:54:27.902568085 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":17,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:54:27.902840212 [ThreadId 419] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:54:27.903049273 [ThreadId 420] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:54:27.903371076 [ThreadId 428] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:54:27.903656683 [ThreadId 432] - finish: codeLens (took 0.00s) 2021-02-02 15:54:27.903777511 [ThreadId 433] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:54:27.903992101 [ThreadId 430] - finish: getSession (took 0.00s) 2021-02-02 15:54:27.904022915 [ThreadId 434] - finish: (took 0.00s) 2021-02-02 15:54:27.916546216 [ThreadId 420] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.01s" 2021-02-02 15:54:27.916808099 [ThreadId 417] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 17, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:54:27.917093328 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":17} 2021-02-02 15:54:29.860082861 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":18,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:54:29.860712936 [ThreadId 441] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:54:29.861356706 [ThreadId 442] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:54:29.861838503 [ThreadId 446] - finish: codeLens (took 0.00s) 2021-02-02 15:54:29.86240619 [ThreadId 452] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:54:29.862728549 [ThreadId 456] - finish: getSession (took 0.00s) 2021-02-02 15:54:29.862853346 [ThreadId 454] - finish: (took 0.00s) 2021-02-02 15:54:29.863421629 [ThreadId 457] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:54:29.872718145 [ThreadId 442] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.01s" 2021-02-02 15:54:29.87290202 [ThreadId 439] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 18, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:54:29.873080512 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":18} 2021-02-02 15:54:37.695763354 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":19,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:54:37.696037753 [ThreadId 464] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:54:37.696762061 [ThreadId 473] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:54:37.69680207 [ThreadId 465] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:54:37.697060104 [ThreadId 475] - finish: (took 0.00s) 2021-02-02 15:54:37.69769809 [ThreadId 477] - finish: getSession (took 0.00s) 2021-02-02 15:54:37.699685516 [ThreadId 479] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:54:37.700158028 [ThreadId 481] - finish: codeLens (took 0.00s) 2021-02-02 15:54:37.713620425 [ThreadId 465] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.02s" 2021-02-02 15:54:37.713856551 [ThreadId 462] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 19, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:54:37.714086183 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":19} 2021-02-02 15:54:40.373937018 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":20,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:54:40.374220677 [ThreadId 488] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:54:40.374457025 [ThreadId 489] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:54:40.374786282 [ThreadId 497] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:54:40.375124878 [ThreadId 499] - finish: getSession (took 0.00s) 2021-02-02 15:54:40.37521507 [ThreadId 501] - finish: codeLens (took 0.00s) 2021-02-02 15:54:40.377209252 [ThreadId 505] - finish: (took 0.00s) 2021-02-02 15:54:40.377230124 [ThreadId 507] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:54:40.387418853 [ThreadId 489] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.01s" 2021-02-02 15:54:40.387718973 [ThreadId 486] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 20, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:54:40.38798834 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":20} 2021-02-02 15:55:29.590618968 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":21,"method":"textDocument/codeLens","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}} 2021-02-02 15:55:29.590949701 [ThreadId 512] - Plugin.makeCodeLens (ideLogger) 2021-02-02 15:55:29.591305149 [ThreadId 513] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "fp" "/home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs" 2021-02-02 15:55:29.591581124 [ThreadId 521] - finish: ModuleName.ghcSession (took 0.00s) 2021-02-02 15:55:29.592176889 [ThreadId 523] - finish: getSession (took 0.00s) 2021-02-02 15:55:29.594839104 [ThreadId 527] - finish: codeLens (took 0.00s) 2021-02-02 15:55:29.595258759 [ThreadId 529] - finish: ModuleName.GetParsedModule (took 0.00s) 2021-02-02 15:55:29.595493573 [ThreadId 531] - finish: (took 0.00s) 2021-02-02 15:55:29.605787138 [ThreadId 513] - src/Ide/Plugin/Eval/CodeLens.hs:239:15 "preprocessor" "0.01s" 2021-02-02 15:55:29.606006881 [ThreadId 510] - Unexpected exception on request, please report! Message: RequestMessage {_jsonrpc = "2.0", _id = IdInt 21, _method = TextDocumentCodeLens, _params = CodeLensParams {_textDocument = TextDocumentIdentifier {_uri = Uri {getUri = "file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"}}, _workDoneToken = Nothing}} Exception: user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42) 2021-02-02 15:55:29.606178211 [ThreadId 7] - <--2--{"error":{"code":-32603,"message":"user error (Pattern match failure in do expression at src/Ide/Plugin/Eval/CodeLens.hs:254:17-42)"},"jsonrpc":"2.0","id":21} 2021-02-02 15:55:29.999630533 [ThreadId 5] - ---> {"jsonrpc":"2.0","id":22,"method":"textDocument/hover","params":{"textDocument":{"uri":"file:///home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs"},"position":{"line":23,"character":69}}} 2021-02-02 15:55:30.000099413 [ThreadId 537] - GhcIde.hover entered (ideLogger) 2021-02-02 15:55:30.00034457 [ThreadId 537] - Hover request at position 24:70 in file: /home/viluon/Projects/haskell/lazy-analysis/container/ghc-8.10.2/libraries/containers/containers/src/Data/Map.hs 2021-02-02 15:55:30.000678086 [ThreadId 540] - finish: C:GetHieAst (took 0.00s) 2021-02-02 15:55:30.000994593 [ThreadId 7] - <--2--{"result":null,"jsonrpc":"2.0","id":22} ```
konn commented 3 years ago

It seems that this behaviour is due to the old Extended Eval Plugin's comment parser. IIUC, this behaviour should be already fixed in the master branch by #1232.

@viluon Could you test against the HLS built from the current master branch?

viluon commented 3 years ago

@konn the fact that it reports "No such file or directory" and seems to parse the #include at least to the extent required to construct such an error message makes me think a parser error is very unlikely. I can try the master branch though.

viluon commented 3 years ago

Thanks to much help from @mpickering in #haskell-language-server on Freenode, I was able to resolve this issue. The problem was that the interface to hie-bios changed since the 8.10.2 release of GHC, and HLS is incompatible with the old one. To fix it, I had to backport a999ee96 and 014ef4a3, editing the paths in hadrian/src/Rules/ToolArgs.hs to reflect the state of lexers and parsers before the refactoring that put Cmm modules in a separate subdirectory.

viluon commented 3 years ago

To clarify, although the 0.9.0 HLS release does have some parser problems, these weren't the cause of the reported #include issues. I get the {-# UNPACK #-} problem reported in the log (#1258):

[Error - 6:23:01 PM] Request textDocument/codeLens failed.
  Message: Tokens.next failed to parse                         {-# UNPACK #-} !Int  -- length Parser did not consume entire stream, left: "!Int  -- length"

but #includes no longer stop the processing of the whole file: image