Ticket #244 (new enhancement)
Add Changelog summary feature to sdist
Description
In a discussion with Audrey Tang, she mentioned that a very nice feature of CPAN which she missed in Hackage was standardized changes files.
It seems to me that one way to acheive this would be to add a --changelog flag to sdist (or maybe make default). This call 'darcs changes' and copy into the ChangeLog? everything up to 2 tags ago. (2 tags because the first tag might be you preparing for a release). I'd imagine parsing would be dead easy: 'lines' to split it up into individual entries, and then take until you hit a 'tagged' entry. If the resulting list is length of 1, then take again.
So you'd go 'runhaskell Setup sdist --changelog', and ChangeLog? in the tarball would have, say, for Monadius:
Wed Feb 20 18:37:42 EST 2008 gwern0@…
tagged 0.91
Wed Feb 20 18:37:29 EST 2008 gwern0@…
- misc improvements: newtype, cabal, fmt
Fri Dec 7 16:23:53 EST 2007 gwern0@…
- rm extra source-files The line was originally there because there is an icon for Monadius in the source-files and some sort of Windows resource text file telling Windows to use it; I'm removing the mention of them in the .cabal because I don't think Cabal handles that right now.
Thu Dec 6 16:30:31 EST 2007 gwern0@…
- whitespace changes, add haskell98 to dependencies
Tue Dec 4 13:46:38 EST 2007 gwern0@…
- mv cabal field so hackage doesn't complain
Tue Dec 4 13:10:47 EST 2007 gwern0@…
- cabal fixes
Tue Dec 4 08:32:25 EST 2007 gwern0@…
tagged 0.91
At this point, Hackage could be updated to link to it in the same way as it does for the .cabal file. That way, people could then easily take a look and see what's new since the last version. (Said facility is currently a little difficult unless the package authors manually maintain a ChangeLog? and specifically include it into the tarball; you'd still have to either go to the repo or download the tarball simply to find out what's different from the older packages.)
--gwern
