Hi, I accidently commited something to CVS yesterday from a box where ECHANGELOG_USER was not set, so the ChangeLog says "root <root@gentoo.org>" now. I looked at the source of echangelog and found a little logical error: # Prepend the user info to the input $user = $ENV{'ECHANGELOG_USER'} || sprintf("%s <%s\@gentoo.org>", (getpwuid($<))[6,0]); # Make sure that we didn't get "root" die "Please set ECHANGELOG_USER or run as non-root\n" if $user =~ / root@/; set $user to ECHANGELOG_USER, if thats not set, use the current username. Die if $user starts with 'root'. If ECHANGELOG_USER is not set, it just puts root@gentoo.org in the ChangeLog. My suggested patch is: - sprintf("%s <%s\@gentoo.org>", (getpwuid($<))[6,0]); + die "Please set ECHANGELOG_USER, for example export ECHANGELOG_USER='John Doe <john\@gentoo.org>'\n"; But feel free to change it to something better :)
The only problem with the source as it stands is that / root@/ should be /<root@/. I've fixed this and committed to gentoolkit cvs, thanks.