I love this idea. Having to specify the local interface file is a major defect of my solution. I'd much rather specify just the URL for the external library docs. I'd also be happy to adopt some convention about where to put such docs so they could be determined automatically. Perhaps via indirection where necessary. Then my per-project makefile content would vanish altogether.
Ross: I don't understand the last remark below about my requirements differ from HackageDB's.
- Conal
On Fri, Jan 19, 2007 at 05:18:07PM -0800, Conal Elliott wrote:
> So now I have just a new pair of flags enable-use-packages &
> disable-use-packages, which control whether haddock gets
> automatically-generated --use-package flags.
There's a similar (but simpler) problem with generating Haddock
documentation for HackageDB. The trouble is that --use-package is
half right: it gives the interface file you want, but the wrong URL for
cross-references. (And there's no way to override it, because haddock
doesn't know which package a --read-interface option relates to.)
For HackageDB, I think the appropriate thing would be for Cabal to use
ghc-pkg to get the haddock-interfaces field (instead of asking haddock to
ask ghc-pkg for it), but for the user to be able to override the HTML URL
at configure time. For HackageDB, a suitable template would be
http://hackage.haskell.org/packages/archive/$pkg/$pkgid.misc/doc/html
or
http://hackage.haskell.org/packages/archive/$pkg/latest.misc/doc/html
That wouldn't work for Conal's situation, where the URLs for his own
packages point at a different place than the ones distributed with GHC.
_______________________________________________
cabal-devel mailing list
cabal-devel@haskell.org
http://www.haskell.org/mailman/listinfo/cabal-devel