ndmitchell / ndmitchell/ghcid

Fails with nvim

Open
#175 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Haskell
Stars
1.2k
Forks
117
PR merge metrics
No merged PRs in 30d

Description

Opening a file of the project from a directory that is not the project root fails to find the stack configuration and then fails with:

Loading ghci -fno-code -fno-break-on-exception -fno-break-on-error -v1 -ferror-spans -j ...
GHCi, version 8.2.2: http://www.haskell.org/ghc/  :? for help

No files loaded, GHCi is not working properly.
Command: ghci -fno-code -fno-break-on-exception -fno-break-on-error -v1 -ferror-spans -j

[Process exited 1]

Opening from the project root fails too:

Loading stack ghci --test --no-load --ghci-options=-fno-code --ghci-options=-fno-break-on-exception --ghci-options=-fno-break-on-error --ghci-options=-v1 --ghci-options=
-ferror-spans --ghci-options=-j ...
<xxx>-0.1.0.0: configure (lib + exe + test)
<xxx>-0.1.0.0: initial-build-steps (lib + exe + test)
<xxx>-0.1.0.0: Test running disabled by --no-run-tests flag.
Completed 2 action(s).
Log files have been written to: <xxxx>

* * * * * * * *
Warning: There are cabal settings for this project which may prevent GHCi from loading your code properly.
In some cases it can also load some projects which would otherwise fail to build.

-XOverloadedStrings will be used, but it can cause type ambiguity in code not usually compiled with it.
It is specified for:
    <xxx>:lib <xxx>:exe:<xxx> <xxx>:exe:<xxx> <xxx>:exe:<xxx> <xxx>:exe:<xxx> <xxx>:exe:<xxx> ...
But not for:
    docusign-base:lib docusign-client:lib

To resolve, remove the flag(s) from the cabal file(s) and instead put them at the top of the haskell files.

It isn't yet possible to load multiple packages into GHCi in all cases - see
https://ghc.haskell.org/trac/ghc/ticket/10827
* * * * * * * *

The following GHC options are incompatible with GHCi and have not been passed to it: -O2 -threaded
Configuring GHCi with the following packages: <xxx>, docusign-base, docusign-client
GHCi, version 8.2.2: http://www.haskell.org/ghc/  :? for help
Loaded GHCi configuration from /home/hasufell/git/CM_app/app/.ghci

No files loaded, GHCi is not working properly.
Command: stack ghci --test --no-load --ghci-options=-fno-code --ghci-options=-fno-break-on-exception --ghci-options=-fno-break-on-error --ghci-options=-v1 --ghci-options
=-ferror-spans --ghci-options=-j

[Process exited 1]

I cannot share the project I run this on, since it's not open source.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure in nvim by opening a project file from both the project root and another directory, using the shown ghci and stack ghci commands. Trace how ghcid finds the stack configuration and starts GHCi; done means both opening locations load the project successfully, though the issue does not name a file or test.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.