echangelog¶
NAME¶
echangelog - Gentoo: update portage ChangeLogsSYNOPSIS¶
echangelog [ text ]
DESCRIPTION¶
This tool provides an easy way to create or update portage ChangeLogs in Gentoo. The tool scans the current directory, which is assumed to be a package directory such as /usr/portage/app-editors/vim, finds what files have been changed or added, and inserts the appropriate entry to ChangeLog. If text is not provided on the command-line, echangelog prompts for it.
All modifications should occur before running echangelog so that it can include the appropriate file information in the ChangeLog entry. For example, you should run "cvs add" on your files, otherwise echangelog won't know those files are part of the update.
If your text would cause the ChangeLog entry to exceed 80 columns, it will be rewrapped to keep the ChangeLog neat. If you need special formatting in the ChangeLog, then you can either (1) run echangelog with no text on the command-line, and make sure that your text won't be too wide, (2) edit the ChangeLog manually. If you prefer (2), I'd recommend something like "echangelog blah" so that the header lines are computed correctly, then edit and change "blah" to your preferred text.
In addition to updating the ChangeLog, echangelog will automatically update the copyright year of all out-of-date ebuilds, as well as the ChangeLog itself. These updates are included in the diff displayed by echangelog when it finishes its work.
OPTIONS¶
Presently echangelog is simple enough that it supplies no options. Probably I'll add --help and --version in the future, but for now it's enough to track the gentoolkit version.
EXAMPLES¶
To create a ChangeLog for a completely new package. The header is parsed from skel.ebuild.
$ cvs add metalog-0.1.ebuild cvs server: use \*(Aqcvs commit\*(Aq to add this file permanently
$ echangelog \*(AqNew ebuild, thanks to Harvey McGillicuddy\*(Aq --- ChangeLog 1969-12-31 19:00:00.000000000 -0500 +++ ChangeLog.new 2003-02-23 14:04:06.000000000 -0500 @@ -0,0 +1,9 @@ +# ChangeLog for app-admin/metalog +# Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 +# $Header$ + +*metalog-0.1 (23 Feb 2003) + + 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1.ebuild : + New ebuild, thanks to Harvey McGillicuddy +
To bump a revision. Note you need to "cvs add" so that echangelog will notice the new file.
$ cvs add metalog-0.1-r1.ebuild cvs server: use \*(Aqcvs commit\*(Aq to add this file permanently
$ echangelog \*(AqBump revision to fix bug #999\*(Aq --- ChangeLog 2003-02-23 14:04:06.000000000 -0500 +++ ChangeLog.new 2003-02-23 14:07:48.000000000 -0500 @@ -2,6 +2,11 @@ # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 # $Header$
+*metalog-0.1-r1 (23 Feb 2003) + + 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1-r1.ebuild : + Bump revision to fix bug #999 + *metalog-0.1 (23 Feb 2003)
23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1.ebuild :
For a multi-line entry, omit the command-line arg.
$ echangelog Please type the log entry, finish with ctrl-d Bump revision to fix bug #999. Necessary to bump the revision because the problem appears at run-time, not compile-time. This should also give users the updated default configuration file. --- ChangeLog 2003-02-23 14:09:12.000000000 -0500 +++ ChangeLog.new 2003-02-23 14:12:43.000000000 -0500 @@ -2,6 +2,13 @@ # Copyright 2000-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 # $Header$
+*metalog-0.1-r1 (23 Feb 2003) + + 23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1-r1.ebuild : + Bump revision to fix bug #999. Necessary to bump the revision because + the problem appears at run-time, not compile-time. This should also + give users the updated default configuration file. + *metalog-0.1 (23 Feb 2003)
23 Feb 2003; Aron Griffis <agriffis@gentoo.org> metalog-0.1.ebuild :
ENVIRONMENT VARIABLES¶
ECHANGELOG_USER
If echangelog can't figure out your username for the entry, you should set ECHANGELOG_USER. For example, export ECHANGELOG_USER="Aron Griffis <agriffis@gentoo.org>"
NOTES¶
As of the most recent version of echangelog (when this man-page appeared), echangelog puts all new entries at the top of the file instead of finding the appropriate *version line within the file. This is because that "new" ChangeLog format was never agreed upon by the Gentoo developers. Unfortunately the existence of both formats will undoubtedly cause much confusion.
This also means that the examples above are wrong, since I just copied them from some old email. However they're not much wrong. ;-)
This tool was written by Aron Griffis <agriffis@gentoo.org>. Bugs found should be filed against me at
2009-04-28