
* Fixed Bugs:

  * updates over dav now work.

  * dav can now checkout arbitrary revisions.

  * python tests run over dav.

  * mod_dav cleaning up txns properly

  * log messages are being escaped

  * automated database maintenance/backup

  * 'svnadmin setlog'

  * dist.sh works with svn now.

  * trailing url slashes no longer a problem.

  * 'svn diff' is now recursive


* Almost Completed:

  * rewriting authentication system (#456):  sussman

  * rewriting anchor/target (dav's "BIG HACK", #442):  cmpilato

  * rewriting mod_dav prop system (and mod_dav_svn) (#382):  gstein


* Dev-list Debates (that may turn into tasks):

  * SVN vs .svn

  * behaviors of 'svn status'

  * 'svn revert' can replace 'unadd' and 'undelete'

  * anchor/target issues.


  
* Backlogged patches to evaluate/discuss/commit:

  * Kevin:  update fixes (part of anchor/target discussion)

  * Mo:  update fixes (part of anchor/target discussion)

  * Mo:  use latest autoconf/libtool

  * Mo:  `make check` fixes for builddir != subdir

  * Mo:  implement 'svn patch' subcommand

  * Dominick:  "--program-prefix/suffix' patch (part of SVN/.svn discussion)

  * C. Scott:  new date parser

  * C. Scott:  'make PREINSTALL=' allows installation on case-insensitive fs
                (part of SVN/.svn discussion)

  * ?:  examine FreeBSD port

  * Dale:  ra_dav enhancement:  http proxy support

  * Garrett:  svn_path_canonicalize operation with urls





