Duncan Coutts wrote:
What we're currently missing is a PVP checker: a tool to compare APIs of
package versions and check that it is following the PVP. Ideally, we
will have packages opt-in to follow the PVP for those packages that do
opt-in we have the PVP enforced on hackage using the checker tool. Since
the HP is almost certainly going to require packages to follow the PVP
then this should eliminate this class of mistakes. But it does need the
tool, and nobody is working on that at the moment.
Recently, I wanted to compare two branches of one of my libraries to see what API changes I had made. My low-tech solution was to do a two-line hack on haddock so that it sorts the modules before generating Hoogle documentation, and then to compare (with diff) the two hoogle documentation files between the branches. The Hoogle format just seems to be a list of definitions with types, classes and instances -- so it seems to fit the bill.

I imagine it's not foolproof, but perhaps this could be a quick fix, at least as a heuristic for a package maintainer ("hoogle-diff suggests you may have altered something, please check before continuing to upload")?

Thanks,

Neil.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to