Skip to content

Documentation/Source links to wrong URI when opened in Hackage (with ghc >= 9.8.4). #1303

@Saizan

Description

@Saizan

This is the same problem as haskell/haskell-language-server#4579. I believe the "bug" is in the vscode extension so I opened this. Also, I can reproduce on linux with recent enough ghc versions, i.e starting with ghc-9.8.4.

The crux is that HLS is sending the URIs for the locally stored docs, e.g.

[Documentation](file:///home/vscode/.ghcup/ghc/9.8.4/share/doc/ghc-9.8.4/html/libraries/base-4.19.2.0-9fbd/System-IO.html#v:putStrLn)

[Source](file:///home/vscode/.ghcup/ghc/9.8.4/share/doc/ghc-9.8.4/html/libraries/base-4.19.2.0-9fbd/src/System.IO.html#putStrLn)

and vscode-haskell does some mangling to point them to Hackage instead. Since ghc-9.8.4 the mangling is insufficient, as it keeps the -9fbd suffix in the URI, which is not correct.

The package directories are named $pkg_name-$pkg_ver-$hex where $hex is 4 hex digits. We want to drop the -$hex suffix, and since $pkg_ver cannot contain - it's actually unambiguous.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions