
Hello all I've upload precis to Hackage - a diff tool for Cabal packages. It compares two cabal files looking at changes to the exposed and internal modules lists, then diffs the exposed modules. It only works on extant .hs files - i.e. it won't work on .hsc files. Also, I haven't tested if it works on .lhs files - parsing is left to haskell-src-exts. When it diffs new and old revisions of an exposed module it should report: - changes to the export list - changes to instance declarations - changes to exported data declarations - changes to the exported type signatures of exported functions The report it produces is not very pretty. A declaration is marked as *conflict* if its textual representation has changed - I compare the string output from pretty printing the new and old versions rather than look deeply into the AST. Though low-tech, this seems to work well in practice. I expect there are some bugs... Thanks to Malcolm Wallace for CppHs, and Niklas Broberg for haskell-src-exts. Best wishes Stephen