Skip to content

Correct way to build a project in order to have Haddocks displayed on hover #4210

Open
@Kleidukos

Description

@Kleidukos

Your environment

haskell-language-server version: 2.7.0.0
editor: neovim

What's wrong?

It appears that the haddocks of an identifier are unreliably shown.

For a local identifier, no problem

Screenshot_20240505_150822

But for dependencies it's not a granted.

Screenshot_20240505_150856

I have a cabal.project file with the following:

packages: ./          
with-compiler: ghc-9.4
documentation: True   
                      
package *             
  documentation: True 

What am I missing? I thought I had covered all the cases?

Debug information

Build log:
Build profile: -w ghc-9.4.8 -O1
In order, the following will be built (use -v for more details):
 - os-string-2.0.2 (lib) (requires build)
 - hashable-1.4.4.0 (lib) (requires build)
 - unordered-containers-0.2.20 (lib) (requires build)
 - relude-1.2.1.0 (lib) (requires build)
 - cabaltest-0.1.0.0 (lib) (dependency rebuilt)
 - cabaltest-0.1.0.0 (exe:cabaltest) (dependency rebuilt)
Starting     os-string-2.0.2 (lib)
Building     os-string-2.0.2 (lib)
Haddock      os-string-2.0.2 (lib)
Installing   os-string-2.0.2 (lib)
Completed    os-string-2.0.2 (lib)
Starting     hashable-1.4.4.0 (lib)
Building     hashable-1.4.4.0 (lib)
Haddock      hashable-1.4.4.0 (lib)
Installing   hashable-1.4.4.0 (lib)
Completed    hashable-1.4.4.0 (lib)
Starting     unordered-containers-0.2.20 (lib)
Building     unordered-containers-0.2.20 (lib)
Haddock      unordered-containers-0.2.20 (lib)
Installing   unordered-containers-0.2.20 (lib)
Completed    unordered-containers-0.2.20 (lib)
Starting     relude-1.2.1.0 (lib)
Building     relude-1.2.1.0 (lib)
Haddock      relude-1.2.1.0 (lib)
Installing   relude-1.2.1.0 (lib)
Completed    relude-1.2.1.0 (lib)
Preprocessing library for cabaltest-0.1.0.0..
Building library for cabaltest-0.1.0.0..
Preprocessing library for cabaltest-0.1.0.0..
Running Haddock on library for cabaltest-0.1.0.0..
  50% (  1 /  2) in 'MyLib'
  Missing documentation for:
    Module header

src/MyLib.hs:14:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘test’
   |
14 | test = someFunc
   | ^^^^
Documentation created:
/home/hecate/Téléchargements/test/cabal-test/dist-newstyle/build/x86_64-linux/ghc-9.4.8/cabaltest-0.1.0.0/doc/html/cabaltest/
Preprocessing executable 'cabaltest' for cabaltest-0.1.0.0..
Building executable 'cabaltest' for cabaltest-0.1.0.0..
[2 of 2] Linking /home/hecate/Téléchargements/test/cabal-test/dist-newstyle/build/x86_64-linux/ghc-9.4.8/cabaltest-0.1.0.0/x/cabaltest/build/cabaltest/cabaltest [Library changed]

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationtype: supportUser support tickets, questions, help with setup etc.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions