[Resolved] What steps are needed to upload docs to hackage?


I’ve been trying to figure out what combination of commands I need to properly upload documentation to hackage that includes working hyperlinks.

So far I have tried translating this script from lens, lens/hackage-docs.sh at master · ekmett/lens · GitHub, into a github work flow, message-db/ci.yaml at 4b9eb68b9b46d48df5dc012a1de8947b29599100 · Disco-Dave/message-db · GitHub.

However when viewing the release candidate on hackage some of the links are missing, for instance anything from postgresql-simple does not get hyperlinked in the type signatures. MessageDb.Functions

Can anyone tell me what I’m doing wrong or point me to up to date information on how to properly publish a package with hyperlinked documentation?


I should have read the official docs better. The answer was at the bottom of the page on Uploading packages and package candidates | Hackage.

In particular I just needed to change from:

cabal haddock --builddir ./hackage-dist --haddock-for-hackage --haddock-options=--hyperlinked-source


cabal haddock --builddir ./hackage-dist --haddock-for-hackage --enable-doc