TODO for vc-dwim
================

Optional: warn if there are modified files not listed in ChangeLogs
Add an option to make --commit fail if this is the case.

Maybe add an option to put the user in an editor, starting with our
slightly formatted ChangeLog-derived log entry.

This code doesn't honor any of the $CVSROOT, $GIT*, etc. envvars.  Should it?

Rework --vc=VC_NAME support so it works with VC.pm.

Rename VC.pm, e.g., to XX::VC.pm.

Consider using only the first, non-"*" ChangeLog line(s)
as the log message.

Add support for SVK, bzr, monotone, etc.
RCS is a pain because its commit log contents must come via -m'...'
on the command line.

When the ChangeLog date line includes the names of the person
doing the commit, do not include it in the log message.
Otherwise, do include it, by way of attribution.
This is probably a candidate for an option.

Record any module dependencies.
  use Pod::PlainText;
  use IO::File;
  use Cwd;
  use File::Temp;
  use Getopt::Long;
  use File::Basename; # for basename and dirname

Consider using File::chdir, even though it introduces a new dependency.
That will make at least the do_at function cleaner.

Record some Perl version number requirement.

When looking at 'svn diff' output, vc-dwim doesn't recognize
when a file is removed, so you can't use vc-dwim to check in
a change that 'svn rm's a file.  Fix this.


TODO for vc-chlog
=================

work with non-unidiff diff formats.

check whether `ctags -x' output format is portable enough now.

allow a language-dependent setting of which kinds of identifiers to use
(for exuberant ctags).  Can be worked around by putting ctags options
in .ctags.
