Here is an example broken entry: # $Header: /var/cvsroot/gentoo-x86/x11-libs/libXinerama/ChangeLog,v 1.27 2007/03/22 02:18:21 joshuabaergen Exp $ 22 Mar 2007; Joshua Baergen <joshuabaergen@gentoo.org> +libXinerama-1.0.2.ebuild: Version bump. Includes new documentation and some small code tweaks. This is missing the *libXinerama-1.0.2 (22 Mar 2007) line. Having this line is important because emerge -pl libXinerama does not work without it.
Created attachment 114184 [details] check_changelog.py Here is the logic for checking ChangeLogs. Can be run like: find /usr/portage/ -name "ChangeLog" | xargs python changelog.py It seems the tree is full of broken entries atm: betelgeuse@pena ~/python $ find /usr/portage/ -name "ChangeLog" | xargs python changelog.py | wc -l 2545
Created attachment 114194 [details] check_changelog.py Handle package names with + in them.
Created attachment 114220 [details] check_changelog.py Take package moves into account and check the date syntax for *foo-1.0 (date) lines. http://dev.gentoo.org/~betelgeuse/changelogs_syntax_errors.txt
As discussed on irc, I'd like to add 2 new repoman checks for this: 1) Fail if a new ebuild has been added without an appropriate ChangeLog entry. 2) Warn if there are broken ChangeLog entries for previously existing ebuilds.
(In reply to comment #4) > 1) Fail if a new ebuild has been added without an appropriate ChangeLog entry. > 2) Warn if there are broken ChangeLog entries for previously existing ebuilds. What is the status?
Do we really want to add more stuff into the current repoman incarnation? That beast *really* needs to be rewritten.
Obsolete? Devs don't generate changelogs nowadays and repoman won't see them.
<ulm> mjo: just close it