[Fwd: Bug and Features Cabal]

Duncan Coutts duncan.coutts at worc.ox.ac.uk
Mon Apr 23 06:18:37 EDT 2007


On Mon, 2007-04-23 at 10:33 +0100, Ross Paterson wrote:

> Hans has implicitly assumed that the constraints and warnings of
> HackageDB should at least trigger warnings when building with Cabal (or
> that HackageDB would have no additional constraints).  There's something
> to be said for that.  Currently, these are:
>  * HackageDB requires that the base name of the .cabal file is identical
>    to the name of the package.
>  * HackageDB requires that parsing and printing the version number should
>    give the original string; this fails for version numbers with redundant
>    leading zeroes, like 5.04.
>  * In addition to Cabal warnings, HackageDB warns about
>     - missing category, description, maintainer and synopsis fields
>     - over-long synopsis fields
>     - exposed modules that use unallocated top-level names in the module
>       hierarchy

It'd be great to implement this in a Distribution.[Simple.]Lint module
and have HackageDB use that. Additionally we could have "cabal-setup
lint" or "check" or something to get those warnings locally. I'm sure
there are other best practises that we can encode in a bunch of lint
checks.

To advertise itself perhaps we should have cabal-setup sdist suggest
that the user try the lint check. If the user is doing sdist it's likely
that they intend to distribute and it's not just a quick hack so it's a
better time to suggest some QA.

Duncan



More information about the cabal-devel mailing list