Changelogs and "available since"

Duncan Coutts duncan.coutts at
Tue Aug 18 07:46:08 EDT 2009

On Tue, 2009-08-18 at 08:58 +0100, Simon Marlow wrote:

> Using Hoogle sounds like a reasonable approach to get something working 
> quickly; I'm slightly concerned about the added complication of 
> requiring another tool, though.  By all means try it out and see how it 
> goes.
> Perhaps add 'cabal hoogle' functionality first.  Rather than having 
> Haddock query Hoogle, you could preprocess the information from Hoogle 
> first and feed it to Haddock in some format that Haddock can easily digest.

To me, it seems fairly clear that there's some piece of infrastructure
missing here, that all of haddock, hoogle, hstags, a PVP-checker and API
diff / changelog tool could use. For example, why is it that haddock has
a --hoogle flag to generate a file separate from the .haddock file yet
containing more or less the same information. This will not scale.

The key is to get API (and corresponding docs) out of a Haskell package
in a form that is machine readable, reasonably stable and does not
require the ghc api package to be able to read.

This should enable cabal to be able to generate and install this info
once and have it be used by a plethora of tools, rather than cabal
calling each service up-font at the time the package is built/installed.

The obvious choice, I think, is to make haddock responsible for defining
the format and generating the data. Then haddock gets developed along
with ghc and serves as the translator from the ever-changing ghc data
formats to something more stable that is suitable for these doc and api
tools. So haddock would split in two, data extraction and separately
html generation.

Not that all this helps Laszlo in the short-term.


More information about the cabal-devel mailing list