2005-08-13 Saturday 02:57  kfogel

	* index.html:

	* index.html: Follow up to rev 1.36, making notice less terse and
	  thanking Martyn Pearce.

2005-08-12 Friday 15:58  kfogel

	* index.html:

	* index.html: Announce need for new maintainer.

2005-05-18 Wednesday 05:45  kfogel

	* index.html:

	Fix typo, and add Anne Dudfield's name to contributor list.

2005-05-18 Wednesday 05:42  kfogel

	* changelogs.html, index.html:

	Update for 2.59.  Unpromise further ChangeLog-writing tips.

2005-05-18 Wednesday 05:34  kfogel

	* cvs2cl.pl:

	(output_changelog): Extend the regular expression that matches the
	header line of a ChangeLog entry to allow for optional day of week.

	This fixes the bug whereby the --accum option would not work when the
	existing ChangeLog was generated with the -w (--day-of-week) option.
	Patch from Anne Dudfield <adudfield@gmail.com>.

2004-11-07 Sunday 15:28  fluffy

	* cvs2cl.pl:

	* Add tag dates to XML output
	  patch contributed by Simon Josefsson <jas@extundo.com>
	* Fix quoting for cvs log command (fork & exec)
	* Determine branch-members in _revision_is_wanted with regex to include
	  branches to 10+ revisions
	* Fix non-working --prune option
	* Add note about use of suidperl for CGI
	  words contributed by Andrew Cutler <andrew.cutler@pag.com.au>
	* Correct sense of --no-ancestors
	  patch contributed by Steve Glow <sglow@embeddedintelligence.com>

2004-11-07 Sunday 15:20  fluffy

	* index.html:

	Add 2.58 release note

2004-10-30 Saturday 17:01  fluffy

	* ChangeLog.xsd:

	support optional linesadded/linesremoved elements

2004-10-30 Saturday 16:50  fluffy

	* ChangeLog.xsd:

	Contributed by Yury Lebedev <yurylebedev@mail.ru>

2004-10-12 Tuesday 07:30  kfogel

	* index.html:

	* cvs2cl/index.html: Active maintainership of cl2html is in the hands
	    of Simon Josefsson <jas@extundo.com> now, so link to his site.

2004-07-10 Saturday 19:38  fluffy

	* index.html:

	Update 2.56 to 2.57

2004-07-10 Saturday 19:38  fluffy

	* cvs2cl.pl:

	Fix typo in RE for 1.12.9-style dates

2004-07-10 Saturday 18:53  fluffy

	* cvs2cl.pl:

	* add patch to allow correct date format reading under cvs 1.12.9
	  patch contributed by Jordan Russell <jr-list-2004@quo.to>,
	                       Martin Dorey <mdorey@bluearc.com>,
	                       Geo Carncross <geocar@internetconnection.net>,
	                       Simon Josefsson <jas@extundo.com>
	* handle carriage returns in windoze output
	* fix missing use of File::Basename in ChangeLog::FileEntry
	  patch contributed by Jacek Sliwerski <s9jasliw@stud.uni-saarland.de>
	* fix gecos handling to read getpwnam correctly
	  patch contributed by Christian Marquardt <christian.marquardt@metoffice.com>

2004-07-10 Saturday 18:49  fluffy

	* index.html:

	Add notes of 2.56

2004-07-10 Saturday 16:38  fluffy

	* cvs2cl_ruether.xslt:

	Donated by alexander Ruether

2004-05-16 Sunday 17:57  kfogel

	* index.html:

	* cvs2cl/index.html: Remove the 'cvs login' step from the anonymous
	    CVS instructions.  CVS hasn't required it since late 1999, though
	    apparently nobody knows this, because many sites still document a
	    login step before the checkout.

2004-05-15 Saturday 20:09  fluffy

	* cvs2cl.pl:

	Add --lines-modified, --follow-only options

2004-05-15 Saturday 19:59  fluffy

	* index.html:

	Add details for 2.55

2004-04-20 Tuesday 01:17  kfogel

	* cvs2cl.pl:

	Correct spelling of Melissa O'Neill's name.

2004-04-17 Saturday 14:35  fluffy

	* index.html:

	Add Pete Kempf to contributors' list

2004-03-07 Sunday 12:32  fluffy

	* index.html:

	Add in 2.53

2004-03-07 Sunday 11:56  fluffy

	* cvs2cl.pl:

	* fix to provide non-zero exit status if cvs log fails
	* fix --follow to not complain of undefined values
	  patch contributed by Johannes Stezenbach <js@convergence.de>
	* fix --gecos to cope if author is missing, or if gecos field lacks commas
	* fix -t -b to not die with a bad array dereference
	  patch contributed by Thomas Parmelan <parmelan+debian@free.fr>
	* formatting fixes for pod
	  patch contributed by Peter Palfrader <peter@palfrader.org>

2004-03-06 Saturday 14:57  fluffy

	* cl2html_rss-karaguezian.xslt:

	Generate RSS & HTML (with table & colouring for files); contributed by Nicolas Karaguezian

2004-01-21 Wednesday 17:02  fluffy

	* cvs2cl.pl, index.html:

	* fix --summary to wrap lines (unless --no-wrap is also used)
	  patch contributed by Richard Laager <rlaager@wiktel.com>
	* fix --no-indent option to be intuitive in conjunction with
	  --hide-filenames and --no-wrap
	  patch contributed by Karl-Heinz Marbaise
	    <karl-heinz@minkenberg-medien.de>
	* factor out ChangeLog:: classes
	* rejig POD to make man page

2004-01-20 Tuesday 11:37  fluffy

	* ieee1394-cl.html:

	Daniel Ciaglia's XSLT (Example Output)

2004-01-20 Tuesday 11:30  fluffy

	* cl2any-ciaglia.bash, cl2html-ciaglia.xslt:

	Daniel Ciaglia's XSLT

2003-12-10 Wednesday 09:27  fluffy

	* index.html:

	Add Robin Johnson to the list of contributors

2003-12-09 Tuesday 11:16  fluffy

	* filter-cvs2cl.xslt:

	[no log message]

2003-12-09 Tuesday 11:14  fluffy

	* index.html:

	Add in 2.51 release notes, and authors & contributors section

2003-12-09 Tuesday 10:07  fluffy

	* cvs2cl.pl:

	* add no-indent option
	  patch contributed by Akos Kiss <akiss@akiss.hu>
	* add examples of date use
	* partial implementation of group-within-date
	* avoid uninitialized value warnings with --gecos
	  patch contributed by Mitsuaki Masuhara <fish-n-fins@geocities.co.jp>
	* fix --FSF to not indent extra spaces
	* add ISO date to XML output
	  patch contributed by Joseph Walton <joe@kafsemo.org>
	* remove Attic/ path from --rcs output (to match non-rcs output)
	  patch contributed by Dave Elcock <dave.elcock@sias.com>
	* handle files with a space in their name that were added on a branch
	  patch contributed by Dave Elcock <dave.elcock@sias.com>

2003-08-25 Monday 11:02  fluffy

	* index.html:

	Comments for 2.50

2003-08-25 Monday 10:52  fluffy

	* cvs2cl.pl:

	* Sort tags on output to ensure determinism to assist in tests (and other
	  change-check mechanisms).
	* Change 'wrap' to 'mywrap' because Text::Wrap in perl 5.005_03 exports wrap
	  unconditionally and generates an override warning
	* Remove additional newline from msg in XML mode
	* Add --noxmlns option
	* Interpret "[user@]host:/file/whatever" in -U option
	  patch contributed by Eddie Kohler <kohler@icir.org>
	* Better wrapping of filenames with --no-wrap
	* Undocument --update since it doesn't actually do anything useful.

2003-08-24 Sunday 17:39  fluffy

	* cl2html.xslt:

	[no log message]

2003-06-21 Saturday 11:46  fluffy

	* index.html:

	Add notes for 2.49

2003-06-21 Saturday 11:24  fluffy

	* cvs2cl.pl:

	* Conflate --domain, --mailname options
	* Document --chrono option
	  patch contributed by Ernie Zapata <ez@microgate.com>
	* Amend --rcs to work with windoze
	  patch contributed by Ernie Zapata <ez@microgate.com>
	* Fix awkward wrapping that hangs indent where multi-space sequences are
	  wrapped
	* Add checking for combined use of -[lg] with --stdin
	* Fix multiple accumulation of logs with --accum --utc
	  patch contributed by Arthur de Jong <arthur@tiefighter.et.tudelft.nl>
	* Remove superfluous end-of-line whitespace
	  patch courtesy of Oswald Buddenhagen <ossi@kde.org>
	* Amend indenting style to hang whole paragraph past '* '.
	* don't show log entries for file addition on a branch (except with
	  --no-hide-branch-additions option).
	  patch contributed by Kevin Lilly <tea41@yahoo.com>
	* Document --no-hide-branch-additions flag

2003-04-22 Tuesday 07:58  fluffy

	* index.html:

	Update for 2.48

2003-04-21 Monday 09:50  fluffy

	* cvs2cl.pl:

	* Add --passwd option
	  patch based on code contributed by Mark W. Eichin <eichin@thok.org>
	* Add doc. for --update
	* Add --summary, --update options
	  patches contributed by Mike Ayers <mayers@neviknetworks.com>
	* Add --no-ancestors
	  patch contributed by Richard Broberg <richard.broberg@inficon.com>
	* add --show-dead option
	  patch based on code supplied by Dave Elcock <dave@sias.com>
	* add --rcs option
	  patch courtesy of Joe Orton <jorton@redhat.com>
	* add --mailname option, correct --passwd

2003-04-12 Saturday 14:36  fluffy

	* index.html:

	Add links to CVS home, CVSps page.

2003-03-10 Monday 16:08  fluffy

	* cvs2cl.pl:

	* Add test for --delta option
	* Document --delta option
	* Add --gecos, --domain options
	  patch supplied by Robin Hugh Johnson <robbat2@orbis-terrarum.net>
	* Add --FSF option
	* Add test for -W option
	* Add --no-common-dir option
	  patch supplied by Simon Josefsson <jas@extundo.com>
	* Exclude duplicate file information items from info lines
	* Add --show-tag option, tweak implementation of ignore-tag option
	  Document both
	* Add tests for --ignore-tags option
	* Make sort order deterministic for equal timestamps
	* Fix bug #25 (Option to write output in chronologically ascending
	  order)
	  patch supplied by Reid Ellis <rae@tnir.org>
	* Fix bug #24 (Option to not print HH:MM on timestamps)
	  patch supplied by Simon Josefsson <jas@extundo.com>

2003-01-18 Saturday 13:14  fluffy

	* cvs2cl.pl:

	* Add --no-times option
	    patch supplied by Simon Josefsson jas@extundo.com

2003-01-18 Saturday 11:35  fluffy

	* index.html:

	Add descriptions to bug numbers in changelog

2003-01-18 Saturday 11:21  fluffy

	* index.html:

	Add mini-change history at bottom

2003-01-12 Sunday 13:41  fluffy

	* cvs2cl.pl:

	* Fix bug #22 (spurious extra square brackets)
	  patch supplied by Tim Bradshaw tfb@cley.com
	* Fix bug #19 (carriage returns on windoze)
	  patch based on code supplied by Kane, Terry TeKane@radiantsystems.com
	* Fix bug #23 (hardwired perl version)
	  patch supplied by Tim Bradshaw tfb@cley.com

2002-11-25 Monday 21:00  fluffy

	* cvs2cl.pl:

	Fix bug #18 (spurious UTF-8 warnings)

2002-11-24 Sunday 11:53  fluffy

	* BUGS.html:

	BUGS update for 2.43

2002-11-23 Saturday 20:51  fluffy

	* index.html:

	Include BUGS.html reference

2002-11-23 Saturday 20:26  fluffy

	* cvs2cl.pl:

	* Fix bug #14 (Conflict with --accum and -D)
	  patch based on code supplied by Claus Klein Claus.Klein@marconi.com
	* Fix bug #11 (add '--tagdates' option)
	  patch supplied by Henrik Nordstrom <hno@marasystems.com>

2002-11-23 Saturday 17:49  fluffy

	* cvs2cl.pl:

	* Fix bug #8 (add '--delta' flag)
	  patch supplied by Nathan Bryant <nbryant@allegientsystems.com>

2002-11-18 Monday 21:36  fluffy

	* index.html:

	Remove the colours!
	(this is really a test that updates are getting through)

2002-11-18 Monday 21:33  fluffy

	* BUGS.html, BUGS.xml:

	Initial bug logs

2002-11-18 Monday 21:30  fluffy

	* cvs2cl.pl:

	* Fix bug #5 (-W fails on argument '0')

2002-10-27 Sunday 08:50  fluffy

	* cvs2cl.pl:

	* Tweak eval line for fun & profit (and to make it work with perl
	  -I lib cvs2cl)
	* Add fix for really long file names (so they don't get wrapped).
	  This only works with later versions of Text::Wrap, unfortunately;
	  specifically not with the version that comes in 5.005_03
	* Add fix for direcories called '0' containing multiple files
	  Fix from Joachim Achtzehnter <joachim@kraut.ca>,
	  also from Rich Bowen <rbowen@cre8tivegroup.com>
	* Add --xml-encoding option
	  based on code from Patrick Ficheux <patrick.ficheux@bigfoot.com>

2002-07-29 Monday 13:00  fluffy

	* cvs2cl.pl:

	Add ignore_tags option.  Currently undocumented, 'til I'm convinced it's a
	runner.
	Sort utags prior to output to make testing predictable.

2002-07-03 Wednesday 22:11  kfogel

	* index.html:

	end of testing

2002-07-03 Wednesday 21:57  kfogel

	* index.html:

	test

2002-07-03 Wednesday 21:56  kfogel

	* index.html:

	test while kfogel is locking

2002-07-03 Wednesday 21:36  kfogel

	* index.html:

	test

2002-07-03 Wednesday 21:36  kfogel

	* index.html:

	test commit

2002-05-26 Sunday 00:43  kfogel

	* BUGS.mbox:

	Add more info about Laurent Duperval's line-wrapping bug.

2002-05-23 Thursday 16:56  kfogel

	* BUGS.mbox, index.html:

	Store bugs in CVS, point to them from new notice on home page.

2002-05-23 Thursday 16:49  kfogel

	* index.html:

	Add notice about maintainership transfer.

2001-02-12 Monday 19:55  kfogel

	* Makefile:

	(log): Use new "--accum" option.

2001-02-12 Monday 19:54  kfogel

	* Makefile, cvs2cl.pl:

	* cvs2cl.pl: New `--accum' option.
	* Makefile (log, changelog, ChangeLog): new rule and aliases.

2001-01-09 Tuesday 16:15  kfogel

	* index.html:

	Describe cvs2html a bit more.

2001-01-03 Wednesday 21:31  sussman

	* Makefile:

	Added Mike Sussman to people.html

2000-12-28 Thursday 23:19  kfogel

	* cvs2cl.pl:

	Better fsf-style formatting, but still not perfect.

	Sheesh.  Who would have thought this was such a problem?

2000-12-28 Thursday 22:10  kfogel

	* cvs2cl.pl:

	Grinding it down, just a little tweak left.

2000-12-28 Thursday 21:36  kfogel

	* cvs2cl.pl:

	In-progress checkpoint, working on that pesky formatting bug.

2000-12-26 Tuesday 00:21  kfogel

	* cvs2cl.pl:

	(derive_change_log): reset %symbolic_names to avoid spurious re-uses
	of revision numbers; Hendrik Ruijter <hendrik.ruijter@axis.com>'s
	patch.

2000-12-13 Wednesday 23:17  kfogel

	* cvs2cl.pl:

	(pretty_file_list): fix regexp so we keep all digits of the revision
	number.  Thanks to Alan Barrett <apb@cequrux.com> for the patch.

2000-12-13 Wednesday 23:09  kfogel

	* changelog-xml-schema.xdr, changelog.dtd, index.html:

	Added David Carlson's <davidwcarlson@hotmail.com> draft XML dtd and
	schema.

2000-11-14 Tuesday 02:31  kfogel

	* cvs2cl.pl:

	(wrap_log_entry): Removed the experimental blank-line handling.

2000-11-14 Tuesday 02:29  kfogel

	* cvs2cl.pl:

	(wrap_log_entry): handle leading spaces specially.
	This commit also includes some experimental blank-line handling, which
	I will remove in a moment.

2000-11-07 Tuesday 21:27  kfogel

	* get-rev.cgi:

	Remove tmp file.

2000-11-07 Tuesday 21:22  kfogel

	* get-rev.cgi:

	work

2000-11-07 Tuesday 21:14  kfogel

	* get-rev.cgi:

	script for checking out a specific revision

2000-11-07 Tuesday 20:43  kfogel

	* cvs2cl.pl:

	Update home page url.

2000-11-07 Tuesday 20:16  kfogel

	* Makefile:

	Doc fix.

2000-11-07 Tuesday 19:17  kfogel

	* index.html:

	Fix links to sample ChangeLogs.

2000-11-07 Tuesday 19:15  kfogel

	* index.html:

	fix image link

2000-11-07 Tuesday 19:14  kfogel

	* changelogs.html, index.html:

	White backgrounds.

2000-11-07 Tuesday 19:13  kfogel

	* .cvsignore, Makefile, changelogs.html, index.html,
	  make-samples.sh:

	Moving cvs2cl home page out of kfogel and into generic repository;
	make web stuff live directly and statically here too.

2000-09-06 Wednesday 16:57  kfogel

	* Makefile, cvs2cl.pl:

	Okay, *really* make `-S' and `--fsf' cooperate this time.

	Tests adjusted accordingly.

2000-09-06 Wednesday 04:42  kfogel

	* cvs2cl.pl:

	Handle the case where both `-S' and `--fsf' were passed.
	Added test for same.

2000-09-05 Tuesday 23:00  kfogel

	* cvs2cl.pl:

	(derive_change_log): oops, compensate for After_Header setting outside
	all loops.

2000-09-05 Tuesday 22:35  kfogel

	* cvs2cl.pl:

	(derive_change_log): compensate for After_Header setting.

2000-09-05 Tuesday 21:16  kfogel

	* cvs2cl.pl:

	Incorporate new custom FSF-style wrapping into derive_change_log().

2000-09-05 Tuesday 20:50  kfogel

	* cvs2cl.pl:

	(wrap_log_entry): done.  Works perfectly now.

2000-09-05 Tuesday 19:27  kfogel

	* cvs2cl.pl:

	(wrap_log_entry): rewritten following the shower inspiration.
	Almost perfect now.

2000-09-05 Tuesday 01:20  kfogel

	* cvs2cl.pl:

	Revert everything having to do with custom wrapping.

2000-09-05 Tuesday 01:19  kfogel

	* cvs2cl.pl:

	More work on custom wrap, but doesn't actually work yet.

2000-09-04 Monday 23:52  kfogel

	* cvs2cl.pl:

	Temporarily revert, to continue working on custom wrapping.

2000-09-04 Monday 23:51  kfogel

	* cvs2cl.pl:

	Custom wrapping in progress (committing for archival purposes only).

2000-08-29 Tuesday 22:50  kfogel

	* cvs2cl.pl:

	Much better explanatory comment about FSF-style.

2000-08-29 Tuesday 22:31  kfogel

	* cvs2cl.pl:

	Added --fsf option, conditionally handle all of FSF ChangeLog style:

	* cvs2cl.pl ($FSF_Style): new var.
	(parse_options): set above new var if --fsf flag seen.
	(pretty_msg_text, derive_change_log): respectively add and remove
	shims, but only if $FSF_Style.

	* Makefile: don't forget to run test-4, duh.
	(test-4): add new --fsf option, and also add -S for looks.

	* log-4.txt: added a real barn-burner of a log entry from JimB.
	* out-4a.txt, out-4c.txt, out-4c.txt: adjusted for new data.

2000-08-29 Tuesday 00:49  kfogel

	* cvs2cl.pl:

	Doc fix.

2000-08-29 Tuesday 00:42  kfogel

	* cvs2cl.pl:

	Added heuristics for standard the paren-grouping convention used in
	log entries, and tests for same:

	(pretty_msg_text): add an extra newline before the paren group, to
	prevent wrapping.
	(derive_change_log): remove the extra newline, after the wrap() call.

2000-08-22 Tuesday 04:13  kfogel

	* cvs2cl.pl:

	Note about fixing standard syntax.

2000-08-21 Monday 18:39  kfogel

	* Makefile:

	Added `install' rule.

2000-08-16 Wednesday 15:27  kfogel

	* Makefile:

	Tell the truth.

2000-08-16 Wednesday 15:26  kfogel

	* cvs2cl.pl:

	(pretty_file_list): init $common_dir to undef; adjust later
	conditionals to distinguish undef value from "", the latter meaning
	that no common directory prefix is possible.

	This fixes the bug with filenames and directory prefixes reported by
	Shlomo Reinstein <shlomo.reinstein@intel.com>.

2000-08-14 Monday 15:59  kfogel

	* cvs2cl.pl:

	Handle even the [allegedly impossible] case of an undefined dir
	prefix.

2000-08-14 Monday 15:52  kfogel

	* cvs2cl.pl:

	Be more careful about setting $common_dir.

	This hopefully fixes a two-char eats problem reported by Shlomo
	Reinstein <shlomo.reinstein@intel.com>; Shlomo's patch is included in
	a comment (search for "shlomo") for reference, in case this doesn't
	work.  Only Shlomo can test right now, although if this doesn't work
	I'll just ask him for his log info.

2000-07-07 Friday 19:12  kfogel

	* cvs2cl.pl:

	Set an XML namespace if --xml.

2000-07-07 Friday 15:00  kfogel

	* cvs2cl.pl:

	Fix branch-number bug reported by Olivier Vit <ovit@reef.com>.

	I think this fix compensates for some hand-created weirdness in his
	RCS files -- for example, the symbolic-names list in his log (see
	tests/log-2.txt) was prefixed with spaces instead of tab, and there
	was a branch number of the form 1.7.2 instead of 1.7.0.2.
	Nevertheless, it is possible to compensate for these things without
	impairing the rest of cvs2cl.pl, and who knows, others may have
	similar things going on in their repositories.

2000-07-04 Tuesday 19:19  kfogel

	* Makefile:

	wording tweak

2000-07-04 Tuesday 19:18  kfogel

	* cvs2cl.pl:

	More branch-number parsing fixes, this time from Ken Olstad
	<kolstad@netperceptions.com>.

2000-07-04 Tuesday 19:06  kfogel

	* cvs2cl.pl:

	Ignore comment lines and lines without colons in usermap file (bug
	report and patch from Eric Maryniak <e.maryniak@pobox.com>).

2000-07-04 Tuesday 19:00  kfogel

	* Makefile:

	Run tests from here too.

2000-07-04 Tuesday 18:56  kfogel

	* cvs2cl.pl:

	Checked in fix from Mike Stead <mstead@reef.com> for overeager
	digit-matching in branch/rev calculations.

	(Note: also reported by Olivier Vit <ovit@reef.com>).

2000-06-28 Wednesday 20:15  kfogel

	* cvs2cl.pl:

	Applied Ying Zhang <ying@zippydesign.com>'s patch adding the
	"--hide-filenames" option.

2000-04-19 Wednesday 18:06  kfogel

	* cvs2cl.pl:

	Do xml-escaping on author once only, in outer loop not inner, to avoid
	compounded escaping.  (Thanks to Peter Karlsson <peter@opera.no> for
	the bug report.)

2000-01-28 Friday 06:02  kfogel

	* cvs2cl.pl:

	Applied directory separator fix from David Goldfarb <deg@2am.com>.

2000-01-25 Tuesday 16:10  kfogel

	* cvs2cl.pl:

	Added --no-wrap option.

	Also, stop wrapping log message body when XML output.

2000-01-04 Tuesday 23:33  kfogel

	* cvs2cl.pl:

	Downcase all XML tags (DTD to be formalized soon).

1999-12-31 Friday 18:11  kfogel

	* cvs2cl.pl:

	bump version to 2.0

1999-12-31 Friday 18:01  kfogel

	* cvs2cl.pl:

	Removed "BETA" designation.

1999-12-29 Wednesday 17:19  kfogel

	* cvs2cl.pl:

	Applied fix from Melissa O'Neill <oneill@cs.sfu.ca>.  She correctly
	fixed the entry-order/time-unification bug, as opposed to my previous
	fix, which merey broke things in a different way.

1999-12-29 Wednesday 04:09  kfogel

	* TODO, cvs2cl.pl:

	Finally fixed the entry-order/time-unification bug!

	It was due to over-liberality about nearby commit times during the
	hash twist phase, which was probably the wrong time to notice such
	things anyway -- better to catch them during the qunk-storing phase,
	by comparing both commit time and message contents.  This is what we
	now do.

1999-12-28 Tuesday 15:41  kfogel

	* cvs2cl.pl:

	Print XML meta header first, and enclose everything in
	<CHANGELOG>...</CHANGELOG> to avoid illegal multirootedness, all on
	the advice of Ramon Felciano <felciano@ingenuity.com>.

1999-12-28 Tuesday 15:36  kfogel

	* cvs2cl.pl:

	(pretty_file_list): unify XML-related code, for readability.

1999-12-28 Tuesday 00:34  kfogel

	* cvs2cl.pl:

	Tweak usage.

1999-12-28 Tuesday 00:31  kfogel

	* cvs2cl.pl:

	Add note to usage message, regarding promiscuity of --xml option.

1999-12-28 Tuesday 00:26  kfogel

	* cvs2cl.pl:

	If doing XML output, then include day of week unconditionally.

1999-12-28 Tuesday 00:17  kfogel

	* cvs2cl.pl:

	Finished XML output ("--xml" option), suggested by Ramon Felciano
	<felciano@ingenuity.com>.

1999-12-24 Friday 01:29  kfogel

	* cvs2cl.pl:

	progress on --xml output, though still not complete

1999-12-24 Friday 01:05  kfogel

	* cvs2cl.pl:

	started implementing --xml output; not done yet!

1999-12-18 Saturday 06:39  kfogel

	* cvs2cl.pl:

	added --easy-parse-format option

1999-12-18 Saturday 05:49  kfogel

	* TODO, cvs2cl.pl:

	fixed tag unification bug

1999-12-18 Saturday 05:23  kfogel

	* TODO:

	record useful debugging command

1999-12-18 Saturday 05:17  kfogel

	* cvs2cl.pl:

	more output format description

1999-12-18 Saturday 05:09  kfogel

	* TODO:

	noticed new bug

1999-12-18 Saturday 05:08  kfogel

	* cvs2cl.pl:

	Added -C, --case-insensitive option (suggestion from
	Todd Denniston <Todd.Denniston@ssa.crane.navy.mil>)

1999-12-18 Saturday 04:21  kfogel

	* cvs2cl.pl:

	added informal format description

1999-12-10 Friday 18:44  kfogel

	* TODO:

	reprioritize

1999-12-07 Tuesday 03:55  kfogel

	* cvs2cl.pl:

	Transmogrify Windows filenames to Unix-style.
	Fix due to Frank Stockinger <F.Stockinger@plettac-electronics.de>,
	who noticed the problem because he runs cvs2cl.pl with ActiveState
	Perl under Windows NT.

1999-12-07 Tuesday 03:39  kfogel

	* cvs2cl.pl:

	fix typo: it's --follow, not --follow-branch
	Thanks to G. Paul Ziemba <paul@mayannetworks.com> for reporting this.

1999-11-09 Tuesday 21:45  kfogel

	* TODO:

	Entered reproduction recipe (log data) for entry order bug.

1999-11-07 Sunday 03:50  kfogel

	* TODO:

	Removed all of Doug Finkle's recent bugs.  Now that's what I call a
	good night!

1999-11-07 Sunday 03:22  kfogel

	* cvs2cl.pl:

	More robust option parsing: exit with error if a required argument is
	absent.

1999-11-07 Sunday 03:09  kfogel

	* cvs2cl.pl:

	Handle "-F trunk" (also "-F TRUNK") with a special case, thus giving
	a way to follow the trunk alone, ignoring any branches.

	This is okay because no would ever, ever be crazy enough to name a
	branch "trunk", right?  Right.

1999-11-07 Sunday 02:40  kfogel

	* cvs2cl.pl:

	Fixed Doug Finkle's bug where by spurious branch information would
	appear in his ChangeLog entries.  However, the cure is (unavoidably)
	only slightly preferable to the disease.  Read on...

	Suppose we see a log entry like this:

	   ----------------------------
	   revision 1.1
	   date: 1999/10/17 [etc etc]
	   branches:  1.1.2;
	   Log message begins here.
	   ----------------------------

	The question is, how we can tell the difference between that log
	message and a *two*-line log message whose first line is

	   "branches:  1.1.2;"

	See the problem?  The output of "cvs log" is inherently
	ambiguous. For now, we punt: we liberally assume that people don't
	write log messages like that, and just toss a "branches:"
	line if we see it but are not showing branches.  I hope no
	one ever loses real log data because of this.  Sigh.

1999-11-07 Sunday 02:17  kfogel

	* cvs2cl.pl:

	Fix bug in which the file separators terminating files with no
	revisions (from "cvs -d DATE" output, for example) were not noticed.

1999-11-03 Wednesday 15:59  kfogel

	* TODO:

	more stuff from Doug Finkle

1999-09-27 Monday 15:34  kfogel

	* TODO:

	added Doug's bugs

1999-09-20 Monday 07:04  kfogel

	* cvs2cl.pl:

	Bug fix from Marcin Kasperski <Marcin.Kasperski@softax.com.pl>:

	If $common_dir is "./", then just set it to "".  This fixes the
	occasional two-char-eats problem.

1999-09-20 Monday 04:04  kfogel

	* cvs2cl.pl:

	simplified common_dir code, a couple of other things

1999-09-19 Sunday 20:04  kfogel

	* cvs2cl.pl:

	consistency in usage message

1999-09-19 Sunday 07:03  kfogel

	* TODO:

	removed old items

1999-09-19 Sunday 06:58  kfogel

	* cvs2cl.pl:

	Added --gmt/--utc and -w/--day-of-week options.

1999-09-19 Sunday 06:29  kfogel

	* cvs2cl.pl:

	Common dir prefix unification done.

1999-09-19 Sunday 05:33  kfogel

	* cvs2cl.pl:

	commit with 'Speedy' code in, for kicks; will revert immediately

1999-09-18 Saturday 05:16  kfogel

	* cvs2cl.pl:

	abstracted out common dir detection, but still punting

1999-09-18 Saturday 05:05  kfogel

	* cvs2cl.pl:

	fixed undefined hash reference bug

1999-09-18 Saturday 04:30  kfogel

	* cvs2cl.pl:

	small reformatting of usage

1999-09-16 Thursday 16:01  kfogel

	* cvs2cl.pl:

	Fix usage bug, rearrange usage

1999-09-16 Thursday 04:05  kfogel

	* cvs2cl.pl:

	format usage more clearly

1999-09-16 Thursday 04:00  kfogel

	* cvs2cl.pl:

	oops, fix typo from last change

1999-09-16 Thursday 03:59  kfogel

	* cvs2cl.pl:

	no more default header -- only print header on request

1999-09-16 Thursday 03:34  kfogel

	* cvs2cl.pl:

	mark as beta

1999-09-16 Thursday 03:31  kfogel

	* cvs2cl.pl:

	use scalar instead of $#

1999-09-16 Thursday 03:20  kfogel

	* cvs2cl.pl:

	document new stuff

1999-09-16 Thursday 02:59  kfogel

	* cvs2cl.pl:

	-F / --follow-branches working

1999-09-16 Thursday 02:43  kfogel

	* cvs2cl.pl:

	Branch-following detection code working.

	Has no effect yet -- the conditionals are all there, but their
	consequents are empty.

1999-09-14 Tuesday 20:00  kfogel

	* cvs2cl.pl:

	reverted previous non-working change -- it was just for storage

1999-09-14 Tuesday 20:00  kfogel

	* cvs2cl.pl:

	progress on Follow_Branches

1999-09-14 Tuesday 03:53  kfogel

	* cvs2cl.pl:

	continuing implementation of Follow_Branches

1999-09-14 Tuesday 03:40  kfogel

	* cvs2cl.pl:

	oops, don't clear overenthusiastically

1999-09-14 Tuesday 03:38  kfogel

	* cvs2cl.pl:

	fixed single-file bug, started implementing Follow_Branches

1999-09-14 Tuesday 01:36  kfogel

	* cvs2cl.pl:

	Accurify comments.

1999-09-14 Tuesday 01:35  kfogel

	* cvs2cl.pl:

	Unify common directories.

1999-09-14 Tuesday 01:04  kfogel

	* cvs2cl.pl:

	Unify tags even when branches are present.

1999-09-14 Tuesday 00:22  kfogel

	* cvs2cl.pl:

	Use hashes instead of lists in pretty_file_list(), for efficiency.

1999-09-13 Monday 15:11  kfogel

	* cvs2cl.pl:

	added todo comment

1999-09-13 Monday 06:58  kfogel

	* TODO:

	updated

1999-09-13 Monday 06:36  kfogel

	* cvs2cl.pl:

	implemented -I / --ignore option

1999-09-13 Monday 06:16  kfogel

	* cvs2cl.pl:

	fixed another buglet

1999-09-13 Monday 06:14  kfogel

	* cvs2cl.pl:

	fixed some buglets

1999-09-13 Monday 05:59  kfogel

	* cvs2cl.pl:

	fix regexp gate to behave in the expected way, finally!

1999-09-13 Monday 05:49  kfogel

	* cvs2cl.pl:

	New unifying/summarizing output format.

	Needs testing, though.

	Branch roots are still recorded, but are not included in the new
	output format.  Should ask if there's any demand for them, as they're
	probably not critical to most people.

1999-09-13 Monday 04:54  kfogel

	* cvs2cl.pl:

	revert previous interim revision

1999-09-13 Monday 04:53  kfogel

	* cvs2cl.pl:

	interim revision, toward new release; will revert

1999-09-13 Monday 03:58  kfogel

	* TODO:

	added request from Doug Finkle

1999-09-13 Monday 02:16  kfogel

	* cvs2cl.pl:

	mild comment changes

1999-07-30 Friday 03:56  kfogel

	* TODO:

	new items

1999-07-30 Friday 03:19  kfogel

	* cvs2cl.pl:

	tweak usage

1999-07-30 Friday 03:18  kfogel

	* cvs2cl.pl:

	Added -W / --window option to control $Max_Checkin_Duration (the
	window of time within which log entries get unified).

1999-07-30 Friday 03:08  kfogel

	* cvs2cl.pl:

	Dear cvs2cl users,

	Okay, okay, you win. :-) I have added an option to expand usernames to
	email addresses, from a user-supplied map file.  The map file's format
	is the same as CVSROOT/users in the repository (see the Cederqvist),
	and in fact you might want to actually use that file, because I still
	do plan to add an option to "cvs log" to expand directly in the log
	output based on that file.  In an ideal world, cvs2cl would not depend
	on a local copy of that file, but I realize we do not live in an ideal
	world.

	The option is -U / --usermap.

1999-07-25 Sunday 07:09  kfogel

	* TODO:

	add item about cumulative updates

1999-07-25 Sunday 07:04  kfogel

	* TODO:

	clarify

1999-07-25 Sunday 06:38  kfogel

	* cvs2cl.pl:

	really, truly fix leading .// problem

1999-07-25 Sunday 06:30  kfogel

	* cvs2cl.pl:

	really fix leading .// problem

1999-07-25 Sunday 06:23  kfogel

	* cvs2cl.pl:

	fix leading .// problem

1999-07-25 Sunday 05:45  kfogel

	* cvs2cl.pl:

	Finished partial reversion to 1.107.

	Thus, the difference from 1.107 to now is that unless revisions were
	specified, branches will be shown as Branch_Name, not Branch_Name.N.

	This change is from Avi Kivity <Avi@avionitek.com>, whose patch also
	included the interesting feature of listing the branch only once for
	all the files on that branch in that commit.  See the log message
	1.108 for why I haven't yet permanently incorporated that part of his
	patch.

1999-07-25 Sunday 05:40  kfogel

	* cvs2cl.pl:

	partial reversion to 1.107; see log message at 1.108 for reasons

1999-07-25 Sunday 05:38  kfogel

	* cvs2cl.pl:

	fixed buglet in regexp, before partial reversion of previous change

1999-07-25 Sunday 05:36  kfogel

	* cvs2cl.pl:

	Merged in all of Avi Kivity <Avi@avionitek.com>'s patch to unify
	branch listings if revisions and tags aren't being included.

	Will revert part of this change immediately.  I'm not sure the whole
	thing should be done yet, because in the new output, it's impossible
	to distinguish between N files with the same log message in the same
	commit on the same branch, and N files with the same log message on
	the same commit but with only the last file on the branch.  So far,
	the output of cvs2cl has always been unambiguous; if that's going to
	change, it should at least be by request (i.e., by option) only.

	However, Avi is totally right about branches being displayed as
	Branch_Name, not Branch_Name.N, when revisions were not requested.

1999-07-23 Friday 16:37  kfogel

	* cvs2cl.pl:

	handle empty ChangeLog headers gracefully

1999-07-23 Friday 08:06  kfogel

	* TODO:

	My stack is so high I actually need to write it down.
	Sigh.

1999-07-16 Friday 16:09  kfogel

	* cvs2cl.pl:

	note stdin behavior of --header

1999-07-16 Friday 15:04  kfogel

	* cvs2cl.pl:

	Change from Avi Kivity <Avi@avionitek.com>:

	Offer new "--header" option to control ChangeLog header (patch
	rewritten slightly to use slurp_file(), in anticipation of future
	need).

1999-07-01 Thursday 15:58  kfogel

	* cvs2cl.pl:

	Only compile $Regexp_Gate once.

1999-07-01 Thursday 15:56  kfogel

	* cvs2cl.pl:

	Match against author too when doing -R/--regexp

1999-06-16 Wednesday 04:09  kfogel

	* mywrap.pl:

	skeleton

1999-06-16 Wednesday 00:36  kfogel

	* mywrap.pl:

	initial import

1999-05-26 Wednesday 05:01  kfogel

	* cvs2cl.pl:

	Added long note about wrap() bug at end

1999-05-26 Wednesday 04:17  kfogel

	* cvs2cl.pl:

	improved previous improvement

1999-05-26 Wednesday 03:16  kfogel

	* cvs2cl.pl:

	Improve output by improving decisions about which newlines to strip
	off: now leaves alone indented and lines beginning with a mail-quote
	character (">").

1999-05-23 Sunday 02:31  kfogel

	* cvs2cl.pl:

	expand comment

1999-05-22 Saturday 03:19  kfogel

	* cvs2cl.pl:

	trivial change to bump version number for PAUSE

1999-05-21 Friday 22:34  kfogel

	* cvs2cl.pl:

	categorize in Version_Control/CVS

1999-05-21 Friday 19:16  kfogel

	* cvs2cl.pl:

	test regexp against the whole entry, not just msg_txt

1999-05-21 Friday 19:00  kfogel

	* cvs2cl.pl:

	Treat non-options as filename arguments for 'cvs log'

1999-05-21 Friday 17:59  kfogel

	* cvs2cl.pl:

	update PAUSE info

1999-05-21 Friday 05:15  kfogel

	* cvs2cl.pl:

	Fixed yet another bug in branch root tracing, by tweaking a regexp again.

	Added the -R / --regexp feature.

	(The bugfix is unrelated to the new feature.)

1999-05-20 Thursday 20:45  kfogel

	* cvs2cl.pl:

	Accept -P for --prune, like CVS

1999-05-20 Thursday 06:54  kfogel

	* cvs2cl.pl:

	Fixed some regular expressions.  This takes care of the branch-tracing
	bug reported by John Cavanaugh <cavanaug@sr.hp.com>.

1999-05-19 Wednesday 20:36  kfogel

	* cvs2cl.pl:

	mention perl-indent-level after all

1999-05-19 Wednesday 20:17  kfogel

	* cvs2cl.pl:

	Change from William A. Hoffman <hoffman@crd.ge.com>:

	Invoke perl in a path-independent manner (subtitled: "Karl learns
	about the -x option to Perl and is appropriately awed").

1999-05-19 Wednesday 19:58  kfogel

	* cvs2cl.pl:

	Patch from Johannes Stezenbach <johannes.stezenbach@propack-data.de>:

	Handle the possibility that no revisions are shown for a given file
	(this can happen with "cvs log -d<DATE>", for example).

1999-05-13 Thursday 04:43  kfogel

	* cvs2cl.pl:

	make -b useful even without -r

1999-05-13 Thursday 04:12  kfogel

	* cvs2cl.pl:

	if showing branches, show latest ancestor as such

1999-05-13 Thursday 02:58  kfogel

	* cvs2cl.pl:

	removed debugging statements; better comment

1999-05-13 Thursday 02:52  kfogel

	* cvs2cl.pl:

	Added -b / --branches option.

	This implements John Cavanaugh <cavanaug@sr.hp.com>'s suggestion to
	substitute branch names into revision numbers where possible.

1999-05-12 Wednesday 21:29  kfogel

	* cvs2cl.pl:

	fixed; undid previous reversion

1999-05-12 Wednesday 21:12  kfogel

	* cvs2cl.pl:

	reverted to 1.79 to debug problems in previous two revisions

1999-05-12 Wednesday 21:10  kfogel

	* cvs2cl.pl:

	clean but broken; will revert to 1.79 and incrementally return to this

1999-05-12 Wednesday 20:37  kfogel

	* cvs2cl.pl:

	Avoid using `if' and `unless' in postfix style.
	Plus a few other minor cleanups.

1999-05-12 Wednesday 20:21  kfogel

	* cvs2cl.pl:

	perfectify comment

1999-05-12 Wednesday 20:18  kfogel

	* cvs2cl.pl:

	Changes from Melissa O'Neill <oneill@cs.sfu.ca>:

	Use "defined $foo" instead of "$foo", to protect against files name
	"0" and such.

	Don't even hint at ignoring "revision" lines anymore (even though
	ignoring was happening after the revision had already been grabbed).

	Remember to skip to next line once revision is grabbed, and clear out
	the $revision variable after the loop.

	Removed unnecessary curly braces.

1999-04-19 Monday 06:14  kfogel

	* cvs2cl.pl:

	Changes from Melissa O'Neill <oneill@cs.sfu.ca>:

	Use \d instead of 0-9 in regexps.
	Don't use double-quotes where not necessary.

1999-04-13 Tuesday 22:29  kfogel

	* cvs2cl.pl:

	Match exact length of $file_separator and $log_separator, thus
	avoiding identical-prefix-bugs like the following:

	==============================================================================

	or perhaps

	-----------------------------

	See?  Both of those had one extra "=" or "-" than an actual separators
	do.  So if this is all one log entry, then the bug is fixed.

1999-04-13 Tuesday 21:26  kfogel

	* cvs2cl.pl:

	comment accurification

1999-04-13 Tuesday 14:33  kfogel

	* cvs2cl.pl:

	removed BETA designation

1999-04-13 Tuesday 14:30  kfogel

	* cvs2cl.pl:

	Change from Avi Kivity <Avi@avionitek.com>:

	Be liberal about matching symbolic names -- just take anything
	preceding the colon.  Enforcing restrictions on tag names is CVS's
	responsibility, not ours.

1999-04-10 Saturday 05:35  kfogel

	* cvs2cl.pl:

	Made POD documentation, for the Perl Scripts Archive

1999-04-09 Friday 16:09  kfogel

	* README:

	Reverted previous change, which was only made to test public CVS
	access anyway.

1999-04-09 Friday 15:53  melissa

	* README:

	Trivial change (about to be reverted).

	This is not Melissa, this is really Karl.  I'm just testing the new
	`pubcvs' system, with melissa as the first user.

1999-04-09 Friday 01:22  kfogel

	* cvs2cl.pl:

	Oops, fixed previous fix to implementation of "-t" / "--tags".
	Now remembers to clear out %symbolic_names after use.

1999-04-09 Friday 00:15  kfogel

	* cvs2cl.pl:

	Fixed implementation of "-t" / "--tags": now correctly handles
	multiple symbolic names on the same revision number.

	Thanks, Melissa, for the autovivication lesson.

1999-04-08 Thursday 23:54  kfogel

	* cvs2cl.pl:

	Use "$VERSION" instead of "$Version", for compatibility with the Perl
	Scripts Archive, to which this will soon be submitted.

1999-04-08 Thursday 21:54  kfogel

	* cvs2cl.pl:

	Implemented "-t" / "--tags" option.

1999-04-08 Thursday 19:14  kfogel

	* cvs2cl.pl:

	Changed "Insure" to "Ensure" in comment.

	From: "Melissa O'Neill" <oneill@cs.sfu.ca>
	Subject: English Usage and Future Features
	To: Karl Fogel <kfogel@red-bean.com>
	Date: Thu,  8 Apr 1999 11:14:23 -0700

	You wrote:
	> Okay, it's out; I just sent an announcement to info-cvs.
	>
	> Thanks for all the patches; I've pretty much kept my grubby little
	> paws off them and applied them as they were (see ChangeLog for
	> details).
	>
	> In fact, I think the only change I reverted was the spelling fix
	> "Insure" --> "Ensure".  :-) These seem to be synonymous in common
	> usage and are also the same (in this sense) according to the
	> OED... which is only an authority insofar as it reflects usage
	> accurately, I guess, but I trust them to have done their research
	> anyway.  Believe it or not, this exact question, involving these two
	> words used in the same sense, came up in a paper I was editing
	> recently.

	I'd recommend you check out Lyn Dupre's _BUGS in Writing_. This is an
	excellent book, aimed pretty squarely at Computer Science folks writing
	papers (although much more widely applicable). It's funny, and very
	readable, and has been very well received.

	Segment 45, ``Ensure, Assure, Insure'' covers this very issue. Lyn writes

	    The terms ensure, assure and insure have notably different denotations.
	    To avoid embarrassment, you should distinguish among them.

	    You should use ensure to mean to make sure of a state of affairs or to
	    guarantee that an event occurs.

	        BAD:	Jim was careful to insure that the project went smoothly.
		GOOD:	Carol was careful to ensure that the party went smoothly.

		BAD:	Using this software will assure that you pay your taxes on time.
		GOOD:	Using this software will ensure that you pay your rent on time.

	    You should use insure to mean to take insurance out on

	        BAD:	I need to ensure my car before I drive it
		GOOD:	I need to insure my car before I drive it

		BAD:	Max was disappointed to discover that assuring his hard-disk
			had not protected the company against an earthquake-induced
			crash.
		GOOD:	Max was delighted to find that he had insured his laptop
			computer before it was stolen.

	    You should use assure to mean  give assurance or reassure.

		BAD:	To ensure yourself that all is well, turn on the lights and
			check under the bed.
		GOOD:	To assure yourself that the proof is correct, you should take
			the time to work through it.
		GOOD:	To insure yourself, call a reliable company such as Lloyds of
			London.

	    SPLENDID:	Rest assured that I have insured your home to ensure your peace
	    		of mind.
	    SPLENDID:	Before I can insure your business, you must assure me that you
	    		can ensure that your programmers do careful quality assurance.

	I quoted (slightly cut down) a chunk of the book, not so much to show
	this particular point, but more to give you a taste of Lyn's book.  Ever
	since it was recommended to me by a reviewer of one of my papers (Chris
	Okasaki), I've been recommending it to just about everyone.

	Of course, you can find out answers to matters of English style on the
	Web for nothing, but it's not nearly as fun as Lyn's book. Some other
	resources would be:

	The Guide to Grammar and Style by Jack Lynch <http://http://newark.rutgers.edu/~jlynch/Writing/index.html> writes:

	    Assure, Ensure, Insure.

	      While ensure and insure aren't quite so clear cut, assure is very
	      different from both. You assure a person that things will go right by
	      making him confident. Never use assure in the sense of "Assure that
	      the wording is correct"; you can only assure somebody that it's
	      correct.

	      Ensure and insure are sometimes used interchangeably, but it may be
	      better to keep them separate. Insuring is the business of an insurance
	      company, i.e., setting aside resources in case of a loss. Ensure means
	      make sure, as in "Ensure that this is done by Monday."

	The Curmudgeon's Stylebook <http://www.theslot.com/part1.html> covers
	similar ground:

	    ASSURE, ENSURE, INSURE

	      The words are close in meaning, but they're not interchangeable.
	      Ensure is usually the correct word; it means to make sure: Before
	      starting the car, I ensure the baby is buckled in. Assure doesn't
	      work that way; you assure another person of something: After
	      ensuring the baby was buckled in, I assured her mother things
	      were fine. One meaning of insure is to ensure, but better
	      publications use the word only in references to the business of
	      insurance: Even if the baby isn't buckled in, her life is insured
	      for $100,000.

	Paul Brians' Common Errors in English <http://www.wsu.edu:8080/~brians/errors/>
	is another good resource, which states:

	    ASSURE/ENSURE/INSURE

		To "assure" a person of something is to make him or her confident
		of it. According to Associated Press style, to "ensure" that
		something happens is to make certain that it does, and to "insure"
		is to issue an insurance policy. Other authorities, however,
		consider "ensure" and "insure" interchangeable. To please
		conservatives, make the distinction. However, it is worth noting
		that in older usage these spellings were not clearly distinguished.

		European "life assurance" companies take the position that all
		policy-holders are mortal and someone will definitely collect,
		thus assuring heirs of some income. American companies tend to
		go with "insurance" for coverage of life as well as of fire,
		theft, etc.

	All of these sites are good resources for settling questions about English
	usage, as are the FAQs posted to alt.usage.english.

	> It may just be a British vs. American spelling difference, now that I
	> think about it.  Do you use British normally?

	The only significant difference between UK and US usage here is that
	Brits talk about `life assurance' (because you're going to die, one
	day), and Americans talk about `life insurance' (because no one really
	wants to believe they're mortal).

	An an Englishwoman living in Canada, my spelling is annoyingly midatlantic.
	I've always (even in England) initialized arrays, rather than initialised
	them, but I use coloured pens rather than colored ones.  But most of my
	professional writing is for US publications, so I have to adopt US
	conventions most of the time.

	>> - Spotting when a log message is applied to every file in the distribution.
	>
	> Ahh... so we could use a special string "all files: blah blah blah"
	> for the log entry?

	Yes, or even no files list at all.  For example, in the EGS changelog, there
	is the following entry:

	    Sun Mar 14 02:38:07 PST 1999 Jeff Law  (law@cygnus.com)

	            * egcs-1.1.2 Released.

	>> - Improving the formatting of ChangeLog entries. Long, carefully formatted,
	>>   entries are currently rather trampled by the wrapping code. (Probably needs
	>>   a command-line option.)
	>
	> I've just been thinking about this too.  May just modify some code
	> from Text::Wrap.  I'll bet we can guess right w/o a command-line
	> option most of the time.  I think a good strategy would be to only add
	> newlines, never remove any.  So long lines get auto-wrapped, but then
	> the next line (in the original) doesn't move up, it stays on its own
	> line.  And of course, this only goes for the message portion, not the
	> filenames.
	>
	> This way, text that tries to make lists would stay readable.  For
	> example:
	>
	> (parse_options): parse the --fish option.
	> (stirfry): if `fish' is set, behave appropriately.  Adjust call to allergies(), and lower cooking heat based on reference in heat_table.
	> (allergies): adjust for fish if `fish' is set.
	>
	> would get turned into this:
	>
	> (parse_options): parse the --fish option.
	> (stirfry): if `fish' is set, behave appropriately.  Adjust call to
	> allergies(), and lower cooking heat based on reference in heat_table.
	> (allergies): adjust for fish if `fish' is set.
	>
	> instead of this:
	>
	> (parse_options): parse the --fish option.  (stirfry): if `fish' is
	> set, behave appropriately.  Adjust call to allergies(), and lower
	> cooking heat based on reference in heat_table.  (allergies): adjust
	> for fish if `fish' is set.

	Yes, that seems like a good way to go.

	    Melissa.

1999-04-08 Thursday 16:17  kfogel

	* cvs2cl.pl:

	Put Melissa's name up near the top

1999-04-08 Thursday 16:10  kfogel

	* cvs2cl.pl:

	Implemented -r / --revisions option.

1999-04-08 Thursday 15:49  kfogel

	* cvs2cl.pl:

	Put "(BETA)" in version string, because the recent slew of changes
	has only been tested by Melissa and myself.

	Untabified, indented everything.

1999-04-08 Thursday 15:45  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Modified algorithm and data layout to collect multiple ChangeLog
	messages for a given author over a sliding window of time.

1999-04-08 Thursday 15:36  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Fixed transposition in explanation (author and message were swapped).

1999-04-08 Thursday 15:35  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Moved output of date and author up one loop level.  Now ChangeLog
	entries can have multiple parts (different log messages for different
	files).  The hash twisting/time merging code will almost never
	generate data this way, however.

1999-04-08 Thursday 15:28  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Oops.  Forgot seconds in parse_date_and_author.

1999-04-08 Thursday 15:25  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Major rewrite of the core code. Now parse_date_and_author returns a
	time (i.e., seconds since the epoch) and author, rather than an
	textual date and author. The whole structure of what we store has been
	changed. No more building keys from concatenated strings (i.e., D.A.M.
	keys), instead we use multi-level hashes. This change should reduce
	memory use.

	Previously, $Max_Checkin_Duration had an effective granularity of 60
	seconds, due to the dropping of seconds from dates in
	parse_date_and_author. Because parse_date_and_author now groks dates
	to the second, it would now be okay to set $Max_Checkin_Duration to ten
	seconds, whereas previously that would be identical to setting it to
	zero.

	(Melissa, I made some mods to this patch, first to get it to apply,
	then to get it to run.  The upshot is: everything is untabified now,
	hunk #7 was applied by hand [this was from patch #15], and since
	apparently can't do "my (undef,...)" on line 304, I changed it to "my
	($ignore,...)"  instead.  Maybe the original way is legal in a higher
	version of Perl or something?  -kff)

1999-04-08 Thursday 15:00  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Modified output loop to use `each' instead of `keys'.

1999-04-08 Thursday 14:54  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Eliminate $ignore_me.

1999-04-08 Thursday 14:52  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Eliminated use of File::Copy in favor of rename.

1999-04-08 Thursday 14:46  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Fixed various uses of "" that really meant `undefined' to use undefined.

	Only work out names for temporary files if we will actually be using
	them.

1999-04-08 Thursday 14:44  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Converted logfile header to be a global variable (in future, we might
	allow the header to be omitted or altered).  It now uses a `here
	document' too.

1999-04-08 Thursday 14:42  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Fixed pretty_file_list to use join rather than a home-grown equivalent.
	(Doh!  Thanks, Melissa!  -kff)

1999-04-08 Thursday 14:36  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Removed the last of the `_reffy' stuff and needless hash copying.

1999-04-08 Thursday 14:31  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Use a `here document' for the help message.

1999-04-07 Wednesday 22:49  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Switched from using "" to mean undefined to using undefined to mean
	undefined.  (Some other cases remain, we'll do them later.)

	Removed some superfluous tests from conditionals (it's true that they
	make it clear what is true at that point, but that could be expressed
	in a comment, rather than in executed code).  (Unfortunately, this
	meant that I outdented a fairly large chunk of code, making the diff
	look like a more extensive change than it really is.)

	Eliminated a test for /^$file_separator/o by saving the result from
	the earlier test.

1999-04-07 Wednesday 22:41  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Simplified subhash code down to one line.

1999-04-07 Wednesday 22:37  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Added /o to separator regexps.

1999-04-07 Wednesday 22:34  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Avoid using Date::Parse. We now use timegm (from Time::Local) to do
	date -> time conversions, and perform the time parsing ourselves
	(given that dates are always in a pretty standard from).

1999-04-07 Wednesday 22:26  kfogel

	* cvs2cl.pl:

	Change from Melissa O'Neill <oneill@cs.sfu.ca>:

	Added support for checkins that are not on the same minute by adding a
	new loop to detect nearby dates.

1999-03-23 Tuesday 05:48  kfogel

	* cvs2cl.pl:

	Heh, fix typo in version() -- it's "cvs2cl.pl, not "cvs2pl.cl", which
	would be a very different program!

1999-03-23 Tuesday 00:40  kfogel

	* COPYING:

	ship GPL too

1999-03-23 Tuesday 00:35  kfogel

	* cvs2cl.pl:

	Added warning of auto-generation to output.

1999-03-20 Saturday 05:07  kfogel

	* README, cvs2cl.pl:

	Meaningful error codes on exit.
	Added README in case anyone stumbles by chance upon this directory.

1999-03-20 Saturday 04:03  kfogel

	* cvs2cl.pl:

	Don't double slashes in debug message.

1999-03-20 Saturday 04:02  kfogel

	* cvs2cl.pl:

	Better debugging output.

1999-03-20 Saturday 03:56  kfogel

	* cvs2cl.pl:

	Put ampersands on calls to debug().

1999-03-20 Saturday 03:45  kfogel

	* cvs2cl.pl:

	Ooops, fixed the filename-resetting bug.
	Added undocumented --debug flag and the debug() routine.

1999-03-20 Saturday 02:10  kfogel

	* cvs2cl.pl:

	Fixed capitalization.

1999-03-20 Saturday 01:57  kfogel

	* cvs2cl.pl:

	Totally clean up usage() and parse_options().  Now it errors if
	unknown options.
	Also, restored "." prefix to bak files (oops).

1999-03-20 Saturday 01:45  kfogel

	* cvs2cl.pl:

	Rewrite "The Plan" to reflect the new two-level hash structure.

1999-03-20 Saturday 01:40  kfogel

	* cvs2cl.pl:

	Clean up some other inconsistencies in usage message.

1999-03-20 Saturday 01:39  kfogel

	* cvs2cl.pl:

	In usage message, note that "--distributed" now works.

1999-03-20 Saturday 01:38  kfogel

	* cvs2cl.pl:

	Fitz and I are pleased.

1999-03-20 Saturday 01:21  kfogel

	* cvs2cl.pl:

	Well, the --distributed option seems to be working now.
	Time to run sanity tests.

1999-03-19 Friday 16:28  kfogel

	* cvs2cl.pl:

	Document the plan for --distributed, get everything in place; ready to
	implement.

	Better var names too.

1999-03-19 Friday 16:10  kfogel

	* cvs2cl.pl:

	Prettifications, no code changes.

1999-03-19 Friday 02:49  kfogel

	* cvs2cl.pl:

	Reinstate -f/--file option, because we'll need it again when the
	-d/--distributed option is finished.

	Make tmp file name include PID.

	Better option contradiction checking.

1999-03-19 Friday 00:06  kfogel

	* cvs2cl.pl:

	implementation of --distributed option in progress

1999-03-18 Thursday 23:27  kfogel

	* cvs2cl.pl:

	Implemented all proposed options except --distributed, ahhh.

1999-03-16 Tuesday 00:17  kfogel

	* cvs2cl.pl:

	sanify some more comments

1999-03-16 Tuesday 00:14  kfogel

	* cvs2cl.pl:

	sanify some comments

1999-03-16 Tuesday 00:05  kfogel

	* cvs2cl.pl:

	added note about --prune option

1999-03-15 Monday 21:37  kfogel

	* cvs2cl.pl:

	correct comment

1999-03-15 Monday 21:28  kfogel

	* long-log.out, short-log.out:

	no need for these files now

1999-03-15 Monday 21:17  kfogel

	* cvs2cl.pl:

	slight changes to usage

1999-03-13 Saturday 06:51  kfogel

	* cvs2cl.pl:

	oops, don't run usage

1999-03-13 Saturday 06:50  kfogel

	* cvs2cl.pl:

	include usage

1999-03-13 Saturday 06:07  kfogel

	* .cvsignore, ChangeLog:

	no need to keep a derived ChangeLog in the repository

1999-03-13 Saturday 06:06  kfogel

	* ChangeLog:

	about to remove ChangeLog

1999-03-13 Saturday 02:03  kfogel

	* cvs2cl.pl:

	better separator comments

1999-03-13 Saturday 01:59  kfogel

	* ChangeLog, cvs2cl.pl:

	oops, be truer to GNU ChangeLog style

1999-03-12 Friday 17:56  kfogel

	* ChangeLog:

	[no log message]

1999-03-12 Friday 17:56  kfogel

	* cvs2cl.pl:

	backup in .ChangeLog.bak, not ChangeLog.bak

1999-03-12 Friday 17:54  kfogel

	* ChangeLog, cvs2cl.pl:

	comment the msg_txt prettifier better

1999-03-12 Friday 17:41  kfogel

	* ChangeLog, cvs2cl.pl:

	detect official CVS empty log messages too

1999-03-12 Friday 17:39  kfogel

	* ChangeLog:

	[no log message]

1999-03-12 Friday 17:38  kfogel

	* cvs2cl.pl:

	include author

1999-03-12 Friday 17:37  kfogel

	* cvs2cl.pl:

	include revision number

1999-03-12 Friday 17:34  kfogel

	* ChangeLog:

	ChangeLog now reflects previous bugfix, heh

1999-03-12 Friday 17:34  kfogel

	* ChangeLog, cvs2cl.pl:

	okay, preserve paragraphs

1999-03-12 Friday 17:20  kfogel

	* cvs2cl.pl:

	Wrap more compactly, by eliminating lone newlines in the message text.
	Thus, for example, a paragraph like this one will be all together, but
	the following paragraph will still be its own paragraph.  Let's see if
	this works right, though.

	Use "no log message" on conceptually empty log messages, not just
	empty strings.  Not that this log message would be one of those,
	nooooo, it's quite long.

	See?

1999-03-12 Friday 07:35  kfogel

	* ChangeLog:

	Hmmm, beginning to realize I'll always be one behind...

1999-03-12 Friday 07:27  kfogel

	* ChangeLog:

	added comment about keeping ChangeLog

1999-03-12 Friday 07:23  kfogel

	* ChangeLog:

	Well, might as well keep a ChangeLog then!

1999-03-12 Friday 07:18  kfogel

	* cvs2cl.pl:

	better comment

1999-03-12 Friday 07:10  kfogel

	* cvs2cl.pl:

	smokin'

1999-03-12 Friday 06:55  kfogel

	* cvs2cl.pl:

	ready to smoke

1999-03-12 Friday 06:29  kfogel

	* cvs2cl.pl, short-log.out:

	basic functionality done, needs auto-fill though

1999-03-12 Friday 02:06  kfogel

	* cvs2cl.pl:

	progress

1999-03-12 Friday 01:52  kfogel

	* cvs2cl.pl:

	get date and author too

1999-03-12 Friday 01:30  kfogel

	* cvs2cl.pl:

	knows filenames

1999-03-12 Friday 01:23  kfogel

	* long-log.out, cvs2cl.pl:

	better data, previous was bad due to just-discovered cvs log bug!

1999-03-12 Friday 00:34  kfogel

	* cvs2cl.pl:

	document The Plan

1999-03-12 Friday 00:13  kfogel

	* cvs2cl.pl, long-log.out:

	initial imports

