Skip to content
This repository was archived by the owner on Oct 7, 2020. It is now read-only.
This repository was archived by the owner on Oct 7, 2020. It is now read-only.

HIE seems to be able to typechek only one module #680

Open
@maksbotan

Description

@maksbotan

I use HIE with LanguageClient_neovim. Versions:

$ ~/.local/bin/hie --version
Version 0.2.0.0, Git revision e159e35a5471bcfa8576d663cb82180dc9fe53ab (dirty) (1555 commits) x86_64 ghc-8.2.2
$ stack --version
Version 1.7.1, Git revision 681c800873816c022739ca7ed14755e85a579565 (5807 commits) x86_64 hpack-0.28.2

I build HIE with $ stack --resolver=lts-11.2 --stack-yaml=stack-8.2.2.yaml install, since we have LTS-11.2 in the project I develop.

The project consists of a library and an executable in separate Cabal files. The executable is built with -dynamic, so I also have to add -fexternal-interpreter to its Cabal file.

However, it seems that HIE can typecheck only the first file I open in nvim. All subsequent files result in didn't get typechecked module. Here's a part of log with --debug --vomit:

2018-07-12 23:45:52.549029635 [ThreadId 4] - ---> {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"languageId":"haskell","text":" ...
2018-07-12 23:45:52.550559802 [ThreadId 10] - ****** reactor: got message number:3
2018-07-12 23:45:52.55069708 [ThreadId 10] - ****** reactor: processing NotDidOpenTextDocument
2018-07-12 23:45:52.5508884 [ThreadId 9] - ghcDispatcher:got request 3 with id: Nothing
2018-07-12 23:45:52.749975698 [ThreadId 9] - file mapping state is: fromList [("/../MainWindow.hs",FileMapping {fmPath = "/tmp/ghc-mod24974/MainWindow24973-0.hs", fmTemp = True}),("/.../WalletTree.hs",FileMapping {fmPath = "/tmp/ghc-mod24975/WalletTree24973-1.hs", fmTemp = True})]
2018-07-12 23:45:52.750217547 [ThreadId 9] - ghcDispatcher: top of loop
2018-07-12 23:45:52.750346578 [ThreadId 9] - ghcDispatcher:got request 3 with id: Nothing
2018-07-12 23:45:52.750479733 [ThreadId 9] - ghcDispatcher:Processing request as version matches
2018-07-12 23:45:52.806597695 [ThreadId 9] - ghcDispatcher: top of loop
2018-07-12 23:45:52.806739459 [ThreadId 9] - ghcDispatcher:got request 3 with id: Nothing
2018-07-12 23:45:52.806801621 [ThreadId 9] - ghcDispatcher:Processing request as version matches
2018-07-12 23:45:52.827888132 [ThreadId 9] - setTypecheckedModule: file mapping state is: fromList [("/home/maks/Projects/SRK/ariadne/ui/qt/src/Ariadne/UI/Qt/MainWindow.hs",FileMapping {fmPath = "/tmp/ghc-mod24974/MainWindow24973-0.hs", fmTemp = True}),("/home/maks/Projects/SRK/ariadne/ui/qt/src/Ariadne/UI/Qt/Widgets/WalletTree.hs",FileMapping {fmPath = "/tmp/ghc-mod24975/WalletTree24973-1.hs", fmTemp = True})]
2018-07-12 23:45:52.828050778 [ThreadId 9] - setTypecheckedModule: before ghc-mod
2018-07-12 23:45:52.85245996 [ThreadId 6] - <--2--{"jsonrpc":"2.0","params":{"uri":"...","diagnostics":[...
2018-07-12 23:45:54.599552113 [ThreadId 9] - setTypecheckedModule: after ghc-mod
2018-07-12 23:45:54.600437366 [ThreadId 9] - setTypecheckedModule: Didn't get typechecked module for: "/home/maks/Projects/SRK/ariadne/ui/qt/src/Ariadne/UI/Qt/Widgets/WalletTree.hs"
2018-07-12 23:45:54.600668187 [ThreadId 9] - ghcDispatcher: top of loop
2018-07-12 23:45:54.600838194 [ThreadId 6] - <--2--{"jsonrpc":"2.0","params":{"type":1,"message":"Got error while processing diagnostics: {handle: <file descriptor: 14>}: GHCi.Message.remoteCall: end of file"},"method":"window/showMessage"}

Also, ps indicates that ghc-iserv-dyn process dies after this. How can I debug this further?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions