? tlog
? libsvn_delta/tests/deltaparse-test
? libsvn_subr/TODO
? libsvn_svr/Makefile
? libsvn_vcdiff/vdelta
? libsvn_wc/tests/checkout-test
? libsvn_wc/tests/this

RCS file: /cvs/subversion/subversion/.cvsignore,v
Working file: .cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/01 21:31:16;  author: sussman;  state: Exp;
adding .cvsignore files all around which ignore automake/autoconf stuff
=============================================================================

RCS file: /cvs/subversion/subversion/LICENSE,v
Working file: LICENSE
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/05 21:58:11;  author: kfogel;  state: Exp;
license for new source code directory
=============================================================================

RCS file: /cvs/subversion/subversion/Makefile.am,v
Working file: Makefile.am
head: 1.10
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 10;	selected revisions: 10
description:
----------------------------
revision 1.10
date: 2000/08/30 04:41:41;  author: gstein;  state: Exp;  lines: +1 -0
add config/build framework for the RA/DAV layer.
----------------------------
revision 1.9
date: 2000/08/28 20:11:24;  author: sussman;  state: Exp;  lines: +8 -6
Factorized main() out of standard svn test programs.
----------------------------
revision 1.8
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;  lines: +1 -1
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.7
date: 2000/08/08 16:51:41;  author: kfogel;  state: Exp;  lines: +1 -1
(SUBDIRS): include libsvn_wc.
----------------------------
revision 1.6
date: 2000/08/08 16:20:01;  author: sussman;  state: Exp;  lines: +1 -1
Add delta dependency
----------------------------
revision 1.5
date: 2000/08/01 21:29:33;  author: sussman;  state: Exp;  lines: +9 -1
tweak
----------------------------
revision 1.4
date: 2000/08/01 20:11:51;  author: sussman;  state: Exp;  lines: +4 -0
<make check> now runs automated tests in libsvn_string and libsvn_subr
----------------------------
revision 1.3
date: 2000/08/01 18:06:13;  author: sussman;  state: Exp;  lines: +0 -1
doc/ should be autoconf'd now
----------------------------
revision 1.2
date: 2000/08/01 01:08:35;  author: sussman;  state: Exp;  lines: +3 -3
saving autoconf work
----------------------------
revision 1.1
date: 2000/07/13 05:11:20;  author: kfogel;  state: Exp;
autoconfiscation in progress
=============================================================================

RCS file: /cvs/subversion/subversion/svn-dev.el,v
Working file: svn-dev.el
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/07/17 18:13:48;  author: kfogel;  state: Exp;  lines: +4 -2
Get rid of annoying load-message pause.

I have no idea why I put it in there in the first place.
----------------------------
revision 1.3
date: 2000/07/12 19:38:49;  author: kfogel;  state: Exp;  lines: +11 -4
restore old value of PAGER env var
----------------------------
revision 1.2
date: 2000/07/11 06:27:40;  author: kfogel;  state: Exp;  lines: +129 -0
Added `svn-perldoc' and friends.

Run "M-x svn-perldoc", using "apr/include/apr_lib.h" when it asks for
a file, to see what it does.
----------------------------
revision 1.1
date: 2000/06/06 17:47:11;  author: kfogel;  state: Exp;
New files.
=============================================================================

RCS file: /cvs/subversion/subversion/svn-dev.sh,v
Working file: svn-dev.sh
head: 1.5
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.5
date: 2000/08/08 23:31:12;  author: kfogel;  state: Exp;  lines: +15 -8
Use SVN_WC instead of WC, and export it.

(Change suggested by Branko <branko.cibej@hermes.si>).
----------------------------
revision 1.4
date: 2000/08/08 18:14:51;  author: kfogel;  state: Exp;  lines: +1 -1
Add new paths to LD_LIBRARY_PATH.

Don't install test programs in a "make install".
----------------------------
revision 1.3
date: 2000/07/12 19:33:50;  author: kfogel;  state: Exp;  lines: +2 -2
wording tweak so output is less alarming
----------------------------
revision 1.2
date: 2000/07/08 00:26:26;  author: kfogel;  state: Exp;  lines: +2 -2
Fix (thanks, Ben).
----------------------------
revision 1.1
date: 2000/07/07 20:35:13;  author: kfogel;  state: Exp;
Set up development environment (handles LD_LIBRARY_PATH for now).
=============================================================================

RCS file: /cvs/subversion/subversion/include/.cvsignore,v
Working file: include/.cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/21 19:14:58;  author: kfogel;  state: Exp;
Ignore ChangeLog*.
=============================================================================

RCS file: /cvs/subversion/subversion/include/Attic/jimb-delta-parse.h,v
Working file: include/jimb-delta-parse.h
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/08/14 17:58:53;  author: sussman;  state: dead;  lines: +0 -0

Merged jimb's walker structure into svn_delta.h, jimb's own header is
not (any longer) relevant.  :)

Busy filling out parser's routines to call various svn_walker_t callbacks.
----------------------------
revision 1.6
date: 2000/08/11 20:57:03;  author: sussman;  state: Exp;  lines: +2 -2
Entire interface rewritten, in process of flushing out specific events now.
----------------------------
revision 1.5
date: 2000/08/11 01:07:27;  author: sussman;  state: Exp;  lines: +9 -5

Saving work... in the middle of huge rewrite, a big mess.
I'm doing this because of repeated power outages here at home.
(I need to buy a UPS *now*)
----------------------------
revision 1.4
date: 2000/08/10 21:03:46;  author: sussman;  state: Exp;  lines: +3 -3
In process of rewriting parser machinery.
----------------------------
revision 1.3
date: 2000/08/10 13:28:26;  author: jimb;  state: Exp;  lines: +7 -5
Doc fixes.

(svn_delta_parse): Rename `context' arguments using `baton'.  Sounds
kind of weird.
----------------------------
revision 1.2
date: 2000/08/09 16:53:55;  author: jimb;  state: Exp;  lines: +5 -0
(svn_delta_walk_t): Add finish_directory function.
----------------------------
revision 1.1
date: 2000/08/09 16:06:48;  author: jimb;  state: Exp;
Possible new delta walking interface.
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_delta.h,v
Working file: include/svn_delta.h
head: 1.74
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 74;	selected revisions: 74
description:
----------------------------
revision 1.74
date: 2000/09/01 22:38:30;  author: jimb;  state: Exp;  lines: +4 -4
Doc fixes.
----------------------------
revision 1.73
date: 2000/09/01 21:26:31;  author: sussman;  state: Exp;  lines: +4 -2

 Adding walk_baton to the only two walker callbacks that didn't
 already receive it.

 * svn_delta.h (svn_delta_walk_t): add walk_baton to finish_directory
   and finish_file.
 * delta_parse.c (do_finish_file, do_finish_directory): add walk_baton
   to callback invocations.
 * deltaparse-test.c (test_finish_file, test_finish_directory): add
   walk_baton argument.
----------------------------
revision 1.72
date: 2000/09/01 21:15:58;  author: sussman;  state: Exp;  lines: +2 -2

 As Karl suggests, change XML to xml in all symbols.

 * svn_delta.h (svn_XML_parse) renamed to svn_xml_parse
 * delta_parse.c  (svn_XML_parse) renamed to svn_xml_parse
 * deltaparse-test.c (svn_XML_parse) renamed to svn_xml_parse
----------------------------
revision 1.71
date: 2000/09/01 21:13:00;  author: kfogel;  state: Exp;  lines: +2 -1
Revert recent `local-variables' change.
----------------------------
revision 1.70
date: 2000/09/01 16:53:48;  author: sussman;  state: Exp;  lines: +10 -10

 MAJOR RENAME:  svn_delta_parse() is now renamed svn_XML_parse() !

 * svn_delta.h:  (svn_delta_parse): renamed to svn_XML_parse
 * delta_parse.c:  (svn_delta_parse): renamed to svn_XML_parse
 * deltaparse-test.c: (main):  call svn_XML_parse
----------------------------
revision 1.69
date: 2000/08/31 22:16:16;  author: kfogel;  state: Exp;  lines: +1 -1
Fix up one page title.
----------------------------
revision 1.68
date: 2000/08/31 22:15:28;  author: kfogel;  state: Exp;  lines: +4 -7
Follow conventions for titles after page breaks.
----------------------------
revision 1.67
date: 2000/08/31 21:22:41;  author: jimb;  state: Exp;  lines: +9 -7
Doc fixes.
----------------------------
revision 1.66
date: 2000/08/31 17:40:11;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_parse): make walker argument `const'.
(svn_delta__digger_t): make walker field `const'.
----------------------------
revision 1.65
date: 2000/08/31 17:21:50;  author: sussman;  state: Exp;  lines: +1 -1
 Adopted deltaparse-test program to new walker interface.  (It works
 now.) Again, `delta_window' is renamed to `txdelta_window'
 everywhere.

 * deltaparse-test.c:
   (main):  take a filename as a command-line argument.
   (test_begin_textdelta): renamed to `test_apply_textdelta'.
   (test_begin_propdelta): removed, different prop-delta system now.
   (test_change_file_prop, test_change_dir_prop,
   test_change_dirent_prop): added.
   (my_fileprop_handler, my_dirprop_handler, my_direntprop_handler):
   deleted.
   (test_add_file, test_replace_file, test_apply_textdelta):  deal
   with new file_baton.

 * delta_parse.c: (xml_handle_end):  after </text-delta>, be sure to
   call svn_vcdiff_parse() with len=0.
   (do_delete_prop): check for initial existence of current_propdelta.
   (do_prop_delta_callback): DUH, check for walker callbacks before
   trying to call them.  :)

 * svn_delta.h: (svn_vcdiff_parse): len is not a pointer.
----------------------------
revision 1.64
date: 2000/08/30 22:52:00;  author: sussman;  state: Exp;  lines: +33 -7

Adopting code in libsvn_delta to use newly revised svn_delta_walk_t
interface.  Test program in tests/ DOES NOT YET WORK.pp

In general, rename all "svn_delta_window_t" references to
"svn_txdelta_window_t", and rename "svn_delta_window_handler_t" to
"svn_txdelta_window_handler_t".  Rename "svn_delta_op_t" to
"svn_txdelta_op_t". Also rename "svn_delta__vcdiff_parser_t" to
"svn_vcdiff_parser_t" when moving from private to public header file,
as well as changing "svn_delta__vcdiff_parse" to "svn_vcdiff_parse".

(Remove all references to pdelta_handler_t, pdelta_parser_t.)
* delta.h: (svn_delta__digger_t):  added file_baton and current_propdelta.
  (svn_delta__stackframe_t): added file_baton.
  (svn_vcdiff_parser_t): moved from private to public header.
  (svn_make_vcdiff_parser): removed, already declared in public
  header.
  (svn_vcdiff_send_window): added so delta_parse can flush vcdiff
  buffer (temporary only, until we get a real vcdiff implementation)
  (svn_propdelta_t): define simpler in-memory prop-delta object.

* svn_delta.h: (svn_vcdiff_parser_t): added from private header.
  (svn_make_vcdiff_parser): added pool arg, to create windows from.

* delta_parse.c: (do_file_callback, do_finish_file): deal with
  file_baton now.
  (do_finish_directory): drop the current dir baton when done.
  (do_begin_textdelta): call apply_textdelta with new file_baton.
  (do_finish_textdelta): scale down to a buffer flush only, no longer
  a walker callback for this.
  (do_prop_delta_callback): added -- calls appropriate walker callback
  for property deltas.
  (do_finish_setprop): deleted, made irrelevant by
  do_prop_delta_callback.
  (do_begin_propdelta, do_begin_setprop, do_delete_prop): major
  rewrite to use new in-memory propdeltas.
  (do_finish_propdelta): deleted, no longer needed.
  (xml_handle_end): add *specific* test for </delete> in the context
  of a <prop-delta> (as opposed to within a <tree-delta>)
  (xml_handle_data): buffer property values internally, no longer need
  a "property parser" in prop_parse.c

* vcdiff_parse.c: (svn_delta__vcdiff_flush_buffer): removed, just put
  the one line into delta_parse.c:do_finish_textdelta.
  (svn_vcdiff_send_window): no longer static -- called by
  do_finish_text_delta to flush final buffer.

* prop_parse.c: deleted, no longer needed.  xml_handle_data can buffer
  property values as they come in from expat.  Much simpler now!

* Makefile.am: remove prop_parse.c


TODO:  rename svn_delta_parse to something more specific.
svn_XML_parse is fine, I think, because it's still a very
general-purpose routine;  it takes an read function and a walk_t
structure.

This would work for a "test" program:

     * reader function presents an XML file;
     * callbacks are a bunch of dorky printf's

It would also work for WC use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate DAV calls

It would also work for WC *internal* use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate *new* XML to put in WC administrative files.
----------------------------
revision 1.63
date: 2000/08/30 09:39:42;  author: gstein;  state: Exp;  lines: +4 -0
eek! bad hack! with these additional types, we can at least include
    svn_delta.h and successfully compile. these will disappear RSN.
----------------------------
revision 1.62
date: 2000/08/30 00:36:29;  author: jimb;  state: Exp;  lines: +264 -71
Major doc fixes.

(svn_delta_read_fn_t): Moved to its own page at the top; this isn't
specific to text or tree deltas.

Rename text delta functions and types, to avoid confusion with tree
delta stuff.
(svn_txdelta_op_t): Renamed from svn_delta_op_t.
(svn_txdelta_source, svn_txdelta_target, svn_txdelta_new): Renamed from
svn_delta_source, svn_delta_target, and svn_delta_new.
(svn_txdelta_window_t): Renamed from svn_delta_window_t.
(svn_txdelta_free_window): Renamed from svn_free_delta_window.
(svn_txdelta_window_handler_t): Renamed from svn_text_delta_window_handler_t.

Reinstate the text delta creation and vcdiff handling interfaces.
(svn_txdelta_stream_t): New type.
(svn_txdelta_next_window, svn_txdelta, svn_txdelta_free,
svn_txdelta_to_vcdiff, svn_make_vcdiff_parser, svn_vcdiff_parse): New
functions.
----------------------------
revision 1.61
date: 2000/08/29 20:35:52;  author: jimb;  state: Exp;  lines: +85 -91
(svn_delta_walk_t): Clean up handling of text and property deltas:
Make `add_file' and `replace_file' create a baton to represent the
file being created / changed.  Replace `begin_textdelta' and
`finish_textdelta' with `apply_textdelta', which uses the file baton.
Replace `begin_propdelta' and `finish_propdelta' with
`change_dir_prop', `change_dirent_prop', and `change_file_prop'.
(svn_propchange_location_t, svn_propchange_t,
svn_propchange_handler_t): Delete.  As far as I can tell, these aren't
any streamier than the simpler interface now in svn_delta_walk_t.
----------------------------
revision 1.60
date: 2000/08/28 23:05:16;  author: jimb;  state: Exp;  lines: +10 -3
Don't #include xmlparse.h; the parser interface is independent of the
representation, so this is irrelevant.
----------------------------
revision 1.59
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.58
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.57
date: 2000/08/21 22:15:58;  author: sussman;  state: Exp;  lines: +15 -8
Property-delta stuff at least compiles correctly now.  :)
----------------------------
revision 1.56
date: 2000/08/21 20:22:05;  author: sussman;  state: Exp;  lines: +20 -71
begin_propdelta:  needs to return any of 3 propchange_handler_t
routines to consume an entire propchange.
----------------------------
revision 1.55
date: 2000/08/21 18:41:36;  author: kfogel;  state: Exp;  lines: +45 -29
Revert previous change, after discussion with Ben.  There are cases
where knowing that a text or prop delta is about to begin/end are
useful, and even necessary.
----------------------------
revision 1.54
date: 2000/08/21 18:01:21;  author: sussman;  state: Exp;  lines: +29 -45
Partial reversion:  place "consumer" routines back in walker's
add_file and replace_file fields.
----------------------------
revision 1.53
date: 2000/08/19 01:31:08;  author: kfogel;  state: Exp;  lines: +1 -1
Fill out the skeleton tree with files and their contents.

(svn_delta_window_t): call it `pool', not `my_pool'.  All references
changed.
----------------------------
revision 1.52
date: 2000/08/19 01:10:33;  author: kfogel;  state: Exp;  lines: +9 -29
Moved `svn_pdelta_chunk_parser_t' from public to internal.

(svn_delta_walker_t): add `handler_baton' argument to
finish_propdelta, finish_textdelta.
----------------------------
revision 1.51
date: 2000/08/19 01:03:45;  author: kfogel;  state: Exp;  lines: +0 -21
Move `svn_vcdiff_parser_t' from public to internal.
----------------------------
revision 1.50
date: 2000/08/18 22:42:42;  author: kfogel;  state: Exp;  lines: +18 -16
Use `ancestor_path' and `ancestor_version', instead of `base_path' and
`base_version', because less likely to cause confusion.
----------------------------
revision 1.49
date: 2000/08/18 22:30:31;  author: sussman;  state: Exp;  lines: +6 -0

We made a interface change in svn_walk_t, which then required much
hacking on libsvn_delta.  deltaparse-test now works correctly again.

We're now ready to start filling out prop_parse.c!
----------------------------
revision 1.48
date: 2000/08/18 22:05:56;  author: kfogel;  state: Exp;  lines: +11 -11
(svn_pdelta_chunk_parser_t): more accurate name for
`svn_pdelta_chunk_parser_t'.

(svn_delta_walk_t): correct some prototypes.
----------------------------
revision 1.47
date: 2000/08/18 22:03:28;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_pdelta_parser_t): fix typo.
----------------------------
revision 1.46
date: 2000/08/18 21:54:42;  author: kfogel;  state: Exp;  lines: +7 -1
Comment on usage of fully-streamy property change handlers.
----------------------------
revision 1.45
date: 2000/08/18 21:53:15;  author: kfogel;  state: Exp;  lines: +13 -13
Comment on usage of fully-buffering property change handlers.

(apply_dirent_propchange): fix name.

(dirent_pdelta): removed, as obsolete.
----------------------------
revision 1.44
date: 2000/08/18 21:46:44;  author: kfogel;  state: Exp;  lines: +3 -2
Prop delta usage note.
----------------------------
revision 1.43
date: 2000/08/18 21:44:36;  author: sussman;  state: Exp;  lines: +6 -7
comments update
----------------------------
revision 1.42
date: 2000/08/18 21:30:29;  author: sussman;  state: Exp;  lines: +106 -19
New interface for optionally streaming prop-deltas.
----------------------------
revision 1.41
date: 2000/08/18 00:49:50;  author: kfogel;  state: Exp;  lines: +6 -6
Making WC library use the new stuff in delta library:

`svn_text_delta_window_handler_t' replaces `svn_delta_handler_t',
because more specific.  All uses changed.

(svn_delta_op_t): call field `action_code' instead of `op'.  Having
two different things both called "op" was making my brain spin.
All uses changed.

(do_file_callback, do_directory_callback): parenthesize for precedence
clarity.

(svn_vcdiff_parse): increment buffer offset only if ate a byte.

(svn_vcdiff_send_window): check if callback func is null before
calling it.

(check_existence): include APR_READ flag when testing, because
apr_open() always returns APR_EACCES if you fail to request at least
one of reading or writing.  Also, remove the file after testing.

(window_handler): new func in wc library; skeleton, everything will
depend on the baton.

(add_file, replace_file): store window_handler in *handler.

(checkout-test.c:main): be robuster.

(test_read_fn): interpret results of apr_full_read() correctly.
----------------------------
revision 1.40
date: 2000/08/17 17:47:31;  author: sussman;  state: Exp;  lines: +25 -3
Almost ready to start compiling deltaparse-test
----------------------------
revision 1.39
date: 2000/08/16 23:01:04;  author: kfogel;  state: Exp;  lines: +6 -5
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.38
date: 2000/08/16 21:35:27;  author: kfogel;  state: Exp;  lines: +4 -4
Use `long int' instead of the non-existent `svn_version_t'.
----------------------------
revision 1.37
date: 2000/08/14 22:23:42;  author: sussman;  state: Exp;  lines: +5 -2
delta_parse.c is basically finished for now;  ready to start fleshing out       dummy vcdiff parser stuff.
----------------------------
revision 1.36
date: 2000/08/14 19:04:16;  author: sussman;  state: Exp;  lines: +2 -171
Moved private stuff from public header to private header.
----------------------------
revision 1.35
date: 2000/08/14 17:58:53;  author: sussman;  state: Exp;  lines: +114 -2

Merged jimb's walker structure into svn_delta.h, jimb's own header is
not (any longer) relevant.  :)

Busy filling out parser's routines to call various svn_walker_t callbacks.
----------------------------
revision 1.34
date: 2000/08/11 20:57:03;  author: sussman;  state: Exp;  lines: +21 -8
Entire interface rewritten, in process of flushing out specific events now.
----------------------------
revision 1.33
date: 2000/08/11 01:07:27;  author: sussman;  state: Exp;  lines: +15 -32

Saving work... in the middle of huge rewrite, a big mess.
I'm doing this because of repeated power outages here at home.
(I need to buy a UPS *now*)
----------------------------
revision 1.32
date: 2000/08/10 21:03:46;  author: sussman;  state: Exp;  lines: +25 -27
In process of rewriting parser machinery.
----------------------------
revision 1.31
date: 2000/08/10 14:57:17;  author: jimb;  state: Exp;  lines: +31 -12
(svn_delta_read_fn_t, svn_text_delta, svn_delta_to_vcdiff): Doc fixes.

Turn VCDIFF parsing interface upside-down, to use a caller-pushes
model.  This makes it easier to work properly with Expat.
----------------------------
revision 1.30
date: 2000/08/10 13:32:31;  author: jimb;  state: Exp;  lines: +120 -99
Revert previous change, which added a not-yet-implemented interface to
svn_delta.h.

Mea culpa.  The CVS sources should always build.  In cases where it
would be helpful to check in experimental code, or not-yet-implemented
interfaces, they can be put in an uncompiled file until the work is
completed.
----------------------------
revision 1.29
date: 2000/08/09 21:51:19;  author: jimb;  state: Exp;  lines: +122 -143
Replace tree delta traversal interface.  The new interface does a
better job of insulating the consumer of the delta's data from details
of the delta's representation.  Both the parser and the client should
be simpler now.

(svn_next_delta_window, svn_delta_to_vcdiff, svn_vcdiff_to_delta): Put
values returned by reference first.

Doc fixes.
----------------------------
revision 1.28
date: 2000/08/09 17:42:47;  author: kfogel;  state: Exp;  lines: +0 -10
Delete obsolete comment.
----------------------------
revision 1.27
date: 2000/08/08 17:34:03;  author: sussman;  state: Exp;  lines: +3 -3
Delta library compiles now.
----------------------------
revision 1.26
date: 2000/08/08 17:03:24;  author: kfogel;  state: Exp;  lines: +3 -3
(svn_delta_digger_t): uh, correct that other function pointer
prototype, too.
----------------------------
revision 1.25
date: 2000/08/08 17:03:01;  author: kfogel;  state: Exp;  lines: +4 -4
(svn_delta_digger_t): correct function pointer prototypes.
----------------------------
revision 1.24
date: 2000/08/08 16:48:55;  author: kfogel;  state: Exp;  lines: +11 -9
Clean up syntax errors -- we're compiling now.
----------------------------
revision 1.23
date: 2000/08/08 03:01:31;  author: jimb;  state: Exp;  lines: +11 -11
(svn_delta_stream_t): This shouldn't be a pointer to a struct; it's
just an opaque struct.

(svn_delta_read_fn_t): Provide a way to return EOF and short reads.

(svn_delta_read_fn_t): Make this a function type, not a
pointer-to-function type.
(svn_text_delta): Adjust prototype.

(svn_text_delta): Doc fixes.
----------------------------
revision 1.22
date: 2000/08/08 02:59:30;  author: kfogel;  state: Exp;  lines: +2 -2
(svn_delta_window_t): "ops", not "insns".
----------------------------
revision 1.21
date: 2000/08/08 02:49:36;  author: jimb;  state: Exp;  lines: +3 -3
Rename: svn_delta_insn_t to svn_delta_op_t.
----------------------------
revision 1.20
date: 2000/08/08 02:42:16;  author: kfogel;  state: Exp;  lines: +3 -10
Minor comment in Jim's text delta interface.

(svn_walk_delta_stack): obsolete, removed.
----------------------------
revision 1.19
date: 2000/08/08 00:35:52;  author: jimb;  state: Exp;  lines: +7 -7
Doc fix.
----------------------------
revision 1.18
date: 2000/08/08 00:34:10;  author: jimb;  state: Exp;  lines: +14 -10
Doc fix.
----------------------------
revision 1.17
date: 2000/08/08 00:16:35;  author: jimb;  state: Exp;  lines: +149 -21
Add interface to text deltas.
----------------------------
revision 1.16
date: 2000/08/07 22:44:11;  author: sussman;  state: Exp;  lines: +1 -58
Finished stackframe rewrite... much cleaner.
----------------------------
revision 1.15
date: 2000/08/07 22:04:13;  author: sussman;  state: Exp;  lines: +4 -5
in process of rewriting w/ stack frames
----------------------------
revision 1.14
date: 2000/08/07 20:29:37;  author: sussman;  state: Exp;  lines: +41 -0
Added delta stackframe type.
----------------------------
revision 1.13
date: 2000/08/05 22:55:58;  author: kfogel;  state: Exp;  lines: +7 -0
Codus Interruptus, saving state:

Implementing svn_walk_delta() before implementing delta_to_path()
before implementing update_dir_handler().

Someone remind me to read this log entry to figure what to do next.

(svn_walk_delta): in progress.

(update_dir_handler): waiting on above and delta_to_path().
----------------------------
revision 1.12
date: 2000/08/05 22:26:44;  author: kfogel;  state: Exp;  lines: +1 -2
Correct prototype for svn_delta_digger_t->dir_handler.
----------------------------
revision 1.11
date: 2000/08/05 20:48:17;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_make_xml_parser): new constructor function (rename of
svn_xml_make_parser).

Use it in test program.
----------------------------
revision 1.10
date: 2000/08/05 20:44:24;  author: kfogel;  state: Exp;  lines: +8 -2
Include xmlparse.h.

(svn_xml_make_parser): prototype.
----------------------------
revision 1.9
date: 2000/08/05 19:37:10;  author: kfogel;  state: Exp;  lines: +106 -1
Moved all delta definitions from svn_types.h to svn_delta.h.

Namespace-protect enum values with "svn_".
----------------------------
revision 1.8
date: 2000/08/05 17:41:28;  author: kfogel;  state: Exp;  lines: +10 -0
Made note about possible context optimization for data handler
callback.
----------------------------
revision 1.7
date: 2000/08/05 17:34:27;  author: kfogel;  state: Exp;  lines: +5 -2
Working with Ben:

Got rid of `svn_ancestor_t' -- it was only used for one thing, so just
hold its fields inline.

Say `this_edit_content' instead of `new_edit_content', to avoid
implying that the type of the edit is `new'.

Point out some remaining bookkeeping tasks in comments.

Got rid of some old debugging code.
----------------------------
revision 1.6
date: 2000/08/05 16:17:34;  author: sussman;  state: Exp;  lines: +4 -0

Filling out main expat callback.
----------------------------
revision 1.5
date: 2000/08/05 03:44:16;  author: sussman;  state: Exp;  lines: +3 -1

1. Defined new enum svn_XML_elt_t, describing different XML elts we may
   encounter when building a delta.

2. Defined svn_append_to_delta(delta, object, svn_XML_elt_t), which
   traverses a delta-in-progress recursively and attaches object to the tip.

3. Started filling in main expat "open paren" callback with above routine.
----------------------------
revision 1.4
date: 2000/08/04 22:24:36;  author: kfogel;  state: Exp;  lines: +28 -1
(svn_delta_digger_t): explain how diggers are used.
----------------------------
revision 1.3
date: 2000/08/04 21:57:05;  author: kfogel;  state: Exp;  lines: +7 -1
Hmmm, somehow missed the local eval ritual -- put it in again.
----------------------------
revision 1.2
date: 2000/08/04 21:53:19;  author: kfogel;  state: Exp;  lines: +15 -9
Use `apr_pool_t' now, not `ap_pool_t'.

Document callbacks as caller will use them.

Added the usual local eval ritual to the end of svn_delta.h and
svn_hash.h.

(unknown_elt_handler): more descriptive name for `default_handler'.
----------------------------
revision 1.1
date: 2000/08/04 21:40:41;  author: sussman;  state: Exp;
Started XML-to-Delta callback system.
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_error.h,v
Working file: include/svn_error.h
head: 1.18
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 18;	selected revisions: 18
description:
----------------------------
revision 1.18
date: 2000/08/30 09:37:55;  author: gstein;  state: Exp;  lines: +7 -1
add a couple error codes for RA/DAV usage
----------------------------
revision 1.17
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.16
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;  lines: +3 -0
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.15
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.14
date: 2000/08/22 00:37:32;  author: kfogel;  state: Exp;  lines: +6 -1
(svn_errno_t): new error code `SVN_ERR_ENCOUNTERED_LOCK'.
----------------------------
revision 1.13
date: 2000/08/14 22:23:42;  author: sussman;  state: Exp;  lines: +1 -0
delta_parse.c is basically finished for now;  ready to start fleshing out       dummy vcdiff parser stuff.
----------------------------
revision 1.12
date: 2000/08/14 17:58:53;  author: sussman;  state: Exp;  lines: +3 -0

Merged jimb's walker structure into svn_delta.h, jimb's own header is
not (any longer) relevant.  :)

Busy filling out parser's routines to call various svn_walker_t callbacks.
----------------------------
revision 1.11
date: 2000/08/11 17:13:49;  author: jimb;  state: Exp;  lines: +5 -5
* svn_error.h (svn_create_errorf): Use `extern' in declaration, although
it doesn't make any difference.

* svn_error.c: #include <stdarg.h> and "apr_strings.h", since we use
facilities they provide.
(svn_create_errorf): New function.
----------------------------
revision 1.10
date: 2000/08/10 23:54:01;  author: jimb;  state: Exp;  lines: +10 -2
Create a typedef for enum svn_errno_t.
----------------------------
revision 1.9
date: 2000/08/10 23:27:10;  author: jimb;  state: Exp;  lines: +16 -10
Use an enum instead of a series of #defines for the error codes.  The
effect in the code is the same, but the debugger can see and use enum
values, while it is ignorant of #defines.
----------------------------
revision 1.8
date: 2000/08/05 21:46:24;  author: kfogel;  state: Exp;  lines: +9 -7
(SVN_ERR_OBSTRUCTED_UPDATE): new error.
----------------------------
revision 1.7
date: 2000/08/05 21:07:40;  author: sussman;  state: Exp;  lines: +1 -0

Broke apart recursive delta cdr() logic from appending logic.
----------------------------
revision 1.6
date: 2000/08/03 14:39:43;  author: sussman;  state: Exp;  lines: +4 -4
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.5
date: 2000/08/01 01:08:36;  author: sussman;  state: Exp;  lines: +5 -18
saving autoconf work
----------------------------
revision 1.4
date: 2000/07/27 20:25:04;  author: sussman;  state: Exp;  lines: +2 -0
Movin' stuff around
----------------------------
revision 1.3
date: 2000/07/17 21:47:48;  author: sussman;  state: Exp;  lines: +88 -0
moved headers to include/
----------------------------
revision 1.2
date: 2000/07/03 23:25:23;  author: kfogel;  state: dead;  lines: +0 -0
Move svn_error.h from include/ to svn_subr/, because it's an internal
interface, not an exported one.
----------------------------
revision 1.1
date: 2000/07/03 23:22:44;  author: sussman;  state: Exp;
adding error handling files
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_fs.h,v
Working file: include/svn_fs.h
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +1 -1
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.2
date: 2000/08/28 16:09:03;  author: sussman;  state: Exp;  lines: +1 -1
typo fix.
----------------------------
revision 1.1
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_hash.h,v
Working file: include/svn_hash.h
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/08/28 20:17:30;  author: kfogel;  state: Exp;  lines: +9 -9
Put on `svn_' prefix.
----------------------------
revision 1.5
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.4
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.3
date: 2000/08/04 21:53:19;  author: kfogel;  state: Exp;  lines: +8 -0
Use `apr_pool_t' now, not `ap_pool_t'.

Document callbacks as caller will use them.

Added the usual local eval ritual to the end of svn_delta.h and
svn_hash.h.

(unknown_elt_handler): more descriptive name for `default_handler'.
----------------------------
revision 1.2
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +9 -9
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.1
date: 2000/07/27 21:12:26;  author: sussman;  state: Exp;
Header file reorganization
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_parse.h,v
Working file: include/svn_parse.h
head: 1.5
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.5
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.4
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.3
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +1 -1
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.2
date: 2000/07/17 22:19:53;  author: jimb;  state: Exp;  lines: +81 -28
New parsing API, and underlying data structure.
----------------------------
revision 1.1
date: 2000/07/17 21:47:48;  author: sussman;  state: Exp;
moved headers to include/
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_path.h,v
Working file: include/svn_path.h
head: 1.10
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 10;	selected revisions: 10
description:
----------------------------
revision 1.10
date: 2000/09/01 21:03:12;  author: kfogel;  state: Exp;  lines: +21 -24
Partially revert my change of 2000-08-31 15:29.  The svn_path library
now side-effects its operands again; all callers changed to account
for this, but not always exactly as they worked before.

* path.c, path.h (add_component_internal): revert to 1.7 behavior, but
also canonicalize result.
(svn_path_add_component_nts, svn_path_add_component): revert to 1.7
behavior.
(svn_path_remove_component): revert to 1.7 behavior and prototype.

* delta_parse.c (maybe_derive_ancestry): dup a new path and add name
to it as a component, to get ancestor.

* adm_files.c: revert to 1.5:
(extend_with_adm_name): back to this name instead of `make_adm_path',
callers changed accordingly.
(chop_admin_name): restored, calls restored as well.

* util.c (svn_wc__ensure_directory): dup a new path, then shorten it,
when recursing.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): dup a new path, then operate on that.

Also, changes to accommodate new names:

* apply_delta.c (svn_wc_apply_delta): it's `svn_XML_parse' now, not
`svn_delta_parse'.
----------------------------
revision 1.9
date: 2000/08/31 20:29:37;  author: kfogel;  state: Exp;  lines: +28 -15
Change path library to always return non-shared results, instead of
side-effecting its arguments (part of making libsvn_wc insensitive to
whether delta traversal happens depth-first vs breadth-first):

* path.c (add_component_internal): make and return a new string,
canonicalizing it before returning.
(svn_path_add_component_nts, svn_path_add_component): return a new
string.
(svn_path_remove_component): return a new string, and take a new pool
arg therefore.

* delta_parse.c (maybe_derive_ancestry): use new svn_path semantics;
tighten up code and comments.

* adm_files.c (make_adm_path): replaces extend_with_adm_name(), no
longer requires the caller to "unmake" the name later.
Callers changed accordingly.
(chop_admin_name): removed, no longer necessary.

* util.c (svn_wc__ensure_directory): use new svn_path semantics,
improve comments.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): use new svn_path semantics.

Also, changes to accommodate new names:

* apply_delta.c (window_handler): it's "txdelta", not "delta".
----------------------------
revision 1.8
date: 2000/08/31 13:40:48;  author: gstein;  state: Exp;  lines: +3 -0
add a new "component style" (for paths) for the URL separator ('/')
----------------------------
revision 1.7
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.6
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.5
date: 2000/08/25 19:58:49;  author: kfogel;  state: Exp;  lines: +4 -2
More changes for context-sensitive delta application.

Do path canonicalization.
----------------------------
revision 1.4
date: 2000/08/25 19:07:34;  author: kfogel;  state: Exp;  lines: +6 -0
Make sure dest_dir is accounted for in delta application.

(maybe_prepend_dest): new func, makes sure delta activity happens in
the right place.

(svn_path_isempty): new func, helper for above.
----------------------------
revision 1.3
date: 2000/08/25 18:18:39;  author: kfogel;  state: Exp;  lines: +7 -0
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.2
date: 2000/08/22 19:55:02;  author: kfogel;  state: Exp;  lines: +13 -2
(SVN_PATH_LOCAL_STYLE, SVN_PATH_REPOS_STYLE): new #defines.

(svn_path_remove_component, svn_path_add_component,
svn_path_add_component_nts, add_path_internal): use them.

All callers changed.

This gives an interface handling both local paths (for files) and
repository paths (for ancestry), though the implementation is all
Unix-style right now, which is the same as repository style.
----------------------------
revision 1.1
date: 2000/08/22 17:30:27;  author: kfogel;  state: Exp;
Put mini-library for path manipulation into libsvn_subr.

(maybe_derive_ancestor): always set to a full ancestry path, derived
from both ancestors and names.
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_ra.h,v
Working file: include/svn_ra.h
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/31 13:52:28;  author: gstein;  state: Exp;  lines: +11 -10
continued development.
fetch.c:
  - added my_basename() to get the basename of a char* into an svn_string
  - added fetch_file() to grab files from the server
  - added logic to call walker callbacks to create the working copy
  - fetch_data is history: it becomes svn_ra_checkout()
  - svn_ra_update() is gone. the algorithm will use a walker returned by
    svn_ra_get_update_walker()
  - added svn_ra_get_update_walker() and associated functions (unused)
commit.c:
  - added svn_ra_get_commit_walker() and associated functions (unused)
ra-dav-test.c:
  - can't use svn_wc_get_change_walker(), so we add a temporary, internal
    debug walker to use.
Makefile.am:
  - build commit.c and tests subdir
svn_ra.h:
  - bring up to date with new design
----------------------------
revision 1.2
date: 2000/08/30 09:55:57;  author: gstein;  state: Exp;  lines: +1 -1
wouldn't you know it... the file that I used as a template for the new
    RA/DAV files' license (it was apply_delta.c) happens to be the only file
    with a tweak in it. of all that I could have chosen...
----------------------------
revision 1.1
date: 2000/08/30 09:46:21;  author: gstein;  state: Exp;
begin implementation of the RA/DAV layer.
introduced "RA Session" concept: svn_ra_open, svn_ra_close.
draft prototypes for: svn_ra_update, svn_ra_checkout
this "draft" will connect to a DAV server and traverse the URL space to
    fetch the DAV:target property from each member resource.
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_string.h,v
Working file: include/svn_string.h
head: 1.30
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 30;	selected revisions: 30
description:
----------------------------
revision 1.30
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.29
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.28
date: 2000/08/25 18:18:39;  author: kfogel;  state: Exp;  lines: +4 -0
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.27
date: 2000/08/18 21:45:36;  author: kfogel;  state: Exp;  lines: +3 -0
(svn_string_chop_back_to_char): prototype.
----------------------------
revision 1.26
date: 2000/08/18 16:44:26;  author: sussman;  state: Exp;  lines: +0 -3
Remove all cases of svn_string_print().

Remove compile warning on deltaparse-test.c.
----------------------------
revision 1.25
date: 2000/08/18 16:09:57;  author: kfogel;  state: Exp;  lines: +0 -9
(svn_string_dup2cstring, svn_string_compare_2cstring): removed, no
need for these funcs.

Rewrote test suite to exercise new functionality, and display results
readably.
----------------------------
revision 1.24
date: 2000/08/18 14:41:57;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_string_dup2cstring, svn_string_ncreate, svn_string_appendbytes,
svn_string_chop): o-b-o-e repairs, thanks to Greg Stein
<gstein@lyra.org> for catching them early.

(svn_string_dup2cstring): new name for `svn_string_2cstring'.
----------------------------
revision 1.23
date: 2000/08/18 01:10:31;  author: kfogel;  state: Exp;  lines: +1 -0
(svn_string_chop): new func, does what you think it does.

(svn_string_setempty): just set len to 0, and null data[0] if
appropriate.  Leave block and blocksize alone, however, so we can
still call svn_string_appendstr() with all the rights, privileges, and
honors thereunto appertaining.

(svn_string_isempty): simplify.
----------------------------
revision 1.22
date: 2000/08/05 21:02:19;  author: kfogel;  state: Exp;  lines: +13 -1
Define svn_string_t type in svn_string.h now, using explicit structs
for forward references.
----------------------------
revision 1.21
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +6 -6
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.20
date: 2000/07/27 04:15:35;  author: kfogel;  state: Exp;  lines: +1 -11
Define `svn_string_t' in svn_types.h after all, otherwise we had a
circular include problem.
----------------------------
revision 1.19
date: 2000/07/17 22:32:04;  author: jimb;  state: Exp;  lines: +9 -1
* svn_string.h: No need to #include <svn_types.h> any more.
Do #include <apr_pools.h>, however.
(svn_string_t): Move the definition of this type here.
* svn_types.h: #include <svn_string.h>.
(svn_string_t): Definition removed.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.18
date: 2000/07/17 21:09:00;  author: jimb;  state: Exp;  lines: +3 -3
Rename symbols used to protect header files from multiple #inclusion
so the symbols don't tread on the system C library's name space.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.17
date: 2000/07/08 00:44:13;  author: sussman;  state: Exp;  lines: +5 -0
saving lots of random work threads.
----------------------------
revision 1.16
date: 2000/07/07 00:45:20;  author: sussman;  state: Exp;  lines: +2 -1
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.15
date: 2000/07/06 23:32:43;  author: sussman;  state: Exp;  lines: +3 -1
moved some convenient string routines from svn_parse.c to svn_string.c
----------------------------
revision 1.14
date: 2000/07/06 04:41:23;  author: sussman;  state: Exp;  lines: +2 -1
bugfixes
----------------------------
revision 1.13
date: 2000/07/05 19:51:43;  author: sussman;  state: Exp;  lines: +4 -0
added svn_string_2cstring()
----------------------------
revision 1.12
date: 2000/07/01 01:42:16;  author: sussman;  state: Exp;  lines: +2 -2
save, save, save
----------------------------
revision 1.11
date: 2000/06/29 20:57:10;  author: sussman;  state: Exp;  lines: +12 -10
peppered const's into string library.  yum.
----------------------------
revision 1.10
date: 2000/06/23 20:52:16;  author: sussman;  state: Exp;  lines: +4 -8
committed changes suggested by Greg Stein
----------------------------
revision 1.9
date: 2000/06/23 15:11:40;  author: sussman;  state: Exp;  lines: +6 -9
bytestrings now work correctly with ap_pool_t
----------------------------
revision 1.8
date: 2000/06/22 23:48:38;  author: sussman;  state: Exp;  lines: +11 -6
libsvn_string now uses ap_pool_t instead of malloc;  but having LD problems trying to link libapr.a in, argh
----------------------------
revision 1.7
date: 2000/06/21 18:54:17;  author: sussman;  state: Exp;  lines: +1 -1
finished bytestring library and little test program.
----------------------------
revision 1.6
date: 2000/06/21 18:29:12;  author: sussman;  state: Exp;  lines: +2 -11
adding tests
----------------------------
revision 1.5
date: 2000/06/21 17:28:41;  author: sussman;  state: Exp;  lines: +2 -0
added convenience routine
----------------------------
revision 1.4
date: 2000/06/21 17:11:07;  author: sussman;  state: Exp;  lines: +12 -26
fixed string routines
----------------------------
revision 1.3
date: 2000/06/21 15:14:46;  author: sussman;  state: Exp;  lines: +14 -2
about to fix errors
----------------------------
revision 1.2
date: 2000/06/20 21:10:21;  author: sussman;  state: Exp;  lines: +40 -0
added bytestring routines
----------------------------
revision 1.1
date: 2000/06/19 21:32:31;  author: sussman;  state: Exp;
add string files
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_svr.h,v
Working file: include/svn_svr.h
head: 1.32
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 32;	selected revisions: 32
description:
----------------------------
revision 1.32
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.31
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.30
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +12 -12
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.29
date: 2000/07/18 20:19:50;  author: sussman;  state: Exp;  lines: +213 -137
Removed policy-level permission-checking from server;  redundant with Apache.
----------------------------
revision 1.28
date: 2000/07/17 21:09:00;  author: jimb;  state: Exp;  lines: +3 -3
Rename symbols used to protect header files from multiple #inclusion
so the symbols don't tread on the system C library's name space.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.27
date: 2000/07/17 19:17:35;  author: sussman;  state: Exp;  lines: +17 -0
add warning hook to policy structure, replace warning calls appropriately.
----------------------------
revision 1.26
date: 2000/07/17 15:57:24;  author: sussman;  state: Exp;  lines: +51 -25

Major rewrite of Subversion Server logic: instead of 15 wrappered
filesystem calls, we now have *one* filesystem wrapper that takes a
svn_fsrequest_t structure as input.  MUCH CLEANER.
----------------------------
revision 1.25
date: 2000/07/15 00:14:48;  author: sussman;  state: Exp;  lines: +12 -0
Fleshing out lots of server routines... much stuff.
----------------------------
revision 1.24
date: 2000/07/14 00:10:34;  author: sussman;  state: Exp;  lines: +14 -6
Changed the way server inits; fixed other random typos.
----------------------------
revision 1.23
date: 2000/07/13 05:12:34;  author: sussman;  state: Exp;  lines: +2 -1

 * Removed ap_err and ap_description fields from error structure
 * svn_create_error() no longer tries to fill these fields
 * svn_handle_error() calls ap_canonical_error() and ap_strerror()
                      when printing error structure
----------------------------
revision 1.22
date: 2000/07/12 03:20:41;  author: sussman;  state: Exp;  lines: +8 -21
saving work
----------------------------
revision 1.21
date: 2000/07/12 01:33:40;  author: kfogel;  state: Exp;  lines: +31 -31
Eliminate typedef of `svn_proplist_t' to `ap_hash_t'.

Change all references to use `ap_hash_t'.

We'll be good, GCC.  Promise.
----------------------------
revision 1.20
date: 2000/07/12 01:19:53;  author: sussman;  state: Exp;  lines: +40 -16
checking in current state, so karl can do global search/replace
----------------------------
revision 1.19
date: 2000/07/11 01:28:21;  author: sussman;  state: Exp;  lines: +2 -1
saving work, working on loading plugins
----------------------------
revision 1.18
date: 2000/07/08 01:06:46;  author: sussman;  state: Exp;  lines: +3 -2
svn_svr_init() test works...
----------------------------
revision 1.17
date: 2000/07/07 20:53:32;  author: sussman;  state: Exp;  lines: +28 -15
save work\!
----------------------------
revision 1.16
date: 2000/07/04 20:28:27;  author: sussman;  state: Exp;  lines: +25 -24
really big checkin
----------------------------
revision 1.15
date: 2000/07/04 02:30:33;  author: sussman;  state: Exp;  lines: +9 -0
adding internal, non-exported routines to server library
----------------------------
revision 1.14
date: 2000/07/04 01:47:24;  author: sussman;  state: Exp;  lines: +2 -2
save save save
----------------------------
revision 1.13
date: 2000/07/03 19:56:00;  author: sussman;  state: Exp;  lines: +12 -9
Many changes; using svn_strings, ap_arrays, ap_hashes, and ap_pools in many new places.
----------------------------
revision 1.12
date: 2000/07/01 01:42:16;  author: sussman;  state: Exp;  lines: +57 -52
save, save, save
----------------------------
revision 1.11
date: 2000/06/30 23:08:50;  author: kfogel;  state: Exp;  lines: +2 -1
Started working copy management library.

Update other headers and docs to note some `todo' items.
----------------------------
revision 1.10
date: 2000/06/16 22:58:55;  author: sussman;  state: Exp;  lines: +6 -0
plugins now register themselves, rather than the server digging for them
----------------------------
revision 1.9
date: 2000/06/16 22:22:38;  author: sussman;  state: Exp;  lines: +82 -57
wrote authorization_hooks glue code iterator thingie
----------------------------
revision 1.8
date: 2000/06/16 21:21:08;  author: sussman;  state: Exp;  lines: +41 -10
save save save
----------------------------
revision 1.7
date: 2000/06/16 17:33:45;  author: sussman;  state: Exp;  lines: +26 -17
saving work
----------------------------
revision 1.6
date: 2000/06/16 16:56:54;  author: sussman;  state: Exp;  lines: +16 -16
save work
----------------------------
revision 1.5
date: 2000/06/15 22:59:42;  author: sussman;  state: Exp;  lines: +31 -25
started writing server code and a first plugin
----------------------------
revision 1.4
date: 2000/06/15 18:25:15;  author: sussman;  state: Exp;  lines: +6 -5
tweak
----------------------------
revision 1.3
date: 2000/06/14 22:11:01;  author: sussman;  state: Exp;  lines: +33 -0
added svn_getuser ()
----------------------------
revision 1.2
date: 2000/06/09 22:29:25;  author: sussman;  state: Exp;  lines: +93 -19
First stab at global types, and basic declarations of server library.
----------------------------
revision 1.1
date: 2000/06/09 18:38:18;  author: sussman;  state: Exp;
saving work
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_types.h,v
Working file: include/svn_types.h
head: 1.41
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 41;	selected revisions: 41
description:
----------------------------
revision 1.41
date: 2000/09/02 04:13:15;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_dir_kind): replaces svn_directory_kind, enough keystrokes already.
----------------------------
revision 1.40
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.39
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.38
date: 2000/08/16 23:01:04;  author: kfogel;  state: Exp;  lines: +4 -1
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.37
date: 2000/08/05 21:02:19;  author: kfogel;  state: Exp;  lines: +15 -26
Define svn_string_t type in svn_string.h now, using explicit structs
for forward references.
----------------------------
revision 1.36
date: 2000/08/05 19:37:10;  author: kfogel;  state: Exp;  lines: +1 -113
Moved all delta definitions from svn_types.h to svn_delta.h.

Namespace-protect enum values with "svn_".
----------------------------
revision 1.35
date: 2000/08/05 17:34:27;  author: kfogel;  state: Exp;  lines: +5 -10
Working with Ben:

Got rid of `svn_ancestor_t' -- it was only used for one thing, so just
hold its fields inline.

Say `this_edit_content' instead of `new_edit_content', to avoid
implying that the type of the edit is `new'.

Point out some remaining bookkeeping tasks in comments.

Got rid of some old debugging code.
----------------------------
revision 1.34
date: 2000/08/05 03:44:16;  author: sussman;  state: Exp;  lines: +17 -0

1. Defined new enum svn_XML_elt_t, describing different XML elts we may
   encounter when building a delta.

2. Defined svn_append_to_delta(delta, object, svn_XML_elt_t), which
   traverses a delta-in-progress recursively and attaches object to the tip.

3. Started filling in main expat "open paren" callback with above routine.
----------------------------
revision 1.33
date: 2000/08/05 02:37:01;  author: sussman;  state: Exp;  lines: +1 -2
Removed *next field from svn_edit_t, because our in-memory delta will
_never_ need to hold more than one edit at a time;  one edit will
always be "closed" before the next sibiling edit begins.  Thus the
"edit" field of our delta should be thought of us as "the current edit
we're working on", _not_ a list of edits.
----------------------------
revision 1.32
date: 2000/08/04 21:40:41;  author: sussman;  state: Exp;  lines: +2 -2
Started XML-to-Delta callback system.
----------------------------
revision 1.31
date: 2000/08/04 20:49:37;  author: kfogel;  state: Exp;  lines: +9 -30
Point out streamy construction/deconstruction of deltas w.r.t. XML
parser, remove note about now-obsolete method.
----------------------------
revision 1.30
date: 2000/08/04 20:44:36;  author: kfogel;  state: Exp;  lines: +3 -2
(svn_edit_content_t): can include a tree delta as content.

(svn_ver_t, svn_user_t): cosmetic fix: use the `_t' suffix even in the
structure namespace, for consistency.
----------------------------
revision 1.29
date: 2000/08/04 17:03:12;  author: kfogel;  state: Exp;  lines: +15 -5
(svn_edit_t): add `action_end' in enum `kind', comment explaining why.
----------------------------
revision 1.28
date: 2000/08/04 12:55:46;  author: sussman;  state: Exp;  lines: +6 -6
readability tweak
----------------------------
revision 1.27
date: 2000/08/04 12:36:38;  author: sussman;  state: Exp;  lines: +11 -5
tweak
----------------------------
revision 1.26
date: 2000/08/04 12:33:29;  author: sussman;  state: Exp;  lines: +19 -25
Heh, just tweaking Karl's data schema... almost identical to mine. :)
----------------------------
revision 1.25
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +6 -6
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.24
date: 2000/07/27 04:15:35;  author: kfogel;  state: Exp;  lines: +12 -1
Define `svn_string_t' in svn_types.h after all, otherwise we had a
circular include problem.
----------------------------
revision 1.23
date: 2000/07/17 22:32:04;  author: jimb;  state: Exp;  lines: +1 -10
* svn_string.h: No need to #include <svn_types.h> any more.
Do #include <apr_pools.h>, however.
(svn_string_t): Move the definition of this type here.
* svn_types.h: #include <svn_string.h>.
(svn_string_t): Definition removed.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.22
date: 2000/07/17 21:09:00;  author: jimb;  state: Exp;  lines: +3 -3
Rename symbols used to protect header files from multiple #inclusion
so the symbols don't tread on the system C library's name space.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.21
date: 2000/07/17 15:57:24;  author: sussman;  state: Exp;  lines: +7 -4

Major rewrite of Subversion Server logic: instead of 15 wrappered
filesystem calls, we now have *one* filesystem wrapper that takes a
svn_fsrequest_t structure as input.  MUCH CLEANER.
----------------------------
revision 1.20
date: 2000/07/12 20:52:20;  author: kfogel;  state: Exp;  lines: +28 -26
Namespace-protect svn_svr_action_t, to avoid enumbiguities.
(The prefix is "svn_action_".  While "svn_svr_action_" would probably
have been preferable, it's pretty long, and even starts getting close
to the 32-char limit, as in `svn_svr_action_get_dirent_propnames'.)

Use `svn_delta_action_t' instead of `svn_change_action_t', due to
possible noun/verb confusion.

All callers changed.
----------------------------
revision 1.19
date: 2000/07/12 03:20:42;  author: sussman;  state: Exp;  lines: +1 -0
saving work
----------------------------
revision 1.18
date: 2000/07/12 01:33:40;  author: kfogel;  state: Exp;  lines: +4 -11
Eliminate typedef of `svn_proplist_t' to `ap_hash_t'.

Change all references to use `ap_hash_t'.

We'll be good, GCC.  Promise.
----------------------------
revision 1.17
date: 2000/07/11 06:29:40;  author: kfogel;  state: Exp;  lines: +3 -3
Resolve some enumbiguities.
----------------------------
revision 1.16
date: 2000/07/08 01:42:26;  author: kfogel;  state: Exp;  lines: +111 -5
Added delta types (needed for libsvn_wc).
----------------------------
revision 1.15
date: 2000/07/05 19:51:43;  author: sussman;  state: Exp;  lines: +1 -1
added svn_string_2cstring()
----------------------------
revision 1.14
date: 2000/07/04 20:28:27;  author: sussman;  state: Exp;  lines: +17 -6
really big checkin
----------------------------
revision 1.13
date: 2000/07/04 03:17:23;  author: sussman;  state: Exp;  lines: +10 -2
fleshing out filesystem wrappers in full, ahhh.
----------------------------
revision 1.12
date: 2000/07/03 19:56:00;  author: sussman;  state: Exp;  lines: +13 -16
Many changes; using svn_strings, ap_arrays, ap_hashes, and ap_pools in many new places.
----------------------------
revision 1.11
date: 2000/07/01 01:42:16;  author: sussman;  state: Exp;  lines: +1 -0
save, save, save
----------------------------
revision 1.10
date: 2000/06/30 23:08:50;  author: kfogel;  state: Exp;  lines: +1 -0
Started working copy management library.

Update other headers and docs to note some `todo' items.
----------------------------
revision 1.9
date: 2000/06/21 18:29:12;  author: sussman;  state: Exp;  lines: +17 -7
adding tests
----------------------------
revision 1.8
date: 2000/06/20 21:10:21;  author: sussman;  state: Exp;  lines: +14 -0
added bytestring routines
----------------------------
revision 1.7
date: 2000/06/19 21:32:31;  author: sussman;  state: Exp;  lines: +2 -7
add string files
----------------------------
revision 1.6
date: 2000/06/19 21:14:12;  author: sussman;  state: Exp;  lines: +7 -7
save
----------------------------
revision 1.5
date: 2000/06/16 22:22:38;  author: sussman;  state: Exp;  lines: +1 -1
wrote authorization_hooks glue code iterator thingie
----------------------------
revision 1.4
date: 2000/06/16 16:56:54;  author: sussman;  state: Exp;  lines: +28 -1
save work
----------------------------
revision 1.3
date: 2000/06/15 22:59:42;  author: sussman;  state: Exp;  lines: +14 -0
started writing server code and a first plugin
----------------------------
revision 1.2
date: 2000/06/13 15:34:56;  author: sussman;  state: Exp;  lines: +30 -42
changed typedefs for common svn types
----------------------------
revision 1.1
date: 2000/06/09 22:29:25;  author: sussman;  state: Exp;
First stab at global types, and basic declarations of server library.
=============================================================================

RCS file: /cvs/subversion/subversion/include/svn_wc.h,v
Working file: include/svn_wc.h
head: 1.17
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 17;	selected revisions: 17
description:
----------------------------
revision 1.17
date: 2000/09/04 20:41:31;  author: kfogel;  state: Exp;  lines: +24 -43
(svn_wc_apply_delta): removed from public interface, as
svn_wc_get_change_walker() is the way to do this now.

* checkout-test.c (apply_delta): new func in test suite, hooks up an
XML delta with a walker to do the checkout.
----------------------------
revision 1.16
date: 2000/09/02 10:03:47;  author: gstein;  state: Exp;  lines: +2 -0
(svn_wc_apply_delta): use svn_wc_get_change_walker() to create walker and
    batons for the XML parse step
(svn_wc_get_change_walker): add repos and version parameters. store them
    into the walk_baton structure.
----------------------------
revision 1.15
date: 2000/09/02 04:50:40;  author: kfogel;  state: Exp;  lines: +1 -0
(svn_wc_apply_delta): new `version' parameter.
----------------------------
revision 1.14
date: 2000/08/31 13:44:17;  author: gstein;  state: Exp;  lines: +21 -1
(svn_wc_get_change_walker): ADDED. provides a walker structure for effecting
    change against the working copy.

(svn_wc_apply_delta): don't use manual assignments to a walker structure;
    just use a static, constant structure. added "change_walker" struct.
----------------------------
revision 1.13
date: 2000/08/28 16:21:56;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.12
date: 2000/08/25 20:09:05;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.11
date: 2000/08/25 18:18:39;  author: kfogel;  state: Exp;  lines: +39 -24
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.10
date: 2000/08/24 20:48:53;  author: kfogel;  state: Exp;  lines: +28 -2
Documentation and #include fixes.

Add a top-level file to checkout-1.delta.  Grin.
----------------------------
revision 1.9
date: 2000/08/16 23:01:04;  author: kfogel;  state: Exp;  lines: +11 -6
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.8
date: 2000/08/15 15:46:39;  author: kfogel;  state: Exp;  lines: +6 -0
(svn_wc_make_skelta): restore this -- we still need skeltas for
updates.
----------------------------
revision 1.7
date: 2000/08/14 20:12:42;  author: kfogel;  state: Exp;  lines: +3 -3
Minor formatting/wording fix.
----------------------------
revision 1.6
date: 2000/08/14 20:11:51;  author: kfogel;  state: Exp;  lines: +46 -29
Reflect the new callee-push interface.

Use the (svn_error_t *) and return-by-reference conventions that we
have adopted everywhere else.

Got rid of non-streamable property functions.

Long comment about implementation of property reading and writing.
----------------------------
revision 1.5
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +8 -8
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.4
date: 2000/07/17 21:09:00;  author: jimb;  state: Exp;  lines: +3 -3
Rename symbols used to protect header files from multiple #inclusion
so the symbols don't tread on the system C library's name space.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.3
date: 2000/07/12 01:33:40;  author: kfogel;  state: Exp;  lines: +4 -4
Eliminate typedef of `svn_proplist_t' to `ap_hash_t'.

Change all references to use `ap_hash_t'.

We'll be good, GCC.  Promise.
----------------------------
revision 1.2
date: 2000/07/11 06:31:05;  author: kfogel;  state: Exp;  lines: +1 -4
Minor textual tweaks.
----------------------------
revision 1.1
date: 2000/06/30 23:09:57;  author: kfogel;  state: Exp;
Oops, forgot to add this header file in the previous commit.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/.cvsignore,v
Working file: libsvn_delta/.cvsignore
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/25 21:26:22;  author: jimb;  state: Exp;  lines: +2 -0
Add .deps and .libs directories to the ignore lists.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.2
date: 2000/08/09 04:38:13;  author: kfogel;  state: Exp;  lines: +2 -0
Ignore s'more.
----------------------------
revision 1.1
date: 2000/08/08 16:52:23;  author: kfogel;  state: Exp;
Ignore Makefile.in, Makefile, and ChangeLog*.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/Makefile.am,v
Working file: libsvn_delta/Makefile.am
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/08/30 22:52:00;  author: sussman;  state: Exp;  lines: +1 -1

Adopting code in libsvn_delta to use newly revised svn_delta_walk_t
interface.  Test program in tests/ DOES NOT YET WORK.pp

In general, rename all "svn_delta_window_t" references to
"svn_txdelta_window_t", and rename "svn_delta_window_handler_t" to
"svn_txdelta_window_handler_t".  Rename "svn_delta_op_t" to
"svn_txdelta_op_t". Also rename "svn_delta__vcdiff_parser_t" to
"svn_vcdiff_parser_t" when moving from private to public header file,
as well as changing "svn_delta__vcdiff_parse" to "svn_vcdiff_parse".

(Remove all references to pdelta_handler_t, pdelta_parser_t.)
* delta.h: (svn_delta__digger_t):  added file_baton and current_propdelta.
  (svn_delta__stackframe_t): added file_baton.
  (svn_vcdiff_parser_t): moved from private to public header.
  (svn_make_vcdiff_parser): removed, already declared in public
  header.
  (svn_vcdiff_send_window): added so delta_parse can flush vcdiff
  buffer (temporary only, until we get a real vcdiff implementation)
  (svn_propdelta_t): define simpler in-memory prop-delta object.

* svn_delta.h: (svn_vcdiff_parser_t): added from private header.
  (svn_make_vcdiff_parser): added pool arg, to create windows from.

* delta_parse.c: (do_file_callback, do_finish_file): deal with
  file_baton now.
  (do_finish_directory): drop the current dir baton when done.
  (do_begin_textdelta): call apply_textdelta with new file_baton.
  (do_finish_textdelta): scale down to a buffer flush only, no longer
  a walker callback for this.
  (do_prop_delta_callback): added -- calls appropriate walker callback
  for property deltas.
  (do_finish_setprop): deleted, made irrelevant by
  do_prop_delta_callback.
  (do_begin_propdelta, do_begin_setprop, do_delete_prop): major
  rewrite to use new in-memory propdeltas.
  (do_finish_propdelta): deleted, no longer needed.
  (xml_handle_end): add *specific* test for </delete> in the context
  of a <prop-delta> (as opposed to within a <tree-delta>)
  (xml_handle_data): buffer property values internally, no longer need
  a "property parser" in prop_parse.c

* vcdiff_parse.c: (svn_delta__vcdiff_flush_buffer): removed, just put
  the one line into delta_parse.c:do_finish_textdelta.
  (svn_vcdiff_send_window): no longer static -- called by
  do_finish_text_delta to flush final buffer.

* prop_parse.c: deleted, no longer needed.  xml_handle_data can buffer
  property values as they come in from expat.  Much simpler now!

* Makefile.am: remove prop_parse.c


TODO:  rename svn_delta_parse to something more specific.
svn_XML_parse is fine, I think, because it's still a very
general-purpose routine;  it takes an read function and a walk_t
structure.

This would work for a "test" program:

     * reader function presents an XML file;
     * callbacks are a bunch of dorky printf's

It would also work for WC use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate DAV calls

It would also work for WC *internal* use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate *new* XML to put in WC administrative files.
----------------------------
revision 1.6
date: 2000/08/18 22:30:31;  author: sussman;  state: Exp;  lines: +1 -1

We made a interface change in svn_walk_t, which then required much
hacking on libsvn_delta.  deltaparse-test now works correctly again.

We're now ready to start filling out prop_parse.c!
----------------------------
revision 1.5
date: 2000/08/17 22:45:15;  author: sussman;  state: Exp;  lines: +1 -1
AHA... deltaparse-test actually WORKS.  Time for a beer.
----------------------------
revision 1.4
date: 2000/08/17 19:39:55;  author: sussman;  state: Exp;  lines: +1 -1
vcdiff_parse.c now compiles.
----------------------------
revision 1.3
date: 2000/08/08 23:22:04;  author: kfogel;  state: Exp;  lines: +1 -2
Use static where appropriate.

Correct ordering of library dependencies; plus some accidental newline
removals that are easier to commit than revert.
----------------------------
revision 1.2
date: 2000/08/08 17:34:03;  author: sussman;  state: Exp;  lines: +1 -1
Delta library compiles now.
----------------------------
revision 1.1
date: 2000/08/08 16:35:30;  author: sussman;  state: Exp;
Don't need intra-library header, but we do need automake.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/delta.h,v
Working file: libsvn_delta/delta.h
head: 1.21
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 21;	selected revisions: 21
description:
----------------------------
revision 1.21
date: 2000/09/01 22:24:56;  author: kfogel;  state: Exp;  lines: +1 -1
Use "add" as the tagname everywhere, instead of "new".
All sample deltas updated, and:

(svn_delta__tagmap): "add" replaces "new".
(svn_delta__XML_t): svn_delta__XML_add replaces svn_delta__XML_new.
----------------------------
revision 1.20
date: 2000/08/31 21:04:05;  author: sussman;  state: Exp;  lines: +3 -0

 Working out bugs in new libsvn_delta organization.  Still a couple of
 buglets to go, but we're no longer crashing.  (knock, knock).

 * deltaparse_test.c:
   (test_add_directory, test_replace_directory):  set *child_baton to
   new directory's name.
   (test_change_file_prop, test_change_dir_prop,
   test_change_dirent_prop):  added new test functions.
   (general):  add nicer indentation in my own callbacks.

 * delta.h:
   (svn_propdelta_t): add new entry_name field to hold name of object
   being patched -- (needed by walker's change_dirent_prop).

 * delta_parse.c:
   (do_begin_prop delta): copy parent stackframe's 'name' field into
   current_propdelta->entity_name.
   (do_prop_delta_callback):  pass this entity_name to change_dirent_prop.
   (do_finish_file):  drop batons *after* calling walker callback.
   (do_finish_directory): drop batons *after* calling walker callback.
   (do_stack_remove):  only validates the stackframe removal now,
   renamed to do_stack_check_remove.
   (xml_handle_end): do the stackframe removal at the *end* of this routine.
----------------------------
revision 1.19
date: 2000/08/31 17:40:16;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_parse): make walker argument `const'.
(svn_delta__digger_t): make walker field `const'.
----------------------------
revision 1.18
date: 2000/08/30 22:52:00;  author: sussman;  state: Exp;  lines: +26 -98

Adopting code in libsvn_delta to use newly revised svn_delta_walk_t
interface.  Test program in tests/ DOES NOT YET WORK.pp

In general, rename all "svn_delta_window_t" references to
"svn_txdelta_window_t", and rename "svn_delta_window_handler_t" to
"svn_txdelta_window_handler_t".  Rename "svn_delta_op_t" to
"svn_txdelta_op_t". Also rename "svn_delta__vcdiff_parser_t" to
"svn_vcdiff_parser_t" when moving from private to public header file,
as well as changing "svn_delta__vcdiff_parse" to "svn_vcdiff_parse".

(Remove all references to pdelta_handler_t, pdelta_parser_t.)
* delta.h: (svn_delta__digger_t):  added file_baton and current_propdelta.
  (svn_delta__stackframe_t): added file_baton.
  (svn_vcdiff_parser_t): moved from private to public header.
  (svn_make_vcdiff_parser): removed, already declared in public
  header.
  (svn_vcdiff_send_window): added so delta_parse can flush vcdiff
  buffer (temporary only, until we get a real vcdiff implementation)
  (svn_propdelta_t): define simpler in-memory prop-delta object.

* svn_delta.h: (svn_vcdiff_parser_t): added from private header.
  (svn_make_vcdiff_parser): added pool arg, to create windows from.

* delta_parse.c: (do_file_callback, do_finish_file): deal with
  file_baton now.
  (do_finish_directory): drop the current dir baton when done.
  (do_begin_textdelta): call apply_textdelta with new file_baton.
  (do_finish_textdelta): scale down to a buffer flush only, no longer
  a walker callback for this.
  (do_prop_delta_callback): added -- calls appropriate walker callback
  for property deltas.
  (do_finish_setprop): deleted, made irrelevant by
  do_prop_delta_callback.
  (do_begin_propdelta, do_begin_setprop, do_delete_prop): major
  rewrite to use new in-memory propdeltas.
  (do_finish_propdelta): deleted, no longer needed.
  (xml_handle_end): add *specific* test for </delete> in the context
  of a <prop-delta> (as opposed to within a <tree-delta>)
  (xml_handle_data): buffer property values internally, no longer need
  a "property parser" in prop_parse.c

* vcdiff_parse.c: (svn_delta__vcdiff_flush_buffer): removed, just put
  the one line into delta_parse.c:do_finish_textdelta.
  (svn_vcdiff_send_window): no longer static -- called by
  do_finish_text_delta to flush final buffer.

* prop_parse.c: deleted, no longer needed.  xml_handle_data can buffer
  property values as they come in from expat.  Much simpler now!

* Makefile.am: remove prop_parse.c


TODO:  rename svn_delta_parse to something more specific.
svn_XML_parse is fine, I think, because it's still a very
general-purpose routine;  it takes an read function and a walk_t
structure.

This would work for a "test" program:

     * reader function presents an XML file;
     * callbacks are a bunch of dorky printf's

It would also work for WC use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate DAV calls

It would also work for WC *internal* use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate *new* XML to put in WC administrative files.
----------------------------
revision 1.17
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.16
date: 2000/08/25 20:09:06;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.15
date: 2000/08/22 21:35:44;  author: sussman;  state: Exp;  lines: +11 -3
- svn_delta_make_xml_parser:  prefix removed, this is a static routine.

- svn_delta__tagmap[] added, rewrote do_stack_remove and set_tagtype
                             accordingly... MUCH cleaner now.

- svn_delta__digger_t:  "stack" argument now represents YOUNGEST
                         stackframe.  Many routines simplified because
                         of this.  (find_stack_newest() removed.)

- do_stack_append: check that the first frame appended is always a
                   tree-delta.
----------------------------
revision 1.14
date: 2000/08/22 04:04:35;  author: kfogel;  state: Exp;  lines: +47 -47
Derive ancestry correctly:

(derive_ancestry): new function, walks up from bottom frame, looking
for ancestry information.

(do_stack_append): use it.

Plus, many changes for namespace protection:

(svn_delta__vcdiff_parser_t): replaces `svn_vcdiff_parser_t'.
(svn_delta__make_vcdiff_parser): replaces `svn_make_vcdiff_parser'.
(svn_delta__vcdiff_parse): replaces `svn_vcdiff_parse'.
(svn_delta__vcdiff_flush_buffer): replaces `svn_vcdiff_flush_buffer'.
(svn_delta__stackframe_t): replaces `svn_delta_stackframe_t'.
(svn_delta__digger_t): replaces `svn_delta_digger_t'.
(svn_delta__pdelta_parser_t): replaces `svn_pdelta_parser_t'.
(svn_delta__make_pdelta_parser): replaces `svn_make_pdelta_parser'.
(svn_delta__pdelta_parse): replaces `svn_pdelta_parse'.
(svn_delta__reset_parser_subpool): replaces `svn_reset_parser_subpool'.
(svn_delta__XML_t): replaces `svn_XML_t', and therefore:

   `svn_delta__XML_treedelta'  replaces   `svn_XML_treedelta'
   `svn_delta__XML_new'        replaces   `svn_XML_new'
   `svn_delta__XML_delete'     replaces   `svn_XML_delete'
   `svn_delta__XML_replace'    replaces   `svn_XML_replace'
   `svn_delta__XML_file'       replaces   `svn_XML_file'
   `svn_delta__XML_dir'        replaces   `svn_XML_dir'
   `svn_delta__XML_textdelta'  replaces   `svn_XML_textdelta'
   `svn_delta__XML_propdelta'  replaces   `svn_XML_propdelta'
   `svn_delta__XML_set'        replaces   `svn_XML_set'
----------------------------
revision 1.13
date: 2000/08/22 00:25:53;  author: kfogel;  state: Exp;  lines: +3 -2
Changes to handle ancestor paths and versions correctly:

(svn_version_t): removed, use `svn_vernum_t' instead.

(svn_delta_stackframe_t): Added `ancestor_path' and `ancestor_version'
fields.

(xml_handle_start): look for "ancestor" and "ver" attributes, set them
in frame if present.

(do_stack_append): validate above new fields, then make them default
to parent's values.

(do_directory_callback): pass correct ancestry information to callbacks.
----------------------------
revision 1.12
date: 2000/08/21 22:15:58;  author: sussman;  state: Exp;  lines: +59 -31
Property-delta stuff at least compiles correctly now.  :)
----------------------------
revision 1.11
date: 2000/08/19 01:17:45;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_digger_t): call it `pdelta_chunk_parser' instead of
`chunk_parser', just to keep things straight.

Pass the new handler_baton, a.k.a. consumer_baton, as appropriate.
----------------------------
revision 1.10
date: 2000/08/19 01:10:36;  author: kfogel;  state: Exp;  lines: +24 -0
Moved `svn_pdelta_chunk_parser_t' from public to internal.

(svn_delta_walker_t): add `handler_baton' argument to
finish_propdelta, finish_textdelta.
----------------------------
revision 1.9
date: 2000/08/19 01:03:47;  author: kfogel;  state: Exp;  lines: +21 -0
Move `svn_vcdiff_parser_t' from public to internal.
----------------------------
revision 1.8
date: 2000/08/18 22:37:21;  author: kfogel;  state: Exp;  lines: +6 -0
Use new delta walker interface.

(Fix a few minor things in the delta library, too: missing prototype
and missing return value.  Everything compiles now.)
----------------------------
revision 1.7
date: 2000/08/18 22:30:31;  author: sussman;  state: Exp;  lines: +3 -0

We made a interface change in svn_walk_t, which then required much
hacking on libsvn_delta.  deltaparse-test now works correctly again.

We're now ready to start filling out prop_parse.c!
----------------------------
revision 1.6
date: 2000/08/18 00:49:54;  author: kfogel;  state: Exp;  lines: +4 -4
Making WC library use the new stuff in delta library:

`svn_text_delta_window_handler_t' replaces `svn_delta_handler_t',
because more specific.  All uses changed.

(svn_delta_op_t): call field `action_code' instead of `op'.  Having
two different things both called "op" was making my brain spin.
All uses changed.

(do_file_callback, do_directory_callback): parenthesize for precedence
clarity.

(svn_vcdiff_parse): increment buffer offset only if ate a byte.

(svn_vcdiff_send_window): check if callback func is null before
calling it.

(check_existence): include APR_READ flag when testing, because
apr_open() always returns APR_EACCES if you fail to request at least
one of reading or writing.  Also, remove the file after testing.

(window_handler): new func in wc library; skeleton, everything will
depend on the baton.

(add_file, replace_file): store window_handler in *handler.

(checkout-test.c:main): be robuster.

(test_read_fn): interpret results of apr_full_read() correctly.
----------------------------
revision 1.5
date: 2000/08/17 19:39:55;  author: sussman;  state: Exp;  lines: +6 -1
vcdiff_parse.c now compiles.
----------------------------
revision 1.4
date: 2000/08/17 17:47:31;  author: sussman;  state: Exp;  lines: +7 -2
Almost ready to start compiling deltaparse-test
----------------------------
revision 1.3
date: 2000/08/16 21:36:36;  author: kfogel;  state: Exp;  lines: +5 -13
(svn_delta_to_vcdiff): removed this hulking remnant of the bad old
caller-pull days.
----------------------------
revision 1.2
date: 2000/08/14 22:23:43;  author: sussman;  state: Exp;  lines: +5 -2
delta_parse.c is basically finished for now;  ready to start fleshing out       dummy vcdiff parser stuff.
----------------------------
revision 1.1
date: 2000/08/14 19:04:16;  author: sussman;  state: Exp;
Moved private stuff from public header to private header.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/delta_parse.c,v
Working file: libsvn_delta/delta_parse.c
head: 1.79
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 79;	selected revisions: 79
description:
----------------------------
revision 1.79
date: 2000/09/01 22:24:56;  author: kfogel;  state: Exp;  lines: +10 -10
Use "add" as the tagname everywhere, instead of "new".
All sample deltas updated, and:

(svn_delta__tagmap): "add" replaces "new".
(svn_delta__XML_t): svn_delta__XML_add replaces svn_delta__XML_new.
----------------------------
revision 1.78
date: 2000/09/01 21:42:58;  author: kfogel;  state: Exp;  lines: +1 -1
(do_file_callback): oops, clean up a leftover from previous change.
----------------------------
revision 1.77
date: 2000/09/01 21:39:36;  author: kfogel;  state: Exp;  lines: +5 -13
(do_directory_callback): avoid initialization issues by eliminating
local var `child_baton' in favor of `&(youngest_frame->child_baton)'.
(do_file_callback): same as above, but for `file_baton'.
----------------------------
revision 1.76
date: 2000/09/01 21:32:45;  author: kfogel;  state: Exp;  lines: +1 -1
(do_begin_textdelta): init window_consumer to NULL, so it's safe even
if the walker callback never sets it.
----------------------------
revision 1.75
date: 2000/09/01 21:26:32;  author: sussman;  state: Exp;  lines: +4 -2

 Adding walk_baton to the only two walker callbacks that didn't
 already receive it.

 * svn_delta.h (svn_delta_walk_t): add walk_baton to finish_directory
   and finish_file.
 * delta_parse.c (do_finish_file, do_finish_directory): add walk_baton
   to callback invocations.
 * deltaparse-test.c (test_finish_file, test_finish_directory): add
   walk_baton argument.
----------------------------
revision 1.74
date: 2000/09/01 21:15:58;  author: sussman;  state: Exp;  lines: +1 -1

 As Karl suggests, change XML to xml in all symbols.

 * svn_delta.h (svn_XML_parse) renamed to svn_xml_parse
 * delta_parse.c  (svn_XML_parse) renamed to svn_xml_parse
 * deltaparse-test.c (svn_XML_parse) renamed to svn_xml_parse
----------------------------
revision 1.73
date: 2000/09/01 21:03:15;  author: kfogel;  state: Exp;  lines: +3 -2
Partially revert my change of 2000-08-31 15:29.  The svn_path library
now side-effects its operands again; all callers changed to account
for this, but not always exactly as they worked before.

* path.c, path.h (add_component_internal): revert to 1.7 behavior, but
also canonicalize result.
(svn_path_add_component_nts, svn_path_add_component): revert to 1.7
behavior.
(svn_path_remove_component): revert to 1.7 behavior and prototype.

* delta_parse.c (maybe_derive_ancestry): dup a new path and add name
to it as a component, to get ancestor.

* adm_files.c: revert to 1.5:
(extend_with_adm_name): back to this name instead of `make_adm_path',
callers changed accordingly.
(chop_admin_name): restored, calls restored as well.

* util.c (svn_wc__ensure_directory): dup a new path, then shorten it,
when recursing.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): dup a new path, then operate on that.

Also, changes to accommodate new names:

* apply_delta.c (svn_wc_apply_delta): it's `svn_XML_parse' now, not
`svn_delta_parse'.
----------------------------
revision 1.72
date: 2000/09/01 16:53:48;  author: sussman;  state: Exp;  lines: +6 -6

 MAJOR RENAME:  svn_delta_parse() is now renamed svn_XML_parse() !

 * svn_delta.h:  (svn_delta_parse): renamed to svn_XML_parse
 * delta_parse.c:  (svn_delta_parse): renamed to svn_XML_parse
 * deltaparse-test.c: (main):  call svn_XML_parse
----------------------------
revision 1.71
date: 2000/09/01 03:36:11;  author: sussman;  state: Exp;  lines: +23 -13

 Fixed property-parsing buglets.  The trick was that xml_handle_end
 shouldn't remove a stackframe right at the outset;  instead it should
 first *validate* that the removal is ok, *then* call walker
 callbacks, *then* remove the stackframe.  I had implemented this
 correctly earlier, but I hadn't updated property-handling to reflect
 this change!

 * foo.delta:  added more prop-deltas to experiement.

 * delta_parse.c:
   (do_begin_propdelta): set current_propdelta fields to empty
   strings, not NULL.
   (do_propdelta_callback): if value is empty string, send NULL to
   callback.  Set name/value to empty (not null) when done.
   (xml_handle_end): check parent frame's tag for property deletions,
   duh.
----------------------------
revision 1.70
date: 2000/08/31 21:04:05;  author: sussman;  state: Exp;  lines: +67 -59

 Working out bugs in new libsvn_delta organization.  Still a couple of
 buglets to go, but we're no longer crashing.  (knock, knock).

 * deltaparse_test.c:
   (test_add_directory, test_replace_directory):  set *child_baton to
   new directory's name.
   (test_change_file_prop, test_change_dir_prop,
   test_change_dirent_prop):  added new test functions.
   (general):  add nicer indentation in my own callbacks.

 * delta.h:
   (svn_propdelta_t): add new entry_name field to hold name of object
   being patched -- (needed by walker's change_dirent_prop).

 * delta_parse.c:
   (do_begin_prop delta): copy parent stackframe's 'name' field into
   current_propdelta->entity_name.
   (do_prop_delta_callback):  pass this entity_name to change_dirent_prop.
   (do_finish_file):  drop batons *after* calling walker callback.
   (do_finish_directory): drop batons *after* calling walker callback.
   (do_stack_remove):  only validates the stackframe removal now,
   renamed to do_stack_check_remove.
   (xml_handle_end): do the stackframe removal at the *end* of this routine.
----------------------------
revision 1.69
date: 2000/08/31 20:29:40;  author: kfogel;  state: Exp;  lines: +13 -12
Change path library to always return non-shared results, instead of
side-effecting its arguments (part of making libsvn_wc insensitive to
whether delta traversal happens depth-first vs breadth-first):

* path.c (add_component_internal): make and return a new string,
canonicalizing it before returning.
(svn_path_add_component_nts, svn_path_add_component): return a new
string.
(svn_path_remove_component): return a new string, and take a new pool
arg therefore.

* delta_parse.c (maybe_derive_ancestry): use new svn_path semantics;
tighten up code and comments.

* adm_files.c (make_adm_path): replaces extend_with_adm_name(), no
longer requires the caller to "unmake" the name later.
Callers changed accordingly.
(chop_admin_name): removed, no longer necessary.

* util.c (svn_wc__ensure_directory): use new svn_path semantics,
improve comments.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): use new svn_path semantics.

Also, changes to accommodate new names:

* apply_delta.c (window_handler): it's "txdelta", not "delta".
----------------------------
revision 1.68
date: 2000/08/31 17:40:16;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_parse): make walker argument `const'.
(svn_delta__digger_t): make walker field `const'.
----------------------------
revision 1.67
date: 2000/08/31 17:21:50;  author: sussman;  state: Exp;  lines: +35 -14
 Adopted deltaparse-test program to new walker interface.  (It works
 now.) Again, `delta_window' is renamed to `txdelta_window'
 everywhere.

 * deltaparse-test.c:
   (main):  take a filename as a command-line argument.
   (test_begin_textdelta): renamed to `test_apply_textdelta'.
   (test_begin_propdelta): removed, different prop-delta system now.
   (test_change_file_prop, test_change_dir_prop,
   test_change_dirent_prop): added.
   (my_fileprop_handler, my_dirprop_handler, my_direntprop_handler):
   deleted.
   (test_add_file, test_replace_file, test_apply_textdelta):  deal
   with new file_baton.

 * delta_parse.c: (xml_handle_end):  after </text-delta>, be sure to
   call svn_vcdiff_parse() with len=0.
   (do_delete_prop): check for initial existence of current_propdelta.
   (do_prop_delta_callback): DUH, check for walker callbacks before
   trying to call them.  :)

 * svn_delta.h: (svn_vcdiff_parse): len is not a pointer.
----------------------------
revision 1.66
date: 2000/08/31 15:10:49;  author: sussman;  state: Exp;  lines: +3 -32
 Still adopting libsvn_delta to new walker interface.

 * vcdiff_parse.c:  (svn_vcdiff_parse): fix `len' argument, it's not a
   pointer;  better comments;  if (len == 0), flush what's left in buffer.
   (svn_vcdiff_send_window): better comments.

 * delta_parse.c:  (xml_handle_data): fix `len' argument, it's not a pointer.
   (svn_finish_textdelta): deleted;  svn_vcdiff_parse flushes buffer instead.
----------------------------
revision 1.65
date: 2000/08/30 22:52:00;  author: sussman;  state: Exp;  lines: +171 -216

Adopting code in libsvn_delta to use newly revised svn_delta_walk_t
interface.  Test program in tests/ DOES NOT YET WORK.pp

In general, rename all "svn_delta_window_t" references to
"svn_txdelta_window_t", and rename "svn_delta_window_handler_t" to
"svn_txdelta_window_handler_t".  Rename "svn_delta_op_t" to
"svn_txdelta_op_t". Also rename "svn_delta__vcdiff_parser_t" to
"svn_vcdiff_parser_t" when moving from private to public header file,
as well as changing "svn_delta__vcdiff_parse" to "svn_vcdiff_parse".

(Remove all references to pdelta_handler_t, pdelta_parser_t.)
* delta.h: (svn_delta__digger_t):  added file_baton and current_propdelta.
  (svn_delta__stackframe_t): added file_baton.
  (svn_vcdiff_parser_t): moved from private to public header.
  (svn_make_vcdiff_parser): removed, already declared in public
  header.
  (svn_vcdiff_send_window): added so delta_parse can flush vcdiff
  buffer (temporary only, until we get a real vcdiff implementation)
  (svn_propdelta_t): define simpler in-memory prop-delta object.

* svn_delta.h: (svn_vcdiff_parser_t): added from private header.
  (svn_make_vcdiff_parser): added pool arg, to create windows from.

* delta_parse.c: (do_file_callback, do_finish_file): deal with
  file_baton now.
  (do_finish_directory): drop the current dir baton when done.
  (do_begin_textdelta): call apply_textdelta with new file_baton.
  (do_finish_textdelta): scale down to a buffer flush only, no longer
  a walker callback for this.
  (do_prop_delta_callback): added -- calls appropriate walker callback
  for property deltas.
  (do_finish_setprop): deleted, made irrelevant by
  do_prop_delta_callback.
  (do_begin_propdelta, do_begin_setprop, do_delete_prop): major
  rewrite to use new in-memory propdeltas.
  (do_finish_propdelta): deleted, no longer needed.
  (xml_handle_end): add *specific* test for </delete> in the context
  of a <prop-delta> (as opposed to within a <tree-delta>)
  (xml_handle_data): buffer property values internally, no longer need
  a "property parser" in prop_parse.c

* vcdiff_parse.c: (svn_delta__vcdiff_flush_buffer): removed, just put
  the one line into delta_parse.c:do_finish_textdelta.
  (svn_vcdiff_send_window): no longer static -- called by
  do_finish_text_delta to flush final buffer.

* prop_parse.c: deleted, no longer needed.  xml_handle_data can buffer
  property values as they come in from expat.  Much simpler now!

* Makefile.am: remove prop_parse.c


TODO:  rename svn_delta_parse to something more specific.
svn_XML_parse is fine, I think, because it's still a very
general-purpose routine;  it takes an read function and a walk_t
structure.

This would work for a "test" program:

     * reader function presents an XML file;
     * callbacks are a bunch of dorky printf's

It would also work for WC use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate DAV calls

It would also work for WC *internal* use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate *new* XML to put in WC administrative files.
----------------------------
revision 1.64
date: 2000/08/30 06:24:16;  author: gstein;  state: Exp;  lines: +14 -9
(svn_delta_parse): fix leaks of Expat parsers
----------------------------
revision 1.63
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.62
date: 2000/08/25 20:09:06;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.61
date: 2000/08/22 21:35:44;  author: sussman;  state: Exp;  lines: +63 -96
- svn_delta_make_xml_parser:  prefix removed, this is a static routine.

- svn_delta__tagmap[] added, rewrote do_stack_remove and set_tagtype
                             accordingly... MUCH cleaner now.

- svn_delta__digger_t:  "stack" argument now represents YOUNGEST
                         stackframe.  Many routines simplified because
                         of this.  (find_stack_newest() removed.)

- do_stack_append: check that the first frame appended is always a
                   tree-delta.
----------------------------
revision 1.60
date: 2000/08/22 20:05:49;  author: kfogel;  state: Exp;  lines: +1 -2
(maybe_derive_ancestry): declare p in the scope where it is used.
----------------------------
revision 1.59
date: 2000/08/22 20:04:34;  author: kfogel;  state: Exp;  lines: +2 -4
(maybe_derive_ancestry): eliminate first_frame argument; we don't need
it anymore.  Caller changed.
----------------------------
revision 1.58
date: 2000/08/22 19:55:05;  author: kfogel;  state: Exp;  lines: +2 -1
(SVN_PATH_LOCAL_STYLE, SVN_PATH_REPOS_STYLE): new #defines.

(svn_path_remove_component, svn_path_add_component,
svn_path_add_component_nts, add_path_internal): use them.

All callers changed.

This gives an interface handling both local paths (for files) and
repository paths (for ancestry), though the implementation is all
Unix-style right now, which is the same as repository style.
----------------------------
revision 1.57
date: 2000/08/22 17:30:30;  author: kfogel;  state: Exp;  lines: +62 -16
Put mini-library for path manipulation into libsvn_subr.

(maybe_derive_ancestor): always set to a full ancestry path, derived
from both ancestors and names.
----------------------------
revision 1.56
date: 2000/08/22 16:46:52;  author: sussman;  state: Exp;  lines: +25 -3

 * when printing errors, specify if svn-specific
 * fixed prop-delta handling routine
 * fixed prop-delta "delete" validation logic

Prop-deltas seem to work correctly now!
----------------------------
revision 1.55
date: 2000/08/22 04:04:35;  author: kfogel;  state: Exp;  lines: +148 -125
Derive ancestry correctly:

(derive_ancestry): new function, walks up from bottom frame, looking
for ancestry information.

(do_stack_append): use it.

Plus, many changes for namespace protection:

(svn_delta__vcdiff_parser_t): replaces `svn_vcdiff_parser_t'.
(svn_delta__make_vcdiff_parser): replaces `svn_make_vcdiff_parser'.
(svn_delta__vcdiff_parse): replaces `svn_vcdiff_parse'.
(svn_delta__vcdiff_flush_buffer): replaces `svn_vcdiff_flush_buffer'.
(svn_delta__stackframe_t): replaces `svn_delta_stackframe_t'.
(svn_delta__digger_t): replaces `svn_delta_digger_t'.
(svn_delta__pdelta_parser_t): replaces `svn_pdelta_parser_t'.
(svn_delta__make_pdelta_parser): replaces `svn_make_pdelta_parser'.
(svn_delta__pdelta_parse): replaces `svn_pdelta_parse'.
(svn_delta__reset_parser_subpool): replaces `svn_reset_parser_subpool'.
(svn_delta__XML_t): replaces `svn_XML_t', and therefore:

   `svn_delta__XML_treedelta'  replaces   `svn_XML_treedelta'
   `svn_delta__XML_new'        replaces   `svn_XML_new'
   `svn_delta__XML_delete'     replaces   `svn_XML_delete'
   `svn_delta__XML_replace'    replaces   `svn_XML_replace'
   `svn_delta__XML_file'       replaces   `svn_XML_file'
   `svn_delta__XML_dir'        replaces   `svn_XML_dir'
   `svn_delta__XML_textdelta'  replaces   `svn_XML_textdelta'
   `svn_delta__XML_propdelta'  replaces   `svn_XML_propdelta'
   `svn_delta__XML_set'        replaces   `svn_XML_set'
----------------------------
revision 1.54
date: 2000/08/22 00:25:53;  author: kfogel;  state: Exp;  lines: +71 -31
Changes to handle ancestor paths and versions correctly:

(svn_version_t): removed, use `svn_vernum_t' instead.

(svn_delta_stackframe_t): Added `ancestor_path' and `ancestor_version'
fields.

(xml_handle_start): look for "ancestor" and "ver" attributes, set them
in frame if present.

(do_stack_append): validate above new fields, then make them default
to parent's values.

(do_directory_callback): pass correct ancestry information to callbacks.
----------------------------
revision 1.53
date: 2000/08/21 22:43:13;  author: sussman;  state: Exp;  lines: +16 -4
save state
----------------------------
revision 1.52
date: 2000/08/21 22:15:59;  author: sussman;  state: Exp;  lines: +212 -41
Property-delta stuff at least compiles correctly now.  :)
----------------------------
revision 1.51
date: 2000/08/19 01:17:45;  author: kfogel;  state: Exp;  lines: +18 -7
(svn_delta_digger_t): call it `pdelta_chunk_parser' instead of
`chunk_parser', just to keep things straight.

Pass the new handler_baton, a.k.a. consumer_baton, as appropriate.
----------------------------
revision 1.50
date: 2000/08/18 23:59:59;  author: kfogel;  state: Exp;  lines: +43 -47
Don't drop those batons.
----------------------------
revision 1.49
date: 2000/08/18 22:42:45;  author: kfogel;  state: Exp;  lines: +16 -16
Use `ancestor_path' and `ancestor_version', instead of `base_path' and
`base_version', because less likely to cause confusion.
----------------------------
revision 1.48
date: 2000/08/18 22:30:31;  author: sussman;  state: Exp;  lines: +144 -35

We made a interface change in svn_walk_t, which then required much
hacking on libsvn_delta.  deltaparse-test now works correctly again.

We're now ready to start filling out prop_parse.c!
----------------------------
revision 1.47
date: 2000/08/18 17:09:52;  author: kfogel;  state: Exp;  lines: +2 -5
Added copyright info, load svn-dev.el.

This commit is also mainly to reproduce a problem with commitlogging.
----------------------------
revision 1.46
date: 2000/08/18 00:49:54;  author: kfogel;  state: Exp;  lines: +7 -7
Making WC library use the new stuff in delta library:

`svn_text_delta_window_handler_t' replaces `svn_delta_handler_t',
because more specific.  All uses changed.

(svn_delta_op_t): call field `action_code' instead of `op'.  Having
two different things both called "op" was making my brain spin.
All uses changed.

(do_file_callback, do_directory_callback): parenthesize for precedence
clarity.

(svn_vcdiff_parse): increment buffer offset only if ate a byte.

(svn_vcdiff_send_window): check if callback func is null before
calling it.

(check_existence): include APR_READ flag when testing, because
apr_open() always returns APR_EACCES if you fail to request at least
one of reading or writing.  Also, remove the file after testing.

(window_handler): new func in wc library; skeleton, everything will
depend on the baton.

(add_file, replace_file): store window_handler in *handler.

(checkout-test.c:main): be robuster.

(test_read_fn): interpret results of apr_full_read() correctly.
----------------------------
revision 1.45
date: 2000/08/17 22:45:15;  author: sussman;  state: Exp;  lines: +5 -8
AHA... deltaparse-test actually WORKS.  Time for a beer.
----------------------------
revision 1.44
date: 2000/08/17 19:18:16;  author: sussman;  state: Exp;  lines: +2 -1
compiles now, typo.
----------------------------
revision 1.43
date: 2000/08/17 17:47:31;  author: sussman;  state: Exp;  lines: +12 -1
Almost ready to start compiling deltaparse-test
----------------------------
revision 1.42
date: 2000/08/16 23:01:07;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.41
date: 2000/08/16 21:38:31;  author: kfogel;  state: Exp;  lines: +54 -43
You are in a maze of twisty compilation errors, each slightly
different.
----------------------------
revision 1.40
date: 2000/08/16 16:37:43;  author: kfogel;  state: Exp;  lines: +35 -18
(get_attribute_value): completed.  Never errors now, just returns the
value or NULL.

All callers changed.
----------------------------
revision 1.39
date: 2000/08/14 22:23:43;  author: sussman;  state: Exp;  lines: +246 -52
delta_parse.c is basically finished for now;  ready to start fleshing out       dummy vcdiff parser stuff.
----------------------------
revision 1.38
date: 2000/08/14 19:04:16;  author: sussman;  state: Exp;  lines: +4 -4
Moved private stuff from public header to private header.
----------------------------
revision 1.37
date: 2000/08/14 17:58:53;  author: sussman;  state: Exp;  lines: +145 -12

Merged jimb's walker structure into svn_delta.h, jimb's own header is
not (any longer) relevant.  :)

Busy filling out parser's routines to call various svn_walker_t callbacks.
----------------------------
revision 1.36
date: 2000/08/11 20:57:03;  author: sussman;  state: Exp;  lines: +146 -130
Entire interface rewritten, in process of flushing out specific events now.
----------------------------
revision 1.35
date: 2000/08/11 17:50:19;  author: sussman;  state: Exp;  lines: +60 -198
Tweak validity check.
----------------------------
revision 1.34
date: 2000/08/11 16:37:36;  author: sussman;  state: Exp;  lines: +112 -89
Split telescope_delta_stack() into two routines, for better clarity.
They have different validity-checking logic, and different execution
logic.
----------------------------
revision 1.33
date: 2000/08/11 01:07:28;  author: sussman;  state: Exp;  lines: +83 -75

Saving work... in the middle of huge rewrite, a big mess.
I'm doing this because of repeated power outages here at home.
(I need to buy a UPS *now*)
----------------------------
revision 1.32
date: 2000/08/10 22:01:37;  author: sussman;  state: Exp;  lines: +95 -62
Still rewriting parser.
----------------------------
revision 1.31
date: 2000/08/10 21:10:22;  author: sussman;  state: Exp;  lines: +9 -1

New error-returning strategy:

If we encounter a validation error while inside an expat callback,

	1.  store the error in our digger structure
	2.  immediately set all of the expat callbacks to NULL

Item #2 causes XML_Parse() to finish its chunk rather quickly, whereby
our main parser loop then notices the existence of #1 and returns.
----------------------------
revision 1.30
date: 2000/08/10 21:03:47;  author: sussman;  state: Exp;  lines: +107 -17
In process of rewriting parser machinery.
----------------------------
revision 1.29
date: 2000/08/09 04:34:44;  author: sussman;  state: Exp;  lines: +35 -12
temporarily report malformed XML errors
----------------------------
revision 1.28
date: 2000/08/09 00:24:28;  author: sussman;  state: Exp;  lines: +1 -0
Duh, don't forget to set previous ptr after appending stackframe.
----------------------------
revision 1.27
date: 2000/08/08 23:10:36;  author: kfogel;  state: Exp;  lines: +67 -63
The usual strcmp() mishap.
----------------------------
revision 1.26
date: 2000/08/08 21:57:31;  author: kfogel;  state: Exp;  lines: +6 -6
Fix allocation size buglets.
----------------------------
revision 1.25
date: 2000/08/08 19:29:29;  author: kfogel;  state: Exp;  lines: +1 -1
Recurse, or, as Noah Friedman likes to say, "recur".
----------------------------
revision 1.24
date: 2000/08/08 18:41:21;  author: kfogel;  state: Exp;  lines: +9 -16
Allow null callbacks.
----------------------------
revision 1.23
date: 2000/08/08 17:34:03;  author: sussman;  state: Exp;  lines: +44 -43
Delta library compiles now.
----------------------------
revision 1.22
date: 2000/08/08 16:33:01;  author: sussman;  state: Exp;  lines: +23 -34

Make all routines static, except for one public interface:
svn_delta_make_xml_parser()
----------------------------
revision 1.21
date: 2000/08/08 00:30:50;  author: sussman;  state: Exp;  lines: +106 -14
Added type-checking to frame append/unpend.
----------------------------
revision 1.20
date: 2000/08/07 23:35:57;  author: kfogel;  state: Exp;  lines: +1 -28
(svn_walk_delta): gone.  No need for a generic delta walker -- it's so
simple, it'll be clearer to write out the logic each time and avoid an
awkward callback mechanism.
----------------------------
revision 1.19
date: 2000/08/07 22:44:11;  author: sussman;  state: Exp;  lines: +43 -56
Finished stackframe rewrite... much cleaner.
----------------------------
revision 1.18
date: 2000/08/07 22:04:13;  author: sussman;  state: Exp;  lines: +88 -312
in process of rewriting w/ stack frames
----------------------------
revision 1.17
date: 2000/08/05 23:35:11;  author: sussman;  state: Exp;  lines: +28 -9
Filled in some constructors.
----------------------------
revision 1.16
date: 2000/08/05 23:19:03;  author: sussman;  state: Exp;  lines: +122 -108

Finished 2nd draft (big rewrite) of:

 svn_find_delta_bottom()
 svn_starpend_delta()
 svn_xml_handle_start()
 svn_xml_handle_end()
----------------------------
revision 1.15
date: 2000/08/05 22:56:01;  author: kfogel;  state: Exp;  lines: +11 -0
Codus Interruptus, saving state:

Implementing svn_walk_delta() before implementing delta_to_path()
before implementing update_dir_handler().

Someone remind me to read this log entry to figure what to do next.

(svn_walk_delta): in progress.

(update_dir_handler): waiting on above and delta_to_path().
----------------------------
revision 1.14
date: 2000/08/05 22:40:58;  author: sussman;  state: Exp;  lines: +24 -32
Factorization in progress.
----------------------------
revision 1.13
date: 2000/08/05 22:19:51;  author: sussman;  state: Exp;  lines: +53 -3
Fleshed out most of svn_xml_handle_end().
----------------------------
revision 1.12
date: 2000/08/05 22:03:25;  author: sussman;  state: Exp;  lines: +142 -64
Finished svn_starpend_delta() -- appends object to bottom of delta, or
deletes bottommost object in delta.

Uses new version of svn_find_delta_bottom(), which now returns both
the bottommost *and* penultimate objects in the delta (needed for
deletion.)
----------------------------
revision 1.11
date: 2000/08/05 21:07:40;  author: sussman;  state: Exp;  lines: +126 -112

Broke apart recursive delta cdr() logic from appending logic.
----------------------------
revision 1.10
date: 2000/08/05 20:48:20;  author: kfogel;  state: Exp;  lines: +72 -0
(svn_delta_make_xml_parser): new constructor function (rename of
svn_xml_make_parser).

Use it in test program.
----------------------------
revision 1.9
date: 2000/08/05 17:56:19;  author: sussman;  state: Exp;  lines: +17 -64
Remove useless constructors. :)
----------------------------
revision 1.8
date: 2000/08/05 17:41:31;  author: kfogel;  state: Exp;  lines: +3 -0
Made note about possible context optimization for data handler
callback.
----------------------------
revision 1.7
date: 2000/08/05 17:34:30;  author: kfogel;  state: Exp;  lines: +21 -32
Working with Ben:

Got rid of `svn_ancestor_t' -- it was only used for one thing, so just
hold its fields inline.

Say `this_edit_content' instead of `new_edit_content', to avoid
implying that the type of the edit is `new'.

Point out some remaining bookkeeping tasks in comments.

Got rid of some old debugging code.
----------------------------
revision 1.6
date: 2000/08/05 16:53:18;  author: sussman;  state: Exp;  lines: +99 -14

First draft of svn_xml_startElement().
----------------------------
revision 1.5
date: 2000/08/05 16:17:35;  author: sussman;  state: Exp;  lines: +73 -18

Filling out main expat callback.
----------------------------
revision 1.4
date: 2000/08/05 03:44:16;  author: sussman;  state: Exp;  lines: +125 -6

1. Defined new enum svn_XML_elt_t, describing different XML elts we may
   encounter when building a delta.

2. Defined svn_append_to_delta(delta, object, svn_XML_elt_t), which
   traverses a delta-in-progress recursively and attaches object to the tip.

3. Started filling in main expat "open paren" callback with above routine.
----------------------------
revision 1.3
date: 2000/08/04 22:42:43;  author: kfogel;  state: Exp;  lines: +59 -4
Start constructors for delta components; we'll need destructors, too.
----------------------------
revision 1.2
date: 2000/08/04 21:40:41;  author: sussman;  state: Exp;  lines: +32 -18
Started XML-to-Delta callback system.
----------------------------
revision 1.1
date: 2000/08/04 19:23:57;  author: sussman;  state: Exp;
moving files around
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/Attic/delta_parse.h,v
Working file: libsvn_delta/delta_parse.h
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/08 16:35:30;  author: sussman;  state: dead;  lines: +0 -0
Don't need intra-library header, but we do need automake.
----------------------------
revision 1.2
date: 2000/08/05 17:56:19;  author: sussman;  state: Exp;  lines: +0 -33
Remove useless constructors. :)
----------------------------
revision 1.1
date: 2000/08/05 16:17:35;  author: sussman;  state: Exp;

Filling out main expat callback.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/Attic/prop_parse.c,v
Working file: libsvn_delta/prop_parse.c
head: 1.8
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 8;	selected revisions: 8
description:
----------------------------
revision 1.8
date: 2000/08/31 15:11:23;  author: sussman;  state: dead;  lines: +0 -0
prop_parse.c no longer needed; much simpler model now.
----------------------------
revision 1.7
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.6
date: 2000/08/25 20:09:06;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.5
date: 2000/08/22 16:46:52;  author: sussman;  state: Exp;  lines: +7 -13

 * when printing errors, specify if svn-specific
 * fixed prop-delta handling routine
 * fixed prop-delta "delete" validation logic

Prop-deltas seem to work correctly now!
----------------------------
revision 1.4
date: 2000/08/22 04:04:35;  author: kfogel;  state: Exp;  lines: +12 -12
Derive ancestry correctly:

(derive_ancestry): new function, walks up from bottom frame, looking
for ancestry information.

(do_stack_append): use it.

Plus, many changes for namespace protection:

(svn_delta__vcdiff_parser_t): replaces `svn_vcdiff_parser_t'.
(svn_delta__make_vcdiff_parser): replaces `svn_make_vcdiff_parser'.
(svn_delta__vcdiff_parse): replaces `svn_vcdiff_parse'.
(svn_delta__vcdiff_flush_buffer): replaces `svn_vcdiff_flush_buffer'.
(svn_delta__stackframe_t): replaces `svn_delta_stackframe_t'.
(svn_delta__digger_t): replaces `svn_delta_digger_t'.
(svn_delta__pdelta_parser_t): replaces `svn_pdelta_parser_t'.
(svn_delta__make_pdelta_parser): replaces `svn_make_pdelta_parser'.
(svn_delta__pdelta_parse): replaces `svn_pdelta_parse'.
(svn_delta__reset_parser_subpool): replaces `svn_reset_parser_subpool'.
(svn_delta__XML_t): replaces `svn_XML_t', and therefore:

   `svn_delta__XML_treedelta'  replaces   `svn_XML_treedelta'
   `svn_delta__XML_new'        replaces   `svn_XML_new'
   `svn_delta__XML_delete'     replaces   `svn_XML_delete'
   `svn_delta__XML_replace'    replaces   `svn_XML_replace'
   `svn_delta__XML_file'       replaces   `svn_XML_file'
   `svn_delta__XML_dir'        replaces   `svn_XML_dir'
   `svn_delta__XML_textdelta'  replaces   `svn_XML_textdelta'
   `svn_delta__XML_propdelta'  replaces   `svn_XML_propdelta'
   `svn_delta__XML_set'        replaces   `svn_XML_set'
----------------------------
revision 1.3
date: 2000/08/21 22:15:59;  author: sussman;  state: Exp;  lines: +76 -9
Property-delta stuff at least compiles correctly now.  :)
----------------------------
revision 1.2
date: 2000/08/18 22:37:21;  author: kfogel;  state: Exp;  lines: +1 -0
Use new delta walker interface.

(Fix a few minor things in the delta library, too: missing prototype
and missing return value.  Everything compiles now.)
----------------------------
revision 1.1
date: 2000/08/18 22:30:31;  author: sussman;  state: Exp;

We made a interface change in svn_walk_t, which then required much
hacking on libsvn_delta.  deltaparse-test now works correctly again.

We're now ready to start filling out prop_parse.c!
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/vcdiff_parse.c,v
Working file: libsvn_delta/vcdiff_parse.c
head: 1.11
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 11;	selected revisions: 11
description:
----------------------------
revision 1.11
date: 2000/08/31 15:10:49;  author: sussman;  state: Exp;  lines: +26 -14
 Still adopting libsvn_delta to new walker interface.

 * vcdiff_parse.c:  (svn_vcdiff_parse): fix `len' argument, it's not a
   pointer;  better comments;  if (len == 0), flush what's left in buffer.
   (svn_vcdiff_send_window): better comments.

 * delta_parse.c:  (xml_handle_data): fix `len' argument, it's not a pointer.
   (svn_finish_textdelta): deleted;  svn_vcdiff_parse flushes buffer instead.
----------------------------
revision 1.10
date: 2000/08/30 22:52:00;  author: sussman;  state: Exp;  lines: +20 -38

Adopting code in libsvn_delta to use newly revised svn_delta_walk_t
interface.  Test program in tests/ DOES NOT YET WORK.pp

In general, rename all "svn_delta_window_t" references to
"svn_txdelta_window_t", and rename "svn_delta_window_handler_t" to
"svn_txdelta_window_handler_t".  Rename "svn_delta_op_t" to
"svn_txdelta_op_t". Also rename "svn_delta__vcdiff_parser_t" to
"svn_vcdiff_parser_t" when moving from private to public header file,
as well as changing "svn_delta__vcdiff_parse" to "svn_vcdiff_parse".

(Remove all references to pdelta_handler_t, pdelta_parser_t.)
* delta.h: (svn_delta__digger_t):  added file_baton and current_propdelta.
  (svn_delta__stackframe_t): added file_baton.
  (svn_vcdiff_parser_t): moved from private to public header.
  (svn_make_vcdiff_parser): removed, already declared in public
  header.
  (svn_vcdiff_send_window): added so delta_parse can flush vcdiff
  buffer (temporary only, until we get a real vcdiff implementation)
  (svn_propdelta_t): define simpler in-memory prop-delta object.

* svn_delta.h: (svn_vcdiff_parser_t): added from private header.
  (svn_make_vcdiff_parser): added pool arg, to create windows from.

* delta_parse.c: (do_file_callback, do_finish_file): deal with
  file_baton now.
  (do_finish_directory): drop the current dir baton when done.
  (do_begin_textdelta): call apply_textdelta with new file_baton.
  (do_finish_textdelta): scale down to a buffer flush only, no longer
  a walker callback for this.
  (do_prop_delta_callback): added -- calls appropriate walker callback
  for property deltas.
  (do_finish_setprop): deleted, made irrelevant by
  do_prop_delta_callback.
  (do_begin_propdelta, do_begin_setprop, do_delete_prop): major
  rewrite to use new in-memory propdeltas.
  (do_finish_propdelta): deleted, no longer needed.
  (xml_handle_end): add *specific* test for </delete> in the context
  of a <prop-delta> (as opposed to within a <tree-delta>)
  (xml_handle_data): buffer property values internally, no longer need
  a "property parser" in prop_parse.c

* vcdiff_parse.c: (svn_delta__vcdiff_flush_buffer): removed, just put
  the one line into delta_parse.c:do_finish_textdelta.
  (svn_vcdiff_send_window): no longer static -- called by
  do_finish_text_delta to flush final buffer.

* prop_parse.c: deleted, no longer needed.  xml_handle_data can buffer
  property values as they come in from expat.  Much simpler now!

* Makefile.am: remove prop_parse.c


TODO:  rename svn_delta_parse to something more specific.
svn_XML_parse is fine, I think, because it's still a very
general-purpose routine;  it takes an read function and a walk_t
structure.

This would work for a "test" program:

     * reader function presents an XML file;
     * callbacks are a bunch of dorky printf's

It would also work for WC use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate DAV calls

It would also work for WC *internal* use:

     * reader function implicitly crawls the working copy, assembling
       an XML stream on-the-fly
     * callbacks generate *new* XML to put in WC administrative files.
----------------------------
revision 1.9
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.8
date: 2000/08/25 20:09:06;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.7
date: 2000/08/22 04:04:35;  author: kfogel;  state: Exp;  lines: +16 -15
Derive ancestry correctly:

(derive_ancestry): new function, walks up from bottom frame, looking
for ancestry information.

(do_stack_append): use it.

Plus, many changes for namespace protection:

(svn_delta__vcdiff_parser_t): replaces `svn_vcdiff_parser_t'.
(svn_delta__make_vcdiff_parser): replaces `svn_make_vcdiff_parser'.
(svn_delta__vcdiff_parse): replaces `svn_vcdiff_parse'.
(svn_delta__vcdiff_flush_buffer): replaces `svn_vcdiff_flush_buffer'.
(svn_delta__stackframe_t): replaces `svn_delta_stackframe_t'.
(svn_delta__digger_t): replaces `svn_delta_digger_t'.
(svn_delta__pdelta_parser_t): replaces `svn_pdelta_parser_t'.
(svn_delta__make_pdelta_parser): replaces `svn_make_pdelta_parser'.
(svn_delta__pdelta_parse): replaces `svn_pdelta_parse'.
(svn_delta__reset_parser_subpool): replaces `svn_reset_parser_subpool'.
(svn_delta__XML_t): replaces `svn_XML_t', and therefore:

   `svn_delta__XML_treedelta'  replaces   `svn_XML_treedelta'
   `svn_delta__XML_new'        replaces   `svn_XML_new'
   `svn_delta__XML_delete'     replaces   `svn_XML_delete'
   `svn_delta__XML_replace'    replaces   `svn_XML_replace'
   `svn_delta__XML_file'       replaces   `svn_XML_file'
   `svn_delta__XML_dir'        replaces   `svn_XML_dir'
   `svn_delta__XML_textdelta'  replaces   `svn_XML_textdelta'
   `svn_delta__XML_propdelta'  replaces   `svn_XML_propdelta'
   `svn_delta__XML_set'        replaces   `svn_XML_set'
----------------------------
revision 1.6
date: 2000/08/21 22:15:59;  author: sussman;  state: Exp;  lines: +8 -22
Property-delta stuff at least compiles correctly now.  :)
----------------------------
revision 1.5
date: 2000/08/19 01:31:10;  author: kfogel;  state: Exp;  lines: +2 -2
Fill out the skeleton tree with files and their contents.

(svn_delta_window_t): call it `pool', not `my_pool'.  All references
changed.
----------------------------
revision 1.4
date: 2000/08/18 00:49:54;  author: kfogel;  state: Exp;  lines: +12 -12
Making WC library use the new stuff in delta library:

`svn_text_delta_window_handler_t' replaces `svn_delta_handler_t',
because more specific.  All uses changed.

(svn_delta_op_t): call field `action_code' instead of `op'.  Having
two different things both called "op" was making my brain spin.
All uses changed.

(do_file_callback, do_directory_callback): parenthesize for precedence
clarity.

(svn_vcdiff_parse): increment buffer offset only if ate a byte.

(svn_vcdiff_send_window): check if callback func is null before
calling it.

(check_existence): include APR_READ flag when testing, because
apr_open() always returns APR_EACCES if you fail to request at least
one of reading or writing.  Also, remove the file after testing.

(window_handler): new func in wc library; skeleton, everything will
depend on the baton.

(add_file, replace_file): store window_handler in *handler.

(checkout-test.c:main): be robuster.

(test_read_fn): interpret results of apr_full_read() correctly.
----------------------------
revision 1.3
date: 2000/08/17 22:45:15;  author: sussman;  state: Exp;  lines: +1 -0
AHA... deltaparse-test actually WORKS.  Time for a beer.
----------------------------
revision 1.2
date: 2000/08/17 19:39:55;  author: sussman;  state: Exp;  lines: +5 -7
vcdiff_parse.c now compiles.
----------------------------
revision 1.1
date: 2000/08/17 17:47:31;  author: sussman;  state: Exp;
Almost ready to start compiling deltaparse-test
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/tests/.cvsignore,v
Working file: libsvn_delta/tests/.cvsignore
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/25 21:26:23;  author: jimb;  state: Exp;  lines: +2 -0
Add .deps and .libs directories to the ignore lists.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.1
date: 2000/08/08 17:35:38;  author: kfogel;  state: Exp;
Ignore the usual stuff.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/tests/Makefile.am,v
Working file: libsvn_delta/tests/Makefile.am
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/30 03:17:07;  author: gstein;  state: Exp;  lines: +1 -1
switch expat-lite over to automake (updates tests for libsvn_delta and
    libsvn_wc to use libexpat.la now)
add some initial work on config/build for Neon
----------------------------
revision 1.1
date: 2000/08/17 22:49:49;  author: sussman;  state: Exp;
oops, forgot this file
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/tests/deltaparse-test.c,v
Working file: libsvn_delta/tests/deltaparse-test.c
head: 1.26
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 26;	selected revisions: 26
description:
----------------------------
revision 1.26
date: 2000/09/01 22:12:21;  author: sussman;  state: Exp;  lines: +75 -12

 * deltaparse-test.c:  (print_spaces, inc_spaces, dec_spaces) added.
   (all other routines): above calls added, for pretty spacing of output.
----------------------------
revision 1.25
date: 2000/09/01 21:26:32;  author: sussman;  state: Exp;  lines: +4 -4

 Adding walk_baton to the only two walker callbacks that didn't
 already receive it.

 * svn_delta.h (svn_delta_walk_t): add walk_baton to finish_directory
   and finish_file.
 * delta_parse.c (do_finish_file, do_finish_directory): add walk_baton
   to callback invocations.
 * deltaparse-test.c (test_finish_file, test_finish_directory): add
   walk_baton argument.
----------------------------
revision 1.24
date: 2000/09/01 21:15:58;  author: sussman;  state: Exp;  lines: +1 -1

 As Karl suggests, change XML to xml in all symbols.

 * svn_delta.h (svn_XML_parse) renamed to svn_xml_parse
 * delta_parse.c  (svn_XML_parse) renamed to svn_xml_parse
 * deltaparse-test.c (svn_XML_parse) renamed to svn_xml_parse
----------------------------
revision 1.23
date: 2000/09/01 16:53:49;  author: sussman;  state: Exp;  lines: +5 -5

 MAJOR RENAME:  svn_delta_parse() is now renamed svn_XML_parse() !

 * svn_delta.h:  (svn_delta_parse): renamed to svn_XML_parse
 * delta_parse.c:  (svn_delta_parse): renamed to svn_XML_parse
 * deltaparse-test.c: (main):  call svn_XML_parse
----------------------------
revision 1.22
date: 2000/08/31 21:04:06;  author: sussman;  state: Exp;  lines: +78 -10

 Working out bugs in new libsvn_delta organization.  Still a couple of
 buglets to go, but we're no longer crashing.  (knock, knock).

 * deltaparse_test.c:
   (test_add_directory, test_replace_directory):  set *child_baton to
   new directory's name.
   (test_change_file_prop, test_change_dir_prop,
   test_change_dirent_prop):  added new test functions.
   (general):  add nicer indentation in my own callbacks.

 * delta.h:
   (svn_propdelta_t): add new entry_name field to hold name of object
   being patched -- (needed by walker's change_dirent_prop).

 * delta_parse.c:
   (do_begin_prop delta): copy parent stackframe's 'name' field into
   current_propdelta->entity_name.
   (do_prop_delta_callback):  pass this entity_name to change_dirent_prop.
   (do_finish_file):  drop batons *after* calling walker callback.
   (do_finish_directory): drop batons *after* calling walker callback.
   (do_stack_remove):  only validates the stackframe removal now,
   renamed to do_stack_check_remove.
   (xml_handle_end): do the stackframe removal at the *end* of this routine.
----------------------------
revision 1.21
date: 2000/08/31 17:21:50;  author: sussman;  state: Exp;  lines: +64 -153
 Adopted deltaparse-test program to new walker interface.  (It works
 now.) Again, `delta_window' is renamed to `txdelta_window'
 everywhere.

 * deltaparse-test.c:
   (main):  take a filename as a command-line argument.
   (test_begin_textdelta): renamed to `test_apply_textdelta'.
   (test_begin_propdelta): removed, different prop-delta system now.
   (test_change_file_prop, test_change_dir_prop,
   test_change_dirent_prop): added.
   (my_fileprop_handler, my_dirprop_handler, my_direntprop_handler):
   deleted.
   (test_add_file, test_replace_file, test_apply_textdelta):  deal
   with new file_baton.

 * delta_parse.c: (xml_handle_end):  after </text-delta>, be sure to
   call svn_vcdiff_parse() with len=0.
   (do_delete_prop): check for initial existence of current_propdelta.
   (do_prop_delta_callback): DUH, check for walker callbacks before
   trying to call them.  :)

 * svn_delta.h: (svn_vcdiff_parse): len is not a pointer.
----------------------------
revision 1.20
date: 2000/08/22 16:52:17;  author: sussman;  state: Exp;  lines: +72 -0
test program correctly recognizes prop-deltas on files, dirs, and dirents.
----------------------------
revision 1.19
date: 2000/08/22 16:46:53;  author: sussman;  state: Exp;  lines: +18 -4

 * when printing errors, specify if svn-specific
 * fixed prop-delta handling routine
 * fixed prop-delta "delete" validation logic

Prop-deltas seem to work correctly now!
----------------------------
revision 1.18
date: 2000/08/21 22:43:14;  author: sussman;  state: Exp;  lines: +47 -1
save state
----------------------------
revision 1.17
date: 2000/08/21 22:15:59;  author: sussman;  state: Exp;  lines: +0 -3
Property-delta stuff at least compiles correctly now.  :)
----------------------------
revision 1.16
date: 2000/08/18 22:42:47;  author: kfogel;  state: Exp;  lines: +12 -12
Use `ancestor_path' and `ancestor_version', instead of `base_path' and
`base_version', because less likely to cause confusion.
----------------------------
revision 1.15
date: 2000/08/18 22:30:32;  author: sussman;  state: Exp;  lines: +20 -19

We made a interface change in svn_walk_t, which then required much
hacking on libsvn_delta.  deltaparse-test now works correctly again.

We're now ready to start filling out prop_parse.c!
----------------------------
revision 1.14
date: 2000/08/18 17:06:44;  author: kfogel;  state: Exp;  lines: +0 -3
Ignore this commit -- only whitespace changes, done mainly to
reproduce a problem with commitlogging.
----------------------------
revision 1.13
date: 2000/08/18 16:44:26;  author: sussman;  state: Exp;  lines: +2 -4
Remove all cases of svn_string_print().

Remove compile warning on deltaparse-test.c.
----------------------------
revision 1.12
date: 2000/08/18 16:10:00;  author: kfogel;  state: Exp;  lines: +6 -13
(svn_string_dup2cstring, svn_string_compare_2cstring): removed, no
need for these funcs.

Rewrote test suite to exercise new functionality, and display results
readably.
----------------------------
revision 1.11
date: 2000/08/18 14:41:59;  author: kfogel;  state: Exp;  lines: +10 -10
(svn_string_dup2cstring, svn_string_ncreate, svn_string_appendbytes,
svn_string_chop): o-b-o-e repairs, thanks to Greg Stein
<gstein@lyra.org> for catching them early.

(svn_string_dup2cstring): new name for `svn_string_2cstring'.
----------------------------
revision 1.10
date: 2000/08/18 00:49:56;  author: kfogel;  state: Exp;  lines: +5 -5
Making WC library use the new stuff in delta library:

`svn_text_delta_window_handler_t' replaces `svn_delta_handler_t',
because more specific.  All uses changed.

(svn_delta_op_t): call field `action_code' instead of `op'.  Having
two different things both called "op" was making my brain spin.
All uses changed.

(do_file_callback, do_directory_callback): parenthesize for precedence
clarity.

(svn_vcdiff_parse): increment buffer offset only if ate a byte.

(svn_vcdiff_send_window): check if callback func is null before
calling it.

(check_existence): include APR_READ flag when testing, because
apr_open() always returns APR_EACCES if you fail to request at least
one of reading or writing.  Also, remove the file after testing.

(window_handler): new func in wc library; skeleton, everything will
depend on the baton.

(add_file, replace_file): store window_handler in *handler.

(checkout-test.c:main): be robuster.

(test_read_fn): interpret results of apr_full_read() correctly.
----------------------------
revision 1.9
date: 2000/08/17 23:21:37;  author: sussman;  state: Exp;  lines: +30 -2
trying to print window contents now
----------------------------
revision 1.8
date: 2000/08/17 22:49:49;  author: sussman;  state: Exp;  lines: +2 -1
oops, forgot this file
----------------------------
revision 1.7
date: 2000/08/17 22:45:15;  author: sussman;  state: Exp;  lines: +24 -7
AHA... deltaparse-test actually WORKS.  Time for a beer.
----------------------------
revision 1.6
date: 2000/08/17 17:47:31;  author: sussman;  state: Exp;  lines: +12 -6
Almost ready to start compiling deltaparse-test
----------------------------
revision 1.5
date: 2000/08/16 22:36:32;  author: sussman;  state: Exp;  lines: +1 -1
typo
----------------------------
revision 1.4
date: 2000/08/16 22:35:03;  author: sussman;  state: Exp;  lines: +187 -26
Mostly finished test of XML parser interface.
----------------------------
revision 1.3
date: 2000/08/05 20:48:22;  author: kfogel;  state: Exp;  lines: +2 -9
(svn_delta_make_xml_parser): new constructor function (rename of
svn_xml_make_parser).

Use it in test program.
----------------------------
revision 1.2
date: 2000/08/04 21:40:41;  author: sussman;  state: Exp;  lines: +5 -2
Started XML-to-Delta callback system.
----------------------------
revision 1.1
date: 2000/08/04 19:23:57;  author: sussman;  state: Exp;
moving files around
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_delta/tests/foo.delta,v
Working file: libsvn_delta/tests/foo.delta
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/09/01 22:24:58;  author: kfogel;  state: Exp;  lines: +34 -34
Use "add" as the tagname everywhere, instead of "new".
All sample deltas updated, and:

(svn_delta__tagmap): "add" replaces "new".
(svn_delta__XML_t): svn_delta__XML_add replaces svn_delta__XML_new.
----------------------------
revision 1.6
date: 2000/09/01 03:36:11;  author: sussman;  state: Exp;  lines: +8 -1

 Fixed property-parsing buglets.  The trick was that xml_handle_end
 shouldn't remove a stackframe right at the outset;  instead it should
 first *validate* that the removal is ok, *then* call walker
 callbacks, *then* remove the stackframe.  I had implemented this
 correctly earlier, but I hadn't updated property-handling to reflect
 this change!

 * foo.delta:  added more prop-deltas to experiement.

 * delta_parse.c:
   (do_begin_propdelta): set current_propdelta fields to empty
   strings, not NULL.
   (do_propdelta_callback): if value is empty string, send NULL to
   callback.  Set name/value to empty (not null) when done.
   (xml_handle_end): check parent frame's tag for property deletions,
   duh.
----------------------------
revision 1.5
date: 2000/08/31 17:21:50;  author: sussman;  state: Exp;  lines: +0 -5
 Adopted deltaparse-test program to new walker interface.  (It works
 now.) Again, `delta_window' is renamed to `txdelta_window'
 everywhere.

 * deltaparse-test.c:
   (main):  take a filename as a command-line argument.
   (test_begin_textdelta): renamed to `test_apply_textdelta'.
   (test_begin_propdelta): removed, different prop-delta system now.
   (test_change_file_prop, test_change_dir_prop,
   test_change_dirent_prop): added.
   (my_fileprop_handler, my_dirprop_handler, my_direntprop_handler):
   deleted.
   (test_add_file, test_replace_file, test_apply_textdelta):  deal
   with new file_baton.

 * delta_parse.c: (xml_handle_end):  after </text-delta>, be sure to
   call svn_vcdiff_parse() with len=0.
   (do_delete_prop): check for initial existence of current_propdelta.
   (do_prop_delta_callback): DUH, check for walker callbacks before
   trying to call them.  :)

 * svn_delta.h: (svn_vcdiff_parse): len is not a pointer.
----------------------------
revision 1.4
date: 2000/08/22 16:52:17;  author: sussman;  state: Exp;  lines: +2 -0
test program correctly recognizes prop-deltas on files, dirs, and dirents.
----------------------------
revision 1.3
date: 2000/08/22 16:46:53;  author: sussman;  state: Exp;  lines: +6 -1

 * when printing errors, specify if svn-specific
 * fixed prop-delta handling routine
 * fixed prop-delta "delete" validation logic

Prop-deltas seem to work correctly now!
----------------------------
revision 1.2
date: 2000/08/21 22:43:14;  author: sussman;  state: Exp;  lines: +1 -0
save state
----------------------------
revision 1.1
date: 2000/08/17 22:45:15;  author: sussman;  state: Exp;
AHA... deltaparse-test actually WORKS.  Time for a beer.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_fs/.cvsignore,v
Working file: libsvn_fs/.cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_fs/Makefile.am,v
Working file: libsvn_fs/Makefile.am
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_fs/err.c,v
Working file: libsvn_fs/err.c
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +1 -1
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.1
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_fs/err.h,v
Working file: libsvn_fs/err.h
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +1 -1
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.1
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_fs/fs.c,v
Working file: libsvn_fs/fs.c
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +1 -1
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.1
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_fs/fs.h,v
Working file: libsvn_fs/fs.h
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +1 -1
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.2
date: 2000/08/28 15:59:40;  author: kfogel;  state: Exp;  lines: +1 -1
speling: "propage" ==> "propagate"
----------------------------
revision 1.1
date: 2000/08/25 21:31:03;  author: jimb;  state: Exp;
* configure.in: Include subversion/libsvn_fs/Makefile in the list of
Makefiles to produce.
* subversion/Makefile.am (SUBDIRS): Add libsvn_fs.
* subversion/include/svn_error.h (svn_errno_t): Add new error code,
SVN_ERR_FS_GENERAL.
* subversion/libsvn_fs: First inklings of filesystem implementation.

PR:
Obtained from:
Submitted by:
Reviewed by:
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/.cvsignore,v
Working file: libsvn_ra_dav/.cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/30 04:43:02;  author: gstein;  state: Exp;
add config/build framework for the RA/DAV layer.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/Makefile.am,v
Working file: libsvn_ra_dav/Makefile.am
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/31 13:52:28;  author: gstein;  state: Exp;  lines: +3 -1
continued development.
fetch.c:
  - added my_basename() to get the basename of a char* into an svn_string
  - added fetch_file() to grab files from the server
  - added logic to call walker callbacks to create the working copy
  - fetch_data is history: it becomes svn_ra_checkout()
  - svn_ra_update() is gone. the algorithm will use a walker returned by
    svn_ra_get_update_walker()
  - added svn_ra_get_update_walker() and associated functions (unused)
commit.c:
  - added svn_ra_get_commit_walker() and associated functions (unused)
ra-dav-test.c:
  - can't use svn_wc_get_change_walker(), so we add a temporary, internal
    debug walker to use.
Makefile.am:
  - build commit.c and tests subdir
svn_ra.h:
  - bring up to date with new design
----------------------------
revision 1.2
date: 2000/08/30 09:46:22;  author: gstein;  state: Exp;  lines: +1 -1
begin implementation of the RA/DAV layer.
introduced "RA Session" concept: svn_ra_open, svn_ra_close.
draft prototypes for: svn_ra_update, svn_ra_checkout
this "draft" will connect to a DAV server and traverse the URL space to
    fetch the DAV:target property from each member resource.
----------------------------
revision 1.1
date: 2000/08/30 04:43:02;  author: gstein;  state: Exp;
add config/build framework for the RA/DAV layer.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/commit.c,v
Working file: libsvn_ra_dav/commit.c
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/09/02 10:39:52;  author: gstein;  state: Exp;  lines: +18 -4
(svn_ra_checkout): don't pass pool; use the one in "ras"
(svn_ra_get_commit_walker): add 'ras' param and drop the TBD thing
----------------------------
revision 1.2
date: 2000/09/02 10:00:59;  author: gstein;  state: Exp;  lines: +2 -2
tweak: update to new walker callback interfaces
----------------------------
revision 1.1
date: 2000/08/31 13:52:28;  author: gstein;  state: Exp;
continued development.
fetch.c:
  - added my_basename() to get the basename of a char* into an svn_string
  - added fetch_file() to grab files from the server
  - added logic to call walker callbacks to create the working copy
  - fetch_data is history: it becomes svn_ra_checkout()
  - svn_ra_update() is gone. the algorithm will use a walker returned by
    svn_ra_get_update_walker()
  - added svn_ra_get_update_walker() and associated functions (unused)
commit.c:
  - added svn_ra_get_commit_walker() and associated functions (unused)
ra-dav-test.c:
  - can't use svn_wc_get_change_walker(), so we add a temporary, internal
    debug walker to use.
Makefile.am:
  - build commit.c and tests subdir
svn_ra.h:
  - bring up to date with new design
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/fetch.c,v
Working file: libsvn_ra_dav/fetch.c
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/09/02 10:39:52;  author: gstein;  state: Exp;  lines: +6 -7
(svn_ra_checkout): don't pass pool; use the one in "ras"
(svn_ra_get_commit_walker): add 'ras' param and drop the TBD thing
----------------------------
revision 1.5
date: 2000/09/02 10:00:59;  author: gstein;  state: Exp;  lines: +4 -4
tweak: update to new walker callback interfaces
----------------------------
revision 1.4
date: 2000/08/31 14:17:31;  author: gstein;  state: Exp;  lines: +5 -0
while I'm thinking about it...
----------------------------
revision 1.3
date: 2000/08/31 13:52:28;  author: gstein;  state: Exp;  lines: +333 -38
continued development.
fetch.c:
  - added my_basename() to get the basename of a char* into an svn_string
  - added fetch_file() to grab files from the server
  - added logic to call walker callbacks to create the working copy
  - fetch_data is history: it becomes svn_ra_checkout()
  - svn_ra_update() is gone. the algorithm will use a walker returned by
    svn_ra_get_update_walker()
  - added svn_ra_get_update_walker() and associated functions (unused)
commit.c:
  - added svn_ra_get_commit_walker() and associated functions (unused)
ra-dav-test.c:
  - can't use svn_wc_get_change_walker(), so we add a temporary, internal
    debug walker to use.
Makefile.am:
  - build commit.c and tests subdir
svn_ra.h:
  - bring up to date with new design
----------------------------
revision 1.2
date: 2000/08/30 09:55:57;  author: gstein;  state: Exp;  lines: +1 -1
wouldn't you know it... the file that I used as a template for the new
    RA/DAV files' license (it was apply_delta.c) happens to be the only file
    with a tweak in it. of all that I could have chosen...
----------------------------
revision 1.1
date: 2000/08/30 09:46:22;  author: gstein;  state: Exp;
begin implementation of the RA/DAV layer.
introduced "RA Session" concept: svn_ra_open, svn_ra_close.
draft prototypes for: svn_ra_update, svn_ra_checkout
this "draft" will connect to a DAV server and traverse the URL space to
    fetch the DAV:target property from each member resource.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/ra_session.h,v
Working file: libsvn_ra_dav/ra_session.h
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/30 09:55:57;  author: gstein;  state: Exp;  lines: +1 -1
wouldn't you know it... the file that I used as a template for the new
    RA/DAV files' license (it was apply_delta.c) happens to be the only file
    with a tweak in it. of all that I could have chosen...
----------------------------
revision 1.1
date: 2000/08/30 09:46:22;  author: gstein;  state: Exp;
begin implementation of the RA/DAV layer.
introduced "RA Session" concept: svn_ra_open, svn_ra_close.
draft prototypes for: svn_ra_update, svn_ra_checkout
this "draft" will connect to a DAV server and traverse the URL space to
    fetch the DAV:target property from each member resource.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/session.c,v
Working file: libsvn_ra_dav/session.c
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/30 09:55:57;  author: gstein;  state: Exp;  lines: +1 -1
wouldn't you know it... the file that I used as a template for the new
    RA/DAV files' license (it was apply_delta.c) happens to be the only file
    with a tweak in it. of all that I could have chosen...
----------------------------
revision 1.1
date: 2000/08/30 09:46:22;  author: gstein;  state: Exp;
begin implementation of the RA/DAV layer.
introduced "RA Session" concept: svn_ra_open, svn_ra_close.
draft prototypes for: svn_ra_update, svn_ra_checkout
this "draft" will connect to a DAV server and traverse the URL space to
    fetch the DAV:target property from each member resource.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/tests/.cvsignore,v
Working file: libsvn_ra_dav/tests/.cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/30 04:43:03;  author: gstein;  state: Exp;
add config/build framework for the RA/DAV layer.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/tests/Makefile.am,v
Working file: libsvn_ra_dav/tests/Makefile.am
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/09/02 10:09:17;  author: gstein;  state: Exp;  lines: +2 -0
use the real WC change walker (rather than our test hack).
----------------------------
revision 1.2
date: 2000/08/30 09:46:22;  author: gstein;  state: Exp;  lines: +6 -5
begin implementation of the RA/DAV layer.
introduced "RA Session" concept: svn_ra_open, svn_ra_close.
draft prototypes for: svn_ra_update, svn_ra_checkout
this "draft" will connect to a DAV server and traverse the URL space to
    fetch the DAV:target property from each member resource.
----------------------------
revision 1.1
date: 2000/08/30 04:43:03;  author: gstein;  state: Exp;
add config/build framework for the RA/DAV layer.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_ra_dav/tests/ra-dav-test.c,v
Working file: libsvn_ra_dav/tests/ra-dav-test.c
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/09/02 10:39:53;  author: gstein;  state: Exp;  lines: +1 -1
(svn_ra_checkout): don't pass pool; use the one in "ras"
(svn_ra_get_commit_walker): add 'ras' param and drop the TBD thing
----------------------------
revision 1.5
date: 2000/09/02 10:22:03;  author: gstein;  state: Exp;  lines: +8 -2
oops. svn_handle_error() doesn't exit(). do it manually to prevent fallthru.
----------------------------
revision 1.4
date: 2000/09/02 10:09:17;  author: gstein;  state: Exp;  lines: +12 -76
use the real WC change walker (rather than our test hack).
----------------------------
revision 1.3
date: 2000/08/31 13:52:28;  author: gstein;  state: Exp;  lines: +77 -1
continued development.
fetch.c:
  - added my_basename() to get the basename of a char* into an svn_string
  - added fetch_file() to grab files from the server
  - added logic to call walker callbacks to create the working copy
  - fetch_data is history: it becomes svn_ra_checkout()
  - svn_ra_update() is gone. the algorithm will use a walker returned by
    svn_ra_get_update_walker()
  - added svn_ra_get_update_walker() and associated functions (unused)
commit.c:
  - added svn_ra_get_commit_walker() and associated functions (unused)
ra-dav-test.c:
  - can't use svn_wc_get_change_walker(), so we add a temporary, internal
    debug walker to use.
Makefile.am:
  - build commit.c and tests subdir
svn_ra.h:
  - bring up to date with new design
----------------------------
revision 1.2
date: 2000/08/30 09:55:57;  author: gstein;  state: Exp;  lines: +1 -1
wouldn't you know it... the file that I used as a template for the new
    RA/DAV files' license (it was apply_delta.c) happens to be the only file
    with a tweak in it. of all that I could have chosen...
----------------------------
revision 1.1
date: 2000/08/30 09:46:22;  author: gstein;  state: Exp;
begin implementation of the RA/DAV layer.
introduced "RA Session" concept: svn_ra_open, svn_ra_close.
draft prototypes for: svn_ra_update, svn_ra_checkout
this "draft" will connect to a DAV server and traverse the URL space to
    fetch the DAV:target property from each member resource.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/.cvsignore,v
Working file: libsvn_string/.cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/01 21:31:16;  author: sussman;  state: Exp;
adding .cvsignore files all around which ignore automake/autoconf stuff
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/Attic/Makefile,v
Working file: libsvn_string/Makefile
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/07/14 00:10:11;  author: kfogel;  state: dead;  lines: +0 -0
This Makefile will be generated automatically now.
----------------------------
revision 1.5
date: 2000/06/24 01:46:34;  author: kfogel;  state: Exp;  lines: +3 -3
Applied Greg Stein <gstein@lyra.org>'s patch fixing TABs, for
compatibility with GNU Make 3.77.
----------------------------
revision 1.4
date: 2000/06/23 15:21:14;  author: sussman;  state: Exp;  lines: +3 -5
tweak
----------------------------
revision 1.3
date: 2000/06/23 15:11:40;  author: sussman;  state: Exp;  lines: +8 -5
bytestrings now work correctly with ap_pool_t
----------------------------
revision 1.2
date: 2000/06/22 23:48:38;  author: sussman;  state: Exp;  lines: +16 -5
libsvn_string now uses ap_pool_t instead of malloc;  but having LD problems trying to link libapr.a in, argh
----------------------------
revision 1.1
date: 2000/06/21 18:29:12;  author: sussman;  state: Exp;
adding tests
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/Makefile.am,v
Working file: libsvn_string/Makefile.am
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/08/08 23:22:07;  author: kfogel;  state: Exp;  lines: +0 -1
Use static where appropriate.

Correct ordering of library dependencies; plus some accidental newline
removals that are easier to commit than revert.
----------------------------
revision 1.5
date: 2000/08/01 00:34:40;  author: sussman;  state: Exp;  lines: +15 -6
still autoconfiscating... getting the hang of it. :)
----------------------------
revision 1.4
date: 2000/07/31 19:04:09;  author: sussman;  state: Exp;  lines: +1 -0
hacking on autoconfiscation
----------------------------
revision 1.3
date: 2000/07/13 23:53:11;  author: kfogel;  state: Exp;  lines: +6 -5
Got libsvn_string.so building...
----------------------------
revision 1.2
date: 2000/07/13 05:57:35;  author: kfogel;  state: Exp;  lines: +1 -1
more autoconfiscation work
----------------------------
revision 1.1
date: 2000/07/13 05:11:20;  author: kfogel;  state: Exp;
autoconfiscation in progress
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/Attic/stringtest.c,v
Working file: libsvn_string/stringtest.c
head: 1.11
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 11;	selected revisions: 11
description:
----------------------------
revision 1.11
date: 2000/07/12 19:27:12;  author: kfogel;  state: dead;  lines: +0 -0
moved testing code to tests/ subdir
----------------------------
revision 1.10
date: 2000/07/12 19:09:21;  author: kfogel;  state: Exp;  lines: +1 -1
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.9
date: 2000/07/08 00:44:13;  author: sussman;  state: Exp;  lines: +8 -0
saving lots of random work threads.
----------------------------
revision 1.8
date: 2000/07/07 00:45:20;  author: sussman;  state: Exp;  lines: +8 -8
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.7
date: 2000/07/06 04:41:24;  author: sussman;  state: Exp;  lines: +8 -8
bugfixes
----------------------------
revision 1.6
date: 2000/07/05 19:51:43;  author: sussman;  state: Exp;  lines: +4 -0
added svn_string_2cstring()
----------------------------
revision 1.5
date: 2000/06/23 20:52:16;  author: sussman;  state: Exp;  lines: +11 -11
committed changes suggested by Greg Stein
----------------------------
revision 1.4
date: 2000/06/23 15:11:40;  author: sussman;  state: Exp;  lines: +2 -8
bytestrings now work correctly with ap_pool_t
----------------------------
revision 1.3
date: 2000/06/22 23:48:38;  author: sussman;  state: Exp;  lines: +25 -7
libsvn_string now uses ap_pool_t instead of malloc;  but having LD problems trying to link libapr.a in, argh
----------------------------
revision 1.2
date: 2000/06/21 18:54:17;  author: sussman;  state: Exp;  lines: +44 -2
finished bytestring library and little test program.
----------------------------
revision 1.1
date: 2000/06/21 18:29:12;  author: sussman;  state: Exp;
adding tests
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/svn_string.c,v
Working file: libsvn_string/svn_string.c
head: 1.43
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 43;	selected revisions: 43
description:
----------------------------
revision 1.43
date: 2000/08/31 16:12:07;  author: sussman;  state: Exp;  lines: +6 -0

(svn_string_appendbytes): if passed a NULL string, then just create a
new string from BYTES.
----------------------------
revision 1.42
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.41
date: 2000/08/25 20:09:06;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.40
date: 2000/08/25 18:18:41;  author: kfogel;  state: Exp;  lines: +22 -8
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.39
date: 2000/08/21 23:35:40;  author: kfogel;  state: Exp;  lines: +1 -1
Fix typo.
----------------------------
revision 1.38
date: 2000/08/21 18:04:36;  author: kfogel;  state: Exp;  lines: +1 -3
Move & edit a comment to compensate for some recent changes.
----------------------------
revision 1.37
date: 2000/08/21 18:02:28;  author: kfogel;  state: Exp;  lines: +2 -2
(ensure_block_capacity): more accurate parameter name too.
----------------------------
revision 1.36
date: 2000/08/21 18:01:08;  author: kfogel;  state: Exp;  lines: +4 -2
(ensure_block_capacity): new, more accurate name for `lengthen_block'.
----------------------------
revision 1.35
date: 2000/08/20 02:44:09;  author: kfogel;  state: Exp;  lines: +1 -0
(svn_string_appendbytes): add comment about null terminator.
----------------------------
revision 1.34
date: 2000/08/20 02:43:31;  author: kfogel;  state: Exp;  lines: +21 -10
Anticipate svn_string_prepend* functions.

(lengthen_block): new routine, does the extending of the block that
used to be inlined in svn_string_appendbytes().  Loops, multiplying by
2, until the block is big enough.

(svn_string_appendbytes): use above.
----------------------------
revision 1.33
date: 2000/08/19 00:00:02;  author: kfogel;  state: Exp;  lines: +10 -23
Don't drop those batons.
----------------------------
revision 1.32
date: 2000/08/18 21:39:14;  author: kfogel;  state: Exp;  lines: +22 -2
(svn_string_chop_back_to_char): new func.

Chopping tests written.
----------------------------
revision 1.31
date: 2000/08/18 17:06:47;  author: kfogel;  state: Exp;  lines: +4 -10
Ignore this commit -- only whitespace changes, done mainly to
reproduce a problem with commitlogging.
----------------------------
revision 1.30
date: 2000/08/18 16:44:26;  author: sussman;  state: Exp;  lines: +14 -74
Remove all cases of svn_string_print().

Remove compile warning on deltaparse-test.c.
----------------------------
revision 1.29
date: 2000/08/18 16:10:03;  author: kfogel;  state: Exp;  lines: +0 -35
(svn_string_dup2cstring, svn_string_compare_2cstring): removed, no
need for these funcs.

Rewrote test suite to exercise new functionality, and display results
readably.
----------------------------
revision 1.28
date: 2000/08/18 14:42:02;  author: kfogel;  state: Exp;  lines: +7 -7
(svn_string_dup2cstring, svn_string_ncreate, svn_string_appendbytes,
svn_string_chop): o-b-o-e repairs, thanks to Greg Stein
<gstein@lyra.org> for catching them early.

(svn_string_dup2cstring): new name for `svn_string_2cstring'.
----------------------------
revision 1.27
date: 2000/08/18 01:28:17;  author: kfogel;  state: Exp;  lines: +15 -11
(svn_string_appendbytes): tack on trailing null.  Note that this takes
care of svn_string_appendstr() as well, since that's just a wrapper
for this.

(svn_string_ncreate): tack on trailing null.

(svn_string_2cstring): fix math for trailing null byte.

(svn_string_fillchar): get rid of bogus safety check, since it would
hide malformed strings and thus make a bug invisible without removing
its source.
----------------------------
revision 1.26
date: 2000/08/18 01:10:34;  author: kfogel;  state: Exp;  lines: +19 -6
(svn_string_chop): new func, does what you think it does.

(svn_string_setempty): just set len to 0, and null data[0] if
appropriate.  Leave block and blocksize alone, however, so we can
still call svn_string_appendstr() with all the rights, privileges, and
honors thereunto appertaining.

(svn_string_isempty): simplify.
----------------------------
revision 1.25
date: 2000/08/08 23:15:48;  author: kfogel;  state: Exp;  lines: +3 -2
Compensate for the trailing null byte.
----------------------------
revision 1.24
date: 2000/08/08 04:00:51;  author: sussman;  state: Exp;  lines: +1 -1
Don't pollute global namespace.
----------------------------
revision 1.23
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +13 -13
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.22
date: 2000/07/27 14:06:08;  author: sussman;  state: Exp;  lines: +0 -3
typo in svn_string.c (unfinished work?)
----------------------------
revision 1.21
date: 2000/07/18 20:19:51;  author: sussman;  state: Exp;  lines: +4 -0
Removed policy-level permission-checking from server;  redundant with Apache.
----------------------------
revision 1.20
date: 2000/07/12 19:09:21;  author: kfogel;  state: Exp;  lines: +1 -1
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.19
date: 2000/07/08 00:44:13;  author: sussman;  state: Exp;  lines: +20 -0
saving lots of random work threads.
----------------------------
revision 1.18
date: 2000/07/07 04:51:14;  author: sussman;  state: Exp;  lines: +2 -1
Parser bug fixed.  Test program works correctly, and successfully pretty-prints our hash of hashes.  Sorry, Karl, I beat you to it. :)
----------------------------
revision 1.17
date: 2000/07/07 00:45:20;  author: sussman;  state: Exp;  lines: +11 -4
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.16
date: 2000/07/06 23:32:43;  author: sussman;  state: Exp;  lines: +71 -0
moved some convenient string routines from svn_parse.c to svn_string.c
----------------------------
revision 1.15
date: 2000/07/06 04:41:24;  author: sussman;  state: Exp;  lines: +8 -3
bugfixes
----------------------------
revision 1.14
date: 2000/07/05 19:51:43;  author: sussman;  state: Exp;  lines: +18 -0
added svn_string_2cstring()
----------------------------
revision 1.13
date: 2000/06/29 20:57:11;  author: sussman;  state: Exp;  lines: +12 -11
peppered const's into string library.  yum.
----------------------------
revision 1.12
date: 2000/06/23 20:52:16;  author: sussman;  state: Exp;  lines: +28 -47
committed changes suggested by Greg Stein
----------------------------
revision 1.11
date: 2000/06/23 20:05:36;  author: sussman;  state: Exp;  lines: +2 -9
hacky hacky
----------------------------
revision 1.10
date: 2000/06/23 15:11:40;  author: sussman;  state: Exp;  lines: +6 -15
bytestrings now work correctly with ap_pool_t
----------------------------
revision 1.9
date: 2000/06/22 23:48:38;  author: sussman;  state: Exp;  lines: +48 -23
libsvn_string now uses ap_pool_t instead of malloc;  but having LD problems trying to link libapr.a in, argh
----------------------------
revision 1.8
date: 2000/06/21 18:54:17;  author: sussman;  state: Exp;  lines: +6 -2
finished bytestring library and little test program.
----------------------------
revision 1.7
date: 2000/06/21 18:29:12;  author: sussman;  state: Exp;  lines: +16 -11
adding tests
----------------------------
revision 1.6
date: 2000/06/21 17:28:42;  author: sussman;  state: Exp;  lines: +24 -1
added convenience routine
----------------------------
revision 1.5
date: 2000/06/21 17:11:07;  author: sussman;  state: Exp;  lines: +81 -31
fixed string routines
----------------------------
revision 1.4
date: 2000/06/21 15:14:46;  author: sussman;  state: Exp;  lines: +6 -6
about to fix errors
----------------------------
revision 1.3
date: 2000/06/20 21:10:21;  author: sussman;  state: Exp;  lines: +87 -15
added bytestring routines
----------------------------
revision 1.2
date: 2000/06/19 21:52:14;  author: sussman;  state: Exp;  lines: +52 -1
save
----------------------------
revision 1.1
date: 2000/06/19 21:32:32;  author: sussman;  state: Exp;
add string files
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/tests/.cvsignore,v
Working file: libsvn_string/tests/.cvsignore
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/08/01 21:36:43;  author: sussman;  state: Exp;  lines: +1 -0
tweaking .cvsignores
----------------------------
revision 1.3
date: 2000/08/01 21:31:16;  author: sussman;  state: Exp;  lines: +21 -2
adding .cvsignore files all around which ignore automake/autoconf stuff
----------------------------
revision 1.2
date: 2000/07/14 00:08:21;  author: kfogel;  state: Exp;  lines: +4 -0
Okay, stringtest builds too.
----------------------------
revision 1.1
date: 2000/07/12 19:32:19;  author: kfogel;  state: Exp;
ignore stringtest executable, etc
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/tests/Makefile.am,v
Working file: libsvn_string/tests/Makefile.am
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/08/28 20:11:24;  author: sussman;  state: Exp;  lines: +5 -3
Factorized main() out of standard svn test programs.
----------------------------
revision 1.6
date: 2000/08/25 20:16:43;  author: sussman;  state: Exp;  lines: +20 -11

Makefile.am:  write our own `check' rule.  automake's rules stink, give us no
control over automated-test output.

stringtest.c:  internally reorganized according to test test-suite design.
Will serve as a good "template" for other test programs.
----------------------------
revision 1.5
date: 2000/08/25 02:36:26;  author: sussman;  state: Exp;  lines: +13 -1
Reflect new test-suite design.
----------------------------
revision 1.4
date: 2000/08/08 18:14:54;  author: kfogel;  state: Exp;  lines: +1 -1
Add new paths to LD_LIBRARY_PATH.

Don't install test programs in a "make install".
----------------------------
revision 1.3
date: 2000/08/01 20:11:51;  author: sussman;  state: Exp;  lines: +3 -0
<make check> now runs automated tests in libsvn_string and libsvn_subr
----------------------------
revision 1.2
date: 2000/08/01 00:34:40;  author: sussman;  state: Exp;  lines: +8 -2
still autoconfiscating... getting the hang of it. :)
----------------------------
revision 1.1
date: 2000/07/14 00:08:21;  author: kfogel;  state: Exp;
Okay, stringtest builds too.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_string/tests/stringtest.c,v
Working file: libsvn_string/tests/stringtest.c
head: 1.23
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 23;	selected revisions: 23
description:
----------------------------
revision 1.23
date: 2000/08/28 20:11:24;  author: sussman;  state: Exp;  lines: +20 -114
Factorized main() out of standard svn test programs.
----------------------------
revision 1.22
date: 2000/08/28 16:21:57;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.21
date: 2000/08/25 21:20:08;  author: sussman;  state: Exp;  lines: +1 -2
fix comment
----------------------------
revision 1.20
date: 2000/08/25 20:16:43;  author: sussman;  state: Exp;  lines: +232 -255

Makefile.am:  write our own `check' rule.  automake's rules stink, give us no
control over automated-test output.

stringtest.c:  internally reorganized according to test test-suite design.
Will serve as a good "template" for other test programs.
----------------------------
revision 1.19
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.18
date: 2000/08/25 02:36:05;  author: sussman;  state: Exp;  lines: +135 -76
In process of rewriting stringtest.c according to new test-suite
design.
----------------------------
revision 1.17
date: 2000/08/21 18:21:12;  author: kfogel;  state: Exp;  lines: +49 -9
Added a test for block initialization and growth.
----------------------------
revision 1.16
date: 2000/08/18 21:39:16;  author: kfogel;  state: Exp;  lines: +114 -67
(svn_string_chop_back_to_char): new func.

Chopping tests written.
----------------------------
revision 1.15
date: 2000/08/18 17:09:54;  author: kfogel;  state: Exp;  lines: +58 -2
Added copyright info, load svn-dev.el.

This commit is also mainly to reproduce a problem with commitlogging.
----------------------------
revision 1.14
date: 2000/08/18 16:10:05;  author: kfogel;  state: Exp;  lines: +205 -91
(svn_string_dup2cstring, svn_string_compare_2cstring): removed, no
need for these funcs.

Rewrote test suite to exercise new functionality, and display results
readably.
----------------------------
revision 1.13
date: 2000/08/18 14:42:03;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_string_dup2cstring, svn_string_ncreate, svn_string_appendbytes,
svn_string_chop): o-b-o-e repairs, thanks to Greg Stein
<gstein@lyra.org> for catching them early.

(svn_string_dup2cstring): new name for `svn_string_2cstring'.
----------------------------
revision 1.12
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +17 -17
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.11
date: 2000/08/01 20:11:51;  author: sussman;  state: Exp;  lines: +50 -7
<make check> now runs automated tests in libsvn_string and libsvn_subr
----------------------------
revision 1.10
date: 2000/07/12 19:09:21;  author: kfogel;  state: Exp;  lines: +1 -1
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.9
date: 2000/07/08 00:44:13;  author: sussman;  state: Exp;  lines: +8 -0
saving lots of random work threads.
----------------------------
revision 1.8
date: 2000/07/07 00:45:20;  author: sussman;  state: Exp;  lines: +8 -8
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.7
date: 2000/07/06 04:41:24;  author: sussman;  state: Exp;  lines: +8 -8
bugfixes
----------------------------
revision 1.6
date: 2000/07/05 19:51:43;  author: sussman;  state: Exp;  lines: +4 -0
added svn_string_2cstring()
----------------------------
revision 1.5
date: 2000/06/23 20:52:16;  author: sussman;  state: Exp;  lines: +11 -11
committed changes suggested by Greg Stein
----------------------------
revision 1.4
date: 2000/06/23 15:11:40;  author: sussman;  state: Exp;  lines: +2 -8
bytestrings now work correctly with ap_pool_t
----------------------------
revision 1.3
date: 2000/06/22 23:48:38;  author: sussman;  state: Exp;  lines: +25 -7
libsvn_string now uses ap_pool_t instead of malloc;  but having LD problems trying to link libapr.a in, argh
----------------------------
revision 1.2
date: 2000/06/21 18:54:17;  author: sussman;  state: Exp;  lines: +44 -2
finished bytestring library and little test program.
----------------------------
revision 1.1
date: 2000/06/21 18:29:12;  author: sussman;  state: Exp;
adding tests
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/.cvsignore,v
Working file: libsvn_subr/.cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/01 21:31:17;  author: sussman;  state: Exp;
adding .cvsignore files all around which ignore automake/autoconf stuff
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/Makefile.am,v
Working file: libsvn_subr/Makefile.am
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/08/22 17:30:33;  author: kfogel;  state: Exp;  lines: +1 -1
Put mini-library for path manipulation into libsvn_subr.

(maybe_derive_ancestor): always set to a full ancestry path, derived
from both ancestors and names.
----------------------------
revision 1.3
date: 2000/08/08 23:22:10;  author: kfogel;  state: Exp;  lines: +0 -1
Use static where appropriate.

Correct ordering of library dependencies; plus some accidental newline
removals that are easier to commit than revert.
----------------------------
revision 1.2
date: 2000/08/01 01:30:13;  author: sussman;  state: Exp;  lines: +1 -1
tweak
----------------------------
revision 1.1
date: 2000/08/01 01:09:31;  author: sussman;  state: Exp;
*** empty log message ***
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/README.errors,v
Working file: libsvn_subr/README.errors
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/01 01:08:36;  author: sussman;  state: Exp;  lines: +14 -19
saving autoconf work
----------------------------
revision 1.2
date: 2000/07/13 22:07:51;  author: kfogel;  state: Exp;  lines: +2 -11
Got rid of SVN_RETURN_IF_ERROR() and SVN_RETURN_WRAPPED_ERROR()
macros; expand to inline code everywhere they had been used.

There was a general consensus that a macro affecting control flow must
meet three criteria:

   1. The need must be compelling (for example, it replaces very
      complex inline code).

   2. Its meaning must be obvious from looking at a use of the macro
      (without reference to its expansion).

   3. It must work in any context.

These macros probably met 2 and 3, but not 1.
----------------------------
revision 1.1
date: 2000/07/13 03:36:05;  author: sussman;  state: Exp;
Added instructions on exception system
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/Attic/alloc.c,v
Working file: libsvn_subr/alloc.c
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/07/05 22:58:53;  author: sussman;  state: dead;  lines: +0 -0
removing uncessary alloc files, we're using apr pools now.
----------------------------
revision 1.5
date: 2000/06/19 23:48:37;  author: kfogel;  state: Exp;  lines: +4 -3
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
----------------------------
revision 1.4
date: 2000/06/16 01:53:00;  author: kfogel;  state: Exp;  lines: +1 -1
Call it svn_slurp_file().

(Yes, I will check out APR tomorrow. :-) )
----------------------------
revision 1.3
date: 2000/06/16 01:52:14;  author: kfogel;  state: Exp;  lines: +56 -0
Added slurp_file(), with some reservations.
----------------------------
revision 1.2
date: 2000/06/16 01:24:15;  author: kfogel;  state: Exp;  lines: +1 -1
Started hash tables for use in vdelta.
----------------------------
revision 1.1
date: 2000/06/16 00:50:10;  author: kfogel;  state: Exp;
started subr library
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/Attic/alloc.h,v
Working file: libsvn_subr/alloc.h
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/07/05 22:58:53;  author: sussman;  state: dead;  lines: +0 -0
removing uncessary alloc files, we're using apr pools now.
----------------------------
revision 1.5
date: 2000/06/19 23:48:37;  author: kfogel;  state: Exp;  lines: +2 -0
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
----------------------------
revision 1.4
date: 2000/06/16 01:53:00;  author: kfogel;  state: Exp;  lines: +1 -1
Call it svn_slurp_file().

(Yes, I will check out APR tomorrow. :-) )
----------------------------
revision 1.3
date: 2000/06/16 01:52:14;  author: kfogel;  state: Exp;  lines: +1 -0
Added slurp_file(), with some reservations.
----------------------------
revision 1.2
date: 2000/06/16 01:24:15;  author: kfogel;  state: Exp;  lines: +8 -0
Started hash tables for use in vdelta.
----------------------------
revision 1.1
date: 2000/06/16 00:50:10;  author: kfogel;  state: Exp;
started subr library
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/hashdump.c,v
Working file: libsvn_subr/hashdump.c
head: 1.11
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 11;	selected revisions: 11
description:
----------------------------
revision 1.11
date: 2000/08/28 16:21:58;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.10
date: 2000/08/25 21:19:21;  author: sussman;  state: Exp;  lines: +10 -8
Improve hashdump testing (new test)
----------------------------
revision 1.9
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.8
date: 2000/08/04 17:06:24;  author: kfogel;  state: Exp;  lines: +6 -4
Null-terminate the hand-constructed strings.
----------------------------
revision 1.7
date: 2000/08/04 16:45:46;  author: kfogel;  state: Exp;  lines: +6 -2
Put in the standard emacs local vars trailer.
----------------------------
revision 1.6
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +40 -40
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.5
date: 2000/07/28 16:17:20;  author: sussman;  state: Exp;  lines: +1 -1
fixing casting warning
----------------------------
revision 1.4
date: 2000/07/28 04:31:55;  author: kfogel;  state: Exp;  lines: +9 -2
(svn_pack_bytestring): Don't reallocate, just assemble the string by
hand, copying the data pointer.
----------------------------
revision 1.3
date: 2000/07/27 21:57:59;  author: sussman;  state: Exp;  lines: +6 -6
Test program works;  we can read/write hash tables to disk now.
----------------------------
revision 1.2
date: 2000/07/27 21:12:26;  author: sussman;  state: Exp;  lines: +1 -0
Header file reorganization
----------------------------
revision 1.1
date: 2000/07/27 20:25:04;  author: sussman;  state: Exp;
Movin' stuff around
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/path.c,v
Working file: libsvn_subr/path.c
head: 1.10
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 10;	selected revisions: 10
description:
----------------------------
revision 1.10
date: 2000/09/01 21:03:18;  author: kfogel;  state: Exp;  lines: +17 -33
Partially revert my change of 2000-08-31 15:29.  The svn_path library
now side-effects its operands again; all callers changed to account
for this, but not always exactly as they worked before.

* path.c, path.h (add_component_internal): revert to 1.7 behavior, but
also canonicalize result.
(svn_path_add_component_nts, svn_path_add_component): revert to 1.7
behavior.
(svn_path_remove_component): revert to 1.7 behavior and prototype.

* delta_parse.c (maybe_derive_ancestry): dup a new path and add name
to it as a component, to get ancestor.

* adm_files.c: revert to 1.5:
(extend_with_adm_name): back to this name instead of `make_adm_path',
callers changed accordingly.
(chop_admin_name): restored, calls restored as well.

* util.c (svn_wc__ensure_directory): dup a new path, then shorten it,
when recursing.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): dup a new path, then operate on that.

Also, changes to accommodate new names:

* apply_delta.c (svn_wc_apply_delta): it's `svn_XML_parse' now, not
`svn_delta_parse'.
----------------------------
revision 1.9
date: 2000/08/31 20:47:57;  author: kfogel;  state: Exp;  lines: +3 -3
(add_component_internal): fix braino.
----------------------------
revision 1.8
date: 2000/08/31 20:29:43;  author: kfogel;  state: Exp;  lines: +36 -17
Change path library to always return non-shared results, instead of
side-effecting its arguments (part of making libsvn_wc insensitive to
whether delta traversal happens depth-first vs breadth-first):

* path.c (add_component_internal): make and return a new string,
canonicalizing it before returning.
(svn_path_add_component_nts, svn_path_add_component): return a new
string.
(svn_path_remove_component): return a new string, and take a new pool
arg therefore.

* delta_parse.c (maybe_derive_ancestry): use new svn_path semantics;
tighten up code and comments.

* adm_files.c (make_adm_path): replaces extend_with_adm_name(), no
longer requires the caller to "unmake" the name later.
Callers changed accordingly.
(chop_admin_name): removed, no longer necessary.

* util.c (svn_wc__ensure_directory): use new svn_path semantics,
improve comments.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): use new svn_path semantics.

Also, changes to accommodate new names:

* apply_delta.c (window_handler): it's "txdelta", not "delta".
----------------------------
revision 1.7
date: 2000/08/28 16:21:58;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.6
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.5
date: 2000/08/25 19:58:51;  author: kfogel;  state: Exp;  lines: +34 -5
More changes for context-sensitive delta application.

Do path canonicalization.
----------------------------
revision 1.4
date: 2000/08/25 19:07:36;  author: kfogel;  state: Exp;  lines: +13 -0
Make sure dest_dir is accounted for in delta application.

(maybe_prepend_dest): new func, makes sure delta activity happens in
the right place.

(svn_path_isempty): new func, helper for above.
----------------------------
revision 1.3
date: 2000/08/25 18:18:43;  author: kfogel;  state: Exp;  lines: +19 -1
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.2
date: 2000/08/22 19:55:08;  author: kfogel;  state: Exp;  lines: +12 -5
(SVN_PATH_LOCAL_STYLE, SVN_PATH_REPOS_STYLE): new #defines.

(svn_path_remove_component, svn_path_add_component,
svn_path_add_component_nts, add_path_internal): use them.

All callers changed.

This gives an interface handling both local paths (for files) and
repository paths (for ancestry), though the implementation is all
Unix-style right now, which is the same as repository style.
----------------------------
revision 1.1
date: 2000/08/22 17:30:33;  author: kfogel;  state: Exp;
Put mini-library for path manipulation into libsvn_subr.

(maybe_derive_ancestor): always set to a full ancestry path, derived
from both ancestors and names.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/svn_error.c,v
Working file: libsvn_subr/svn_error.c
head: 1.31
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 31;	selected revisions: 31
description:
----------------------------
revision 1.31
date: 2000/08/28 16:21:58;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.30
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.29
date: 2000/08/22 16:46:53;  author: sussman;  state: Exp;  lines: +16 -14

 * when printing errors, specify if svn-specific
 * fixed prop-delta handling routine
 * fixed prop-delta "delete" validation logic

Prop-deltas seem to work correctly now!
----------------------------
revision 1.28
date: 2000/08/21 19:52:23;  author: kfogel;  state: Exp;  lines: +4 -2
(svn_create_error): copy the message to permanent storage, so don't
have to worry about pointer lifetimes.
----------------------------
revision 1.27
date: 2000/08/11 17:13:50;  author: jimb;  state: Exp;  lines: +22 -0
* svn_error.h (svn_create_errorf): Use `extern' in declaration, although
it doesn't make any difference.

* svn_error.c: #include <stdarg.h> and "apr_strings.h", since we use
facilities they provide.
(svn_create_errorf): New function.
----------------------------
revision 1.26
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +6 -6
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.25
date: 2000/08/01 01:08:36;  author: sussman;  state: Exp;  lines: +2 -18
saving autoconf work
----------------------------
revision 1.24
date: 2000/07/27 04:16:00;  author: kfogel;  state: Exp;  lines: +1 -1
Fix format mismatch in fprintf().
----------------------------
revision 1.23
date: 2000/07/17 19:50:38;  author: sussman;  state: Exp;  lines: +1 -1
oops, I meant vfprintf
----------------------------
revision 1.22
date: 2000/07/17 19:23:31;  author: sussman;  state: Exp;  lines: +6 -1
fix default warning handler
----------------------------
revision 1.21
date: 2000/07/17 19:17:35;  author: sussman;  state: Exp;  lines: +15 -0
add warning hook to policy structure, replace warning calls appropriately.
----------------------------
revision 1.20
date: 2000/07/14 21:30:31;  author: sussman;  state: Exp;  lines: +12 -8
Added src_err field to error structure, changed calls to svn_create_error
----------------------------
revision 1.19
date: 2000/07/13 19:42:57;  author: sussman;  state: Exp;  lines: +6 -21
Removed FATAL flag from error structure.
----------------------------
revision 1.18
date: 2000/07/13 15:03:06;  author: gstein;  state: Exp;  lines: +5 -6
compilation fixes
----------------------------
revision 1.17
date: 2000/07/13 05:12:34;  author: sussman;  state: Exp;  lines: +14 -20

 * Removed ap_err and ap_description fields from error structure
 * svn_create_error() no longer tries to fill these fields
 * svn_handle_error() calls ap_canonical_error() and ap_strerror()
                      when printing error structure
----------------------------
revision 1.16
date: 2000/07/13 04:13:19;  author: sussman;  state: Exp;  lines: +5 -5
tweaky tweaky
----------------------------
revision 1.15
date: 2000/07/13 03:48:04;  author: dlr;  state: Exp;  lines: +2 -2
Corrected invalid pointer deference on assignment introduced during
last commit.
----------------------------
revision 1.14
date: 2000/07/13 03:15:55;  author: sussman;  state: Exp;  lines: +77 -15
error system now nests exceptions
----------------------------
revision 1.13
date: 2000/07/12 19:09:38;  author: kfogel;  state: Exp;  lines: +1 -1
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.12
date: 2000/07/12 00:21:27;  author: sussman;  state: Exp;  lines: +8 -0
svn_parse() now returns svn_error_t *, and takes ap_hash_t ** as an argument
----------------------------
revision 1.11
date: 2000/07/11 06:31:47;  author: kfogel;  state: Exp;  lines: +1 -1
Don't output that line of asterisks.
(Although we may have a server error prefix later, like CVS's "E ".
----------------------------
revision 1.10
date: 2000/07/10 22:37:30;  author: sussman;  state: Exp;  lines: +2 -3
nicer error printout
----------------------------
revision 1.9
date: 2000/07/07 00:45:20;  author: sussman;  state: Exp;  lines: +1 -1
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.8
date: 2000/07/06 04:41:24;  author: sussman;  state: Exp;  lines: +11 -12
bugfixes
----------------------------
revision 1.7
date: 2000/07/06 04:01:00;  author: sussman;  state: Exp;  lines: +2 -1
mmm, no more compiler warnings from -Wall...
----------------------------
revision 1.6
date: 2000/07/06 03:11:46;  author: sussman;  state: Exp;  lines: +19 -10
svn_error.c and svn_parse.c actually compile now.
----------------------------
revision 1.5
date: 2000/07/05 22:58:53;  author: sussman;  state: Exp;  lines: +6 -1
removing uncessary alloc files, we're using apr pools now.
----------------------------
revision 1.4
date: 2000/07/04 01:47:25;  author: sussman;  state: Exp;  lines: +6 -2
save save save
----------------------------
revision 1.3
date: 2000/07/04 01:12:02;  author: sussman;  state: Exp;  lines: +15 -0
error handler
----------------------------
revision 1.2
date: 2000/07/04 00:52:09;  author: sussman;  state: Exp;  lines: +12 -0
simple error handling stuff started
----------------------------
revision 1.1
date: 2000/07/03 23:22:45;  author: sussman;  state: Exp;
adding error handling files
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/Attic/svn_error.h,v
Working file: libsvn_subr/svn_error.h
head: 1.26
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 26;	selected revisions: 26
description:
----------------------------
revision 1.26
date: 2000/07/17 21:47:48;  author: sussman;  state: dead;  lines: +0 -0
moved headers to include/
----------------------------
revision 1.25
date: 2000/07/17 21:09:00;  author: jimb;  state: Exp;  lines: +3 -3
Rename symbols used to protect header files from multiple #inclusion
so the symbols don't tread on the system C library's name space.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.24
date: 2000/07/17 19:17:35;  author: sussman;  state: Exp;  lines: +4 -0
add warning hook to policy structure, replace warning calls appropriately.
----------------------------
revision 1.23
date: 2000/07/17 18:17:43;  author: sussman;  state: Exp;  lines: +1 -1
tr/SVN_SUCCESS/SVN_NO_ERROR
----------------------------
revision 1.22
date: 2000/07/17 15:57:24;  author: sussman;  state: Exp;  lines: +1 -0

Major rewrite of Subversion Server logic: instead of 15 wrappered
filesystem calls, we now have *one* filesystem wrapper that takes a
svn_fsrequest_t structure as input.  MUCH CLEANER.
----------------------------
revision 1.21
date: 2000/07/17 14:09:46;  author: sussman;  state: Exp;  lines: +6 -4

No subversion routine calls svn_handle_error() anymore; instead,
warnings are created by generating & nesting a stack of errors of type
SVN_WARNING.  At the end of the routine, the batch (stack) is
returned.  Applications that have their own error-handling code should
recognized the SVN_WARNING type and realize it's non-fatal.
----------------------------
revision 1.20
date: 2000/07/15 00:14:48;  author: sussman;  state: Exp;  lines: +1 -0
Fleshing out lots of server routines... much stuff.
----------------------------
revision 1.19
date: 2000/07/14 21:30:31;  author: sussman;  state: Exp;  lines: +8 -6
Added src_err field to error structure, changed calls to svn_create_error
----------------------------
revision 1.18
date: 2000/07/13 22:07:51;  author: kfogel;  state: Exp;  lines: +1 -14
Got rid of SVN_RETURN_IF_ERROR() and SVN_RETURN_WRAPPED_ERROR()
macros; expand to inline code everywhere they had been used.

There was a general consensus that a macro affecting control flow must
meet three criteria:

   1. The need must be compelling (for example, it replaces very
      complex inline code).

   2. Its meaning must be obvious from looking at a use of the macro
      (without reference to its expansion).

   3. It must work in any context.

These macros probably met 2 and 3, but not 1.
----------------------------
revision 1.17
date: 2000/07/13 19:42:57;  author: sussman;  state: Exp;  lines: +2 -10
Removed FATAL flag from error structure.
----------------------------
revision 1.16
date: 2000/07/13 15:03:06;  author: gstein;  state: Exp;  lines: +4 -4
compilation fixes
----------------------------
revision 1.15
date: 2000/07/13 12:05:58;  author: gstein;  state: Exp;  lines: +2 -2
tweak the macros so they bind properly within an enclosing if/else construct
----------------------------
revision 1.14
date: 2000/07/13 05:12:34;  author: sussman;  state: Exp;  lines: +0 -4

 * Removed ap_err and ap_description fields from error structure
 * svn_create_error() no longer tries to fill these fields
 * svn_handle_error() calls ap_canonical_error() and ap_strerror()
                      when printing error structure
----------------------------
revision 1.13
date: 2000/07/13 04:13:19;  author: sussman;  state: Exp;  lines: +2 -2
tweaky tweaky
----------------------------
revision 1.12
date: 2000/07/13 03:15:55;  author: sussman;  state: Exp;  lines: +53 -11
error system now nests exceptions
----------------------------
revision 1.11
date: 2000/07/12 21:29:33;  author: sussman;  state: Exp;  lines: +1 -1
prefixed SVN_RETURN_IF_ERROR, and removed curly braces from it.
----------------------------
revision 1.10
date: 2000/07/12 03:20:43;  author: sussman;  state: Exp;  lines: +9 -0
saving work
----------------------------
revision 1.9
date: 2000/07/12 00:21:27;  author: sussman;  state: Exp;  lines: +1 -1
svn_parse() now returns svn_error_t *, and takes ap_hash_t ** as an argument
----------------------------
revision 1.8
date: 2000/07/11 06:29:47;  author: kfogel;  state: Exp;  lines: +3 -0
Define SVN_FATAL and SVN_NON_FATAL, use in all error calls.
(For readability).
----------------------------
revision 1.7
date: 2000/07/08 00:44:14;  author: sussman;  state: Exp;  lines: +3 -2
saving lots of random work threads.
----------------------------
revision 1.6
date: 2000/07/06 04:41:24;  author: sussman;  state: Exp;  lines: +1 -1
bugfixes
----------------------------
revision 1.5
date: 2000/07/06 03:11:46;  author: sussman;  state: Exp;  lines: +5 -2
svn_error.c and svn_parse.c actually compile now.
----------------------------
revision 1.4
date: 2000/07/05 22:58:53;  author: sussman;  state: Exp;  lines: +3 -1
removing uncessary alloc files, we're using apr pools now.
----------------------------
revision 1.3
date: 2000/07/04 01:47:25;  author: sussman;  state: Exp;  lines: +12 -0
save save save
----------------------------
revision 1.2
date: 2000/07/04 00:52:09;  author: sussman;  state: Exp;  lines: +31 -0
simple error handling stuff started
----------------------------
revision 1.1
date: 2000/07/03 23:25:27;  author: kfogel;  state: Exp;
Move svn_error.h from include/ to svn_subr/, because it's an internal
interface, not an exported one.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/svn_parse.c,v
Working file: libsvn_subr/svn_parse.c
head: 1.35
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 35;	selected revisions: 35
description:
----------------------------
revision 1.35
date: 2000/08/28 16:21:58;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.34
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.33
date: 2000/08/18 16:44:26;  author: sussman;  state: Exp;  lines: +3 -3
Remove all cases of svn_string_print().

Remove compile warning on deltaparse-test.c.
----------------------------
revision 1.32
date: 2000/08/18 16:10:07;  author: kfogel;  state: Exp;  lines: +4 -6
(svn_string_dup2cstring, svn_string_compare_2cstring): removed, no
need for these funcs.

Rewrote test suite to exercise new functionality, and display results
readably.
----------------------------
revision 1.31
date: 2000/08/18 14:42:05;  author: kfogel;  state: Exp;  lines: +4 -4
(svn_string_dup2cstring, svn_string_ncreate, svn_string_appendbytes,
svn_string_chop): o-b-o-e repairs, thanks to Greg Stein
<gstein@lyra.org> for catching them early.

(svn_string_dup2cstring): new name for `svn_string_2cstring'.
----------------------------
revision 1.30
date: 2000/08/05 16:27:10;  author: kfogel;  state: Exp;  lines: +2 -2
Oops, a little too eager in the "FILE" ==> "file" conversion.
----------------------------
revision 1.29
date: 2000/08/05 16:26:12;  author: kfogel;  state: Exp;  lines: +9 -9
"FILE" ==> "file"
----------------------------
revision 1.28
date: 2000/08/03 14:39:44;  author: sussman;  state: Exp;  lines: +31 -31
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.27
date: 2000/07/17 19:17:35;  author: sussman;  state: Exp;  lines: +17 -47
add warning hook to policy structure, replace warning calls appropriately.
----------------------------
revision 1.26
date: 2000/07/17 18:17:43;  author: sussman;  state: Exp;  lines: +1 -1
tr/SVN_SUCCESS/SVN_NO_ERROR
----------------------------
revision 1.25
date: 2000/07/17 14:09:46;  author: sussman;  state: Exp;  lines: +46 -39

No subversion routine calls svn_handle_error() anymore; instead,
warnings are created by generating & nesting a stack of errors of type
SVN_WARNING.  At the end of the routine, the batch (stack) is
returned.  Applications that have their own error-handling code should
recognized the SVN_WARNING type and realize it's non-fatal.
----------------------------
revision 1.24
date: 2000/07/14 21:30:31;  author: sussman;  state: Exp;  lines: +7 -6
Added src_err field to error structure, changed calls to svn_create_error
----------------------------
revision 1.23
date: 2000/07/14 00:10:34;  author: sussman;  state: Exp;  lines: +8 -7
Changed the way server inits; fixed other random typos.
----------------------------
revision 1.22
date: 2000/07/13 19:42:57;  author: sussman;  state: Exp;  lines: +16 -9
Removed FATAL flag from error structure.
----------------------------
revision 1.21
date: 2000/07/13 03:15:55;  author: sussman;  state: Exp;  lines: +2 -2
error system now nests exceptions
----------------------------
revision 1.20
date: 2000/07/12 19:09:38;  author: kfogel;  state: Exp;  lines: +1 -1
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.19
date: 2000/07/12 00:51:13;  author: sussman;  state: Exp;  lines: +8 -8
prefixed all non-exported routines with svn_ to avoid namespace conflicts.
----------------------------
revision 1.18
date: 2000/07/12 00:42:46;  author: sussman;  state: Exp;  lines: +16 -10
parser stores string->data as a hash key now, not (string *), phew.
----------------------------
revision 1.17
date: 2000/07/12 00:21:27;  author: sussman;  state: Exp;  lines: +13 -14
svn_parse() now returns svn_error_t *, and takes ap_hash_t ** as an argument
----------------------------
revision 1.16
date: 2000/07/11 06:29:47;  author: kfogel;  state: Exp;  lines: +5 -5
Define SVN_FATAL and SVN_NON_FATAL, use in all error calls.
(For readability).
----------------------------
revision 1.15
date: 2000/07/08 00:44:14;  author: sussman;  state: Exp;  lines: +4 -2
saving lots of random work threads.
----------------------------
revision 1.14
date: 2000/07/07 20:03:18;  author: kfogel;  state: Exp;  lines: +54 -43
Revert formatting tweaks from previous commit.

Neurotic control tendencies *must be controlled*.
----------------------------
revision 1.13
date: 2000/07/07 19:57:07;  author: kfogel;  state: Exp;  lines: +46 -61
Change return conventions of slurp__to(), tweak some formatting.
----------------------------
revision 1.12
date: 2000/07/07 04:51:14;  author: sussman;  state: Exp;  lines: +29 -16
Parser bug fixed.  Test program works correctly, and successfully pretty-prints our hash of hashes.  Sorry, Karl, I beat you to it. :)
----------------------------
revision 1.11
date: 2000/07/07 00:45:20;  author: sussman;  state: Exp;  lines: +83 -0
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.10
date: 2000/07/06 23:32:44;  author: sussman;  state: Exp;  lines: +2 -71
moved some convenient string routines from svn_parse.c to svn_string.c
----------------------------
revision 1.9
date: 2000/07/06 04:41:24;  author: sussman;  state: Exp;  lines: +2 -2
bugfixes
----------------------------
revision 1.8
date: 2000/07/06 04:01:00;  author: sussman;  state: Exp;  lines: +1 -1
mmm, no more compiler warnings from -Wall...
----------------------------
revision 1.7
date: 2000/07/06 03:11:46;  author: sussman;  state: Exp;  lines: +12 -14
svn_error.c and svn_parse.c actually compile now.
----------------------------
revision 1.6
date: 2000/07/06 02:37:47;  author: sussman;  state: Exp;  lines: +102 -24
time to write a parser test program
----------------------------
revision 1.5
date: 2000/07/06 01:06:14;  author: sussman;  state: Exp;  lines: +151 -31
almost done coding parser... heh
----------------------------
revision 1.4
date: 2000/07/06 00:22:45;  author: sussman;  state: Exp;  lines: +109 -12
save, save, save...
----------------------------
revision 1.3
date: 2000/07/05 22:58:53;  author: sussman;  state: Exp;  lines: +23 -1
removing uncessary alloc files, we're using apr pools now.
----------------------------
revision 1.2
date: 2000/07/05 19:51:43;  author: sussman;  state: Exp;  lines: +14 -8
added svn_string_2cstring()
----------------------------
revision 1.1
date: 2000/07/05 19:22:00;  author: sussman;  state: Exp;
started writing parser
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/Attic/svn_parse.h,v
Working file: libsvn_subr/svn_parse.h
head: 1.9
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 9;	selected revisions: 9
description:
----------------------------
revision 1.9
date: 2000/07/17 21:47:48;  author: sussman;  state: dead;  lines: +0 -0
moved headers to include/
----------------------------
revision 1.8
date: 2000/07/17 21:09:00;  author: jimb;  state: Exp;  lines: +3 -3
Rename symbols used to protect header files from multiple #inclusion
so the symbols don't tread on the system C library's name space.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.7
date: 2000/07/14 00:10:34;  author: sussman;  state: Exp;  lines: +1 -1
Changed the way server inits; fixed other random typos.
----------------------------
revision 1.6
date: 2000/07/12 00:21:27;  author: sussman;  state: Exp;  lines: +4 -2
svn_parse() now returns svn_error_t *, and takes ap_hash_t ** as an argument
----------------------------
revision 1.5
date: 2000/07/07 20:03:18;  author: kfogel;  state: Exp;  lines: +11 -5
Revert formatting tweaks from previous commit.

Neurotic control tendencies *must be controlled*.
----------------------------
revision 1.4
date: 2000/07/07 19:57:07;  author: kfogel;  state: Exp;  lines: +5 -11
Change return conventions of slurp__to(), tweak some formatting.
----------------------------
revision 1.3
date: 2000/07/07 00:45:20;  author: sussman;  state: Exp;  lines: +11 -0
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.2
date: 2000/07/06 03:11:46;  author: sussman;  state: Exp;  lines: +20 -0
svn_error.c and svn_parse.c actually compile now.
----------------------------
revision 1.1
date: 2000/07/05 19:22:00;  author: sussman;  state: Exp;
started writing parser
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/parsetest/Makefile,v
Working file: libsvn_subr/parsetest/Makefile
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/07/06 03:50:13;  author: sussman;  state: Exp;  lines: +7 -3
debugging parser test
----------------------------
revision 1.1
date: 2000/07/06 03:11:47;  author: sussman;  state: Exp;
svn_error.c and svn_parse.c actually compile now.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/parsetest/configfile,v
Working file: libsvn_subr/parsetest/configfile
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/07/08 00:44:14;  author: sussman;  state: Exp;  lines: +5 -0
saving lots of random work threads.
----------------------------
revision 1.3
date: 2000/07/07 20:53:32;  author: sussman;  state: Exp;  lines: +1 -1
save work\!
----------------------------
revision 1.2
date: 2000/07/07 04:51:14;  author: sussman;  state: Exp;  lines: +28 -10
Parser bug fixed.  Test program works correctly, and successfully pretty-prints our hash of hashes.  Sorry, Karl, I beat you to it. :)
----------------------------
revision 1.1
date: 2000/07/06 03:50:13;  author: sussman;  state: Exp;
debugging parser test
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/parsetest/parsetest.c,v
Working file: libsvn_subr/parsetest/parsetest.c
head: 1.9
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 9;	selected revisions: 9
description:
----------------------------
revision 1.9
date: 2000/08/03 14:39:45;  author: sussman;  state: Exp;  lines: +8 -8
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.8
date: 2000/07/12 19:09:41;  author: kfogel;  state: Exp;  lines: +1 -1
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.7
date: 2000/07/12 00:21:28;  author: sussman;  state: Exp;  lines: +7 -1
svn_parse() now returns svn_error_t *, and takes ap_hash_t ** as an argument
----------------------------
revision 1.6
date: 2000/07/07 00:45:21;  author: sussman;  state: Exp;  lines: +1 -1
debugging parser; svn_string_print is temporarily altered
----------------------------
revision 1.5
date: 2000/07/06 23:32:44;  author: sussman;  state: Exp;  lines: +17 -3
moved some convenient string routines from svn_parse.c to svn_string.c
----------------------------
revision 1.4
date: 2000/07/06 04:41:24;  author: sussman;  state: Exp;  lines: +2 -0
bugfixes
----------------------------
revision 1.3
date: 2000/07/06 04:01:00;  author: sussman;  state: Exp;  lines: +2 -2
mmm, no more compiler warnings from -Wall...
----------------------------
revision 1.2
date: 2000/07/06 03:50:13;  author: sussman;  state: Exp;  lines: +26 -0
debugging parser test
----------------------------
revision 1.1
date: 2000/07/06 03:11:47;  author: sussman;  state: Exp;
svn_error.c and svn_parse.c actually compile now.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/tests/.cvsignore,v
Working file: libsvn_subr/tests/.cvsignore
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/01 21:36:43;  author: sussman;  state: Exp;  lines: +3 -1
tweaking .cvsignores
----------------------------
revision 1.1
date: 2000/08/01 21:31:17;  author: sussman;  state: Exp;
adding .cvsignore files all around which ignore automake/autoconf stuff
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/tests/Attic/Makefile,v
Working file: libsvn_subr/tests/Makefile
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/01 01:24:47;  author: sussman;  state: dead;  lines: +0 -0
autoconf libsvn_subr/tests/
----------------------------
revision 1.1
date: 2000/07/27 21:12:27;  author: sussman;  state: Exp;
Header file reorganization
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/tests/Makefile.am,v
Working file: libsvn_subr/tests/Makefile.am
head: 1.5
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.5
date: 2000/08/28 20:11:24;  author: sussman;  state: Exp;  lines: +5 -4
Factorized main() out of standard svn test programs.
----------------------------
revision 1.4
date: 2000/08/25 20:42:42;  author: sussman;  state: Exp;  lines: +21 -2
Convert hashdump-test to new testing system
----------------------------
revision 1.3
date: 2000/08/08 18:14:57;  author: kfogel;  state: Exp;  lines: +1 -1
Add new paths to LD_LIBRARY_PATH.

Don't install test programs in a "make install".
----------------------------
revision 1.2
date: 2000/08/01 20:11:52;  author: sussman;  state: Exp;  lines: +3 -0
<make check> now runs automated tests in libsvn_string and libsvn_subr
----------------------------
revision 1.1
date: 2000/08/01 01:24:47;  author: sussman;  state: Exp;
autoconf libsvn_subr/tests/
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/tests/hashdump-test.c,v
Working file: libsvn_subr/tests/hashdump-test.c
head: 1.11
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 11;	selected revisions: 11
description:
----------------------------
revision 1.11
date: 2000/08/28 20:11:24;  author: sussman;  state: Exp;  lines: +10 -108
Factorized main() out of standard svn test programs.
----------------------------
revision 1.10
date: 2000/08/28 16:21:58;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.9
date: 2000/08/25 21:19:21;  author: sussman;  state: Exp;  lines: +56 -3
Improve hashdump testing (new test)
----------------------------
revision 1.8
date: 2000/08/25 20:42:42;  author: sussman;  state: Exp;  lines: +157 -39
Convert hashdump-test to new testing system
----------------------------
revision 1.7
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.6
date: 2000/08/05 22:20:04;  author: kfogel;  state: Exp;  lines: +1 -1
Correct path to find svn-dev.el in local vars section.
----------------------------
revision 1.5
date: 2000/08/03 20:22:32;  author: kfogel;  state: Exp;  lines: +1 -1
(main): pass 0, not NULL, as arg 2 to svn_create_error().
----------------------------
revision 1.4
date: 2000/08/03 14:39:45;  author: sussman;  state: Exp;  lines: +20 -20
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.3
date: 2000/07/27 21:57:59;  author: sussman;  state: Exp;  lines: +37 -6
Test program works;  we can read/write hash tables to disk now.
----------------------------
revision 1.2
date: 2000/07/27 21:12:27;  author: sussman;  state: Exp;  lines: +2 -2
Header file reorganization
----------------------------
revision 1.1
date: 2000/07/27 20:25:05;  author: sussman;  state: Exp;
Movin' stuff around
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_subr/tests/Attic/hashdump-test.sh,v
Working file: libsvn_subr/tests/hashdump-test.sh
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/25 21:21:46;  author: sussman;  state: dead;  lines: +0 -0
don't need script anymore
----------------------------
revision 1.1
date: 2000/08/01 20:11:52;  author: sussman;  state: Exp;
<make check> now runs automated tests in libsvn_string and libsvn_subr
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/README,v
Working file: libsvn_svr/README
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/07/13 05:34:26;  author: sussman;  state: Exp;  lines: +48 -7
tweaking README
----------------------------
revision 1.2
date: 2000/07/06 23:32:44;  author: sussman;  state: Exp;  lines: +23 -10
moved some convenient string routines from svn_parse.c to svn_string.c
----------------------------
revision 1.1
date: 2000/06/19 21:14:13;  author: sussman;  state: Exp;
save
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/server_fs.c,v
Working file: libsvn_svr/server_fs.c
head: 1.32
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 32;	selected revisions: 32
description:
----------------------------
revision 1.32
date: 2000/08/28 16:21:58;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.31
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.30
date: 2000/08/03 14:39:45;  author: sussman;  state: Exp;  lines: +11 -11
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.29
date: 2000/07/18 20:19:51;  author: sussman;  state: Exp;  lines: +4 -43
Removed policy-level permission-checking from server;  redundant with Apache.
----------------------------
revision 1.28
date: 2000/07/18 16:51:32;  author: sussman;  state: Exp;  lines: +546 -267
Compromise on server logic:  18 filesystem wrappers restored, each calling helper routine that contains core logic.
----------------------------
revision 1.27
date: 2000/07/17 18:17:43;  author: sussman;  state: Exp;  lines: +8 -8
tr/SVN_SUCCESS/SVN_NO_ERROR
----------------------------
revision 1.26
date: 2000/07/17 16:46:27;  author: sussman;  state: Exp;  lines: +9 -7
tweak-a tweak-a
----------------------------
revision 1.25
date: 2000/07/17 15:57:24;  author: sussman;  state: Exp;  lines: +255 -686

Major rewrite of Subversion Server logic: instead of 15 wrappered
filesystem calls, we now have *one* filesystem wrapper that takes a
svn_fsrequest_t structure as input.  MUCH CLEANER.
----------------------------
revision 1.24
date: 2000/07/15 00:14:49;  author: sussman;  state: Exp;  lines: +10 -3
Fleshing out lots of server routines... much stuff.
----------------------------
revision 1.23
date: 2000/07/14 00:10:34;  author: sussman;  state: Exp;  lines: +3 -3
Changed the way server inits; fixed other random typos.
----------------------------
revision 1.22
date: 2000/07/13 22:07:55;  author: kfogel;  state: Exp;  lines: +12 -6
Got rid of SVN_RETURN_IF_ERROR() and SVN_RETURN_WRAPPED_ERROR()
macros; expand to inline code everywhere they had been used.

There was a general consensus that a macro affecting control flow must
meet three criteria:

   1. The need must be compelling (for example, it replaces very
      complex inline code).

   2. Its meaning must be obvious from looking at a use of the macro
      (without reference to its expansion).

   3. It must work in any context.

These macros probably met 2 and 3, but not 1.
----------------------------
revision 1.21
date: 2000/07/13 19:42:57;  author: sussman;  state: Exp;  lines: +1 -1
Removed FATAL flag from error structure.
----------------------------
revision 1.20
date: 2000/07/13 04:20:06;  author: sussman;  state: Exp;  lines: +19 -19
placed svn__ prefix on all global routines not meant for client use
----------------------------
revision 1.19
date: 2000/07/13 03:15:56;  author: sussman;  state: Exp;  lines: +4 -3
error system now nests exceptions
----------------------------
revision 1.18
date: 2000/07/12 21:29:33;  author: sussman;  state: Exp;  lines: +4 -4
prefixed SVN_RETURN_IF_ERROR, and removed curly braces from it.
----------------------------
revision 1.17
date: 2000/07/12 20:52:23;  author: kfogel;  state: Exp;  lines: +16 -16
Namespace-protect svn_svr_action_t, to avoid enumbiguities.
(The prefix is "svn_action_".  While "svn_svr_action_" would probably
have been preferable, it's pretty long, and even starts getting close
to the 32-char limit, as in `svn_svr_action_get_dirent_propnames'.)

Use `svn_delta_action_t' instead of `svn_change_action_t', due to
possible noun/verb confusion.

All callers changed.
----------------------------
revision 1.16
date: 2000/07/12 19:09:24;  author: kfogel;  state: Exp;  lines: +3 -3
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.15
date: 2000/07/12 03:20:43;  author: sussman;  state: Exp;  lines: +22 -40
saving work
----------------------------
revision 1.14
date: 2000/07/12 01:33:43;  author: kfogel;  state: Exp;  lines: +6 -6
Eliminate typedef of `svn_proplist_t' to `ap_hash_t'.

Change all references to use `ap_hash_t'.

We'll be good, GCC.  Promise.
----------------------------
revision 1.13
date: 2000/07/12 01:19:53;  author: sussman;  state: Exp;  lines: +92 -59
checking in current state, so karl can do global search/replace
----------------------------
revision 1.12
date: 2000/07/11 06:29:44;  author: kfogel;  state: Exp;  lines: +16 -16
Define SVN_FATAL and SVN_NON_FATAL, use in all error calls.
(For readability).
----------------------------
revision 1.11
date: 2000/07/11 01:28:21;  author: sussman;  state: Exp;  lines: +1 -1
saving work, working on loading plugins
----------------------------
revision 1.10
date: 2000/07/04 20:28:27;  author: sussman;  state: Exp;  lines: +598 -31
really big checkin
----------------------------
revision 1.9
date: 2000/07/04 03:17:23;  author: sussman;  state: Exp;  lines: +89 -6
fleshing out filesystem wrappers in full, ahhh.
----------------------------
revision 1.8
date: 2000/07/04 02:30:33;  author: sussman;  state: Exp;  lines: +94 -26
adding internal, non-exported routines to server library
----------------------------
revision 1.7
date: 2000/07/04 01:47:24;  author: sussman;  state: Exp;  lines: +24 -11
save save save
----------------------------
revision 1.6
date: 2000/07/03 19:56:01;  author: sussman;  state: Exp;  lines: +49 -34
Many changes; using svn_strings, ap_arrays, ap_hashes, and ap_pools in many new places.
----------------------------
revision 1.5
date: 2000/07/01 01:42:17;  author: sussman;  state: Exp;  lines: +0 -1
save, save, save
----------------------------
revision 1.4
date: 2000/06/16 22:58:56;  author: sussman;  state: Exp;  lines: +1 -1
plugins now register themselves, rather than the server digging for them
----------------------------
revision 1.3
date: 2000/06/16 22:22:39;  author: sussman;  state: Exp;  lines: +49 -7
wrote authorization_hooks glue code iterator thingie
----------------------------
revision 1.2
date: 2000/06/16 16:56:54;  author: sussman;  state: Exp;  lines: +23 -13
save work
----------------------------
revision 1.1
date: 2000/06/15 22:59:42;  author: sussman;  state: Exp;
started writing server code and a first plugin
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/server_init.c,v
Working file: libsvn_svr/server_init.c
head: 1.32
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 32;	selected revisions: 32
description:
----------------------------
revision 1.32
date: 2000/08/28 16:21:58;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.31
date: 2000/08/25 20:09:07;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.30
date: 2000/08/18 16:10:09;  author: kfogel;  state: Exp;  lines: +9 -14
(svn_string_dup2cstring, svn_string_compare_2cstring): removed, no
need for these funcs.

Rewrote test suite to exercise new functionality, and display results
readably.
----------------------------
revision 1.29
date: 2000/08/18 14:42:07;  author: kfogel;  state: Exp;  lines: +3 -3
(svn_string_dup2cstring, svn_string_ncreate, svn_string_appendbytes,
svn_string_chop): o-b-o-e repairs, thanks to Greg Stein
<gstein@lyra.org> for catching them early.

(svn_string_dup2cstring): new name for `svn_string_2cstring'.
----------------------------
revision 1.28
date: 2000/08/03 14:39:45;  author: sussman;  state: Exp;  lines: +31 -31
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.27
date: 2000/07/17 19:17:35;  author: sussman;  state: Exp;  lines: +15 -38
add warning hook to policy structure, replace warning calls appropriately.
----------------------------
revision 1.26
date: 2000/07/17 18:17:43;  author: sussman;  state: Exp;  lines: +7 -7
tr/SVN_SUCCESS/SVN_NO_ERROR
----------------------------
revision 1.25
date: 2000/07/17 16:46:27;  author: sussman;  state: Exp;  lines: +6 -6
tweak-a tweak-a
----------------------------
revision 1.24
date: 2000/07/17 14:09:46;  author: sussman;  state: Exp;  lines: +18 -10

No subversion routine calls svn_handle_error() anymore; instead,
warnings are created by generating & nesting a stack of errors of type
SVN_WARNING.  At the end of the routine, the batch (stack) is
returned.  Applications that have their own error-handling code should
recognized the SVN_WARNING type and realize it's non-fatal.
----------------------------
revision 1.23
date: 2000/07/15 00:14:49;  author: sussman;  state: Exp;  lines: +78 -17
Fleshing out lots of server routines... much stuff.
----------------------------
revision 1.22
date: 2000/07/14 21:30:31;  author: sussman;  state: Exp;  lines: +15 -7
Added src_err field to error structure, changed calls to svn_create_error
----------------------------
revision 1.21
date: 2000/07/14 00:10:34;  author: sussman;  state: Exp;  lines: +50 -39
Changed the way server inits; fixed other random typos.
----------------------------
revision 1.20
date: 2000/07/13 19:42:57;  author: sussman;  state: Exp;  lines: +7 -11
Removed FATAL flag from error structure.
----------------------------
revision 1.19
date: 2000/07/13 04:20:06;  author: sussman;  state: Exp;  lines: +3 -3
placed svn__ prefix on all global routines not meant for client use
----------------------------
revision 1.18
date: 2000/07/12 19:09:24;  author: kfogel;  state: Exp;  lines: +2 -2
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.17
date: 2000/07/12 03:20:43;  author: sussman;  state: Exp;  lines: +32 -9
saving work
----------------------------
revision 1.16
date: 2000/07/12 01:33:43;  author: kfogel;  state: Exp;  lines: +2 -2
Eliminate typedef of `svn_proplist_t' to `ap_hash_t'.

Change all references to use `ap_hash_t'.

We'll be good, GCC.  Promise.
----------------------------
revision 1.15
date: 2000/07/12 01:19:53;  author: sussman;  state: Exp;  lines: +2 -1
checking in current state, so karl can do global search/replace
----------------------------
revision 1.14
date: 2000/07/11 06:29:44;  author: kfogel;  state: Exp;  lines: +4 -3
Define SVN_FATAL and SVN_NON_FATAL, use in all error calls.
(For readability).
----------------------------
revision 1.13
date: 2000/07/11 01:28:21;  author: sussman;  state: Exp;  lines: +78 -18
saving work, working on loading plugins
----------------------------
revision 1.12
date: 2000/07/08 01:06:46;  author: sussman;  state: Exp;  lines: +2 -3
svn_svr_init() test works...
----------------------------
revision 1.11
date: 2000/07/08 00:44:13;  author: sussman;  state: Exp;  lines: +39 -2
saving lots of random work threads.
----------------------------
revision 1.10
date: 2000/07/07 20:53:32;  author: sussman;  state: Exp;  lines: +30 -22
save work\!
----------------------------
revision 1.9
date: 2000/07/05 19:21:59;  author: sussman;  state: Exp;  lines: +24 -11
started writing parser
----------------------------
revision 1.8
date: 2000/07/04 01:47:24;  author: sussman;  state: Exp;  lines: +13 -4
save save save
----------------------------
revision 1.7
date: 2000/07/04 01:12:02;  author: sussman;  state: Exp;  lines: +3 -3
error handler
----------------------------
revision 1.6
date: 2000/07/04 00:52:09;  author: sussman;  state: Exp;  lines: +1 -1
simple error handling stuff started
----------------------------
revision 1.5
date: 2000/07/03 19:56:01;  author: sussman;  state: Exp;  lines: +27 -5
Many changes; using svn_strings, ap_arrays, ap_hashes, and ap_pools in many new places.
----------------------------
revision 1.4
date: 2000/07/01 01:42:17;  author: sussman;  state: Exp;  lines: +2 -2
save, save, save
----------------------------
revision 1.3
date: 2000/06/16 22:58:56;  author: sussman;  state: Exp;  lines: +13 -3
plugins now register themselves, rather than the server digging for them
----------------------------
revision 1.2
date: 2000/06/16 21:21:08;  author: sussman;  state: Exp;  lines: +15 -8
save save save
----------------------------
revision 1.1
date: 2000/06/16 17:33:45;  author: sussman;  state: Exp;
saving work
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/svn.conf,v
Working file: libsvn_svr/svn.conf
head: 1.5
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.5
date: 2000/07/18 20:19:51;  author: sussman;  state: Exp;  lines: +0 -25
Removed policy-level permission-checking from server;  redundant with Apache.
----------------------------
revision 1.4
date: 2000/07/14 00:10:34;  author: sussman;  state: Exp;  lines: +5 -3
Changed the way server inits; fixed other random typos.
----------------------------
revision 1.3
date: 2000/07/07 20:53:32;  author: sussman;  state: Exp;  lines: +19 -15
save work\!
----------------------------
revision 1.2
date: 2000/07/04 18:17:57;  author: sussman;  state: Exp;  lines: +48 -57
rewrote two example config files using ben's proposed new config file format
----------------------------
revision 1.1
date: 2000/06/10 17:21:11;  author: sussman;  state: Exp;
sample svn.conf file, for general subversion server behavior (*not* per-repository)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/Attic/svn_security,v
Working file: libsvn_svr/svn_security
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/06/15 22:59:42;  author: sussman;  state: dead;  lines: +0 -0
started writing server code and a first plugin
----------------------------
revision 1.3
date: 2000/06/15 18:25:27;  author: sussman;  state: Exp;  lines: +2 -1
tweak
----------------------------
revision 1.2
date: 2000/06/15 17:14:15;  author: sussman;  state: Exp;  lines: +3 -3
fixed backslashes
----------------------------
revision 1.1
date: 2000/06/14 22:20:29;  author: sussman;  state: Exp;
added sample per-repository permissions file
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/plugin_security/plugin_security.c,v
Working file: libsvn_svr/plugin_security/plugin_security.c
head: 1.20
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 20;	selected revisions: 20
description:
----------------------------
revision 1.20
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.19
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.18
date: 2000/08/03 14:39:46;  author: sussman;  state: Exp;  lines: +2 -2
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.17
date: 2000/07/17 18:17:44;  author: sussman;  state: Exp;  lines: +2 -2
tr/SVN_SUCCESS/SVN_NO_ERROR
----------------------------
revision 1.16
date: 2000/07/17 15:57:25;  author: sussman;  state: Exp;  lines: +1 -5

Major rewrite of Subversion Server logic: instead of 15 wrappered
filesystem calls, we now have *one* filesystem wrapper that takes a
svn_fsrequest_t structure as input.  MUCH CLEANER.
----------------------------
revision 1.15
date: 2000/07/15 00:14:49;  author: sussman;  state: Exp;  lines: +18 -15
Fleshing out lots of server routines... much stuff.
----------------------------
revision 1.14
date: 2000/07/13 22:07:57;  author: kfogel;  state: Exp;  lines: +3 -2
Got rid of SVN_RETURN_IF_ERROR() and SVN_RETURN_WRAPPED_ERROR()
macros; expand to inline code everywhere they had been used.

There was a general consensus that a macro affecting control flow must
meet three criteria:

   1. The need must be compelling (for example, it replaces very
      complex inline code).

   2. Its meaning must be obvious from looking at a use of the macro
      (without reference to its expansion).

   3. It must work in any context.

These macros probably met 2 and 3, but not 1.
----------------------------
revision 1.13
date: 2000/07/13 03:15:56;  author: sussman;  state: Exp;  lines: +1 -1
error system now nests exceptions
----------------------------
revision 1.12
date: 2000/07/12 21:29:33;  author: sussman;  state: Exp;  lines: +1 -1
prefixed SVN_RETURN_IF_ERROR, and removed curly braces from it.
----------------------------
revision 1.11
date: 2000/07/12 19:09:27;  author: kfogel;  state: Exp;  lines: +1 -1
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.10
date: 2000/07/12 03:20:43;  author: sussman;  state: Exp;  lines: +10 -4
saving work
----------------------------
revision 1.9
date: 2000/07/11 01:28:22;  author: sussman;  state: Exp;  lines: +3 -2
saving work, working on loading plugins
----------------------------
revision 1.8
date: 2000/07/07 20:53:32;  author: sussman;  state: Exp;  lines: +10 -7
save work\!
----------------------------
revision 1.7
date: 2000/07/04 20:28:27;  author: sussman;  state: Exp;  lines: +1 -0
really big checkin
----------------------------
revision 1.6
date: 2000/07/01 01:42:17;  author: sussman;  state: Exp;  lines: +22 -21
save, save, save
----------------------------
revision 1.5
date: 2000/06/16 22:58:56;  author: sussman;  state: Exp;  lines: +15 -7
plugins now register themselves, rather than the server digging for them
----------------------------
revision 1.4
date: 2000/06/16 21:21:08;  author: sussman;  state: Exp;  lines: +7 -20
save save save
----------------------------
revision 1.3
date: 2000/06/16 17:33:45;  author: sussman;  state: Exp;  lines: +17 -9
saving work
----------------------------
revision 1.2
date: 2000/06/16 16:56:54;  author: sussman;  state: Exp;  lines: +76 -12
save work
----------------------------
revision 1.1
date: 2000/06/15 22:59:43;  author: sussman;  state: Exp;
started writing server code and a first plugin
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/plugin_security/svn_security,v
Working file: libsvn_svr/plugin_security/svn_security
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/07/04 18:17:58;  author: sussman;  state: Exp;  lines: +20 -19
rewrote two example config files using ben's proposed new config file format
----------------------------
revision 1.1
date: 2000/06/15 22:59:43;  author: sussman;  state: Exp;
started writing server code and a first plugin
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/tests/Makefile,v
Working file: libsvn_svr/tests/Makefile
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/07/08 05:23:12;  author: sussman;  state: Exp;
littletest program for svn_svr_init()
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/tests/svrtest.c,v
Working file: libsvn_svr/tests/svrtest.c
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/08/03 14:39:46;  author: sussman;  state: Exp;  lines: +8 -8
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.3
date: 2000/07/13 19:42:58;  author: sussman;  state: Exp;  lines: +1 -1
Removed FATAL flag from error structure.
----------------------------
revision 1.2
date: 2000/07/12 19:09:30;  author: kfogel;  state: Exp;  lines: +2 -2
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.1
date: 2000/07/08 05:23:12;  author: sussman;  state: Exp;
littletest program for svn_svr_init()
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_svr/tests/testpolicy.conf,v
Working file: libsvn_svr/tests/testpolicy.conf
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/07/08 05:23:12;  author: sussman;  state: Exp;
littletest program for svn_svr_init()
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/Makefile,v
Working file: libsvn_vcdiff/Makefile
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/06/20 22:16:57;  author: kfogel;  state: Exp;  lines: +7 -2
Added test with example text from vdelta paper.

(make_vdelta): replaces take_delta().
Describe algorithm and planned improvements in expository comment at top.
DTRT at end of sequence.
Note o-b-o-e.

(main): Allow deltas against null source, since it's just compression
anyway.
----------------------------
revision 1.2
date: 2000/06/19 23:48:33;  author: kfogel;  state: Exp;  lines: +24 -1
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
----------------------------
revision 1.1
date: 2000/06/16 01:24:13;  author: kfogel;  state: Exp;
Started hash tables for use in vdelta.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/README,v
Working file: libsvn_vcdiff/README
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/14 01:21:02;  author: kfogel;  state: Exp;
moved from ../libsvn_vdiff
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/draft-korn-vcdiff-01.txt,v
Working file: libsvn_vcdiff/draft-korn-vcdiff-01.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/14 01:21:02;  author: kfogel;  state: Exp;
moved from ../libsvn_vdiff
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/hash.c,v
Working file: libsvn_vcdiff/hash.c
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/06/19 23:48:33;  author: kfogel;  state: Exp;  lines: +14 -15
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
----------------------------
revision 1.2
date: 2000/06/16 01:24:43;  author: kfogel;  state: Exp;  lines: +0 -2
silly formatting fix
----------------------------
revision 1.1
date: 2000/06/16 01:24:13;  author: kfogel;  state: Exp;
Started hash tables for use in vdelta.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/hash.h,v
Working file: libsvn_vcdiff/hash.h
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.3
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.2
date: 2000/06/19 23:48:33;  author: kfogel;  state: Exp;  lines: +8 -3
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
----------------------------
revision 1.1
date: 2000/06/16 01:24:13;  author: kfogel;  state: Exp;
Started hash tables for use in vdelta.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/vdelta.c,v
Working file: libsvn_vcdiff/vdelta.c
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.5
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.4
date: 2000/06/20 22:16:57;  author: kfogel;  state: Exp;  lines: +113 -34
Added test with example text from vdelta paper.

(make_vdelta): replaces take_delta().
Describe algorithm and planned improvements in expository comment at top.
DTRT at end of sequence.
Note o-b-o-e.

(main): Allow deltas against null source, since it's just compression
anyway.
----------------------------
revision 1.3
date: 2000/06/19 23:48:33;  author: kfogel;  state: Exp;  lines: +161 -9
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
----------------------------
revision 1.2
date: 2000/06/16 01:58:37;  author: kfogel;  state: Exp;  lines: +16 -0
Pseudocode outline.

Time to sleep.
----------------------------
revision 1.1
date: 2000/06/16 01:53:52;  author: kfogel;  state: Exp;
Start vdelta driver.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/README,v
Working file: libsvn_vcdiff/tests/README
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/06/20 22:17:00;  author: kfogel;  state: Exp;  lines: +3 -0
Added test with example text from vdelta paper.

(make_vdelta): replaces take_delta().
Describe algorithm and planned improvements in expository comment at top.
DTRT at end of sequence.
Note o-b-o-e.

(main): Allow deltas against null source, since it's just compression
anyway.
----------------------------
revision 1.1
date: 2000/06/19 23:48:35;  author: kfogel;  state: Exp;
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/source.txt,v
Working file: libsvn_vcdiff/tests/source.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/19 23:48:35;  author: kfogel;  state: Exp;
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/target0.txt,v
Working file: libsvn_vcdiff/tests/target0.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/20 22:17:00;  author: kfogel;  state: Exp;
Added test with example text from vdelta paper.

(make_vdelta): replaces take_delta().
Describe algorithm and planned improvements in expository comment at top.
DTRT at end of sequence.
Note o-b-o-e.

(main): Allow deltas against null source, since it's just compression
anyway.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/target1.txt,v
Working file: libsvn_vcdiff/tests/target1.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/19 23:48:35;  author: kfogel;  state: Exp;
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/target2.txt,v
Working file: libsvn_vcdiff/tests/target2.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/19 23:48:35;  author: kfogel;  state: Exp;
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/target3.txt,v
Working file: libsvn_vcdiff/tests/target3.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/19 23:48:35;  author: kfogel;  state: Exp;
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/target4.txt,v
Working file: libsvn_vcdiff/tests/target4.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/19 23:48:35;  author: kfogel;  state: Exp;
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_vcdiff/tests/target5.txt,v
Working file: libsvn_vcdiff/tests/target5.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/06/19 23:48:35;  author: kfogel;  state: Exp;
Commit what I have, though further research with xdelta may make it
moot.

This is a working binary diff engine now, by the way, though the
output format is kind of bogus. :-)  Run `make', then `make test' to
see it in action.  (Start at the top of the output and work your way
down, for best comprehension, and read tests/README too.)
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/.cvsignore,v
Working file: libsvn_wc/.cvsignore
head: 1.5
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 5;	selected revisions: 5
description:
----------------------------
revision 1.5
date: 2000/08/25 21:26:22;  author: jimb;  state: Exp;  lines: +2 -0
Add .deps and .libs directories to the ignore lists.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.4
date: 2000/08/08 17:36:57;  author: kfogel;  state: Exp;  lines: +2 -0
Fix various type and path buglets on way to compilation.
----------------------------
revision 1.3
date: 2000/08/08 16:53:22;  author: kfogel;  state: Exp;  lines: +3 -3
Ignore Makefile.in, Makefile, and ChangeLog* too.
----------------------------
revision 1.2
date: 2000/07/13 15:04:16;  author: gstein;  state: Exp;  lines: +1 -0
compile/build fixes
----------------------------
revision 1.1
date: 2000/07/11 06:32:09;  author: kfogel;  state: Exp;
Implemented property dumping.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/Attic/Makefile,v
Working file: libsvn_wc/Makefile
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/08/20 02:47:05;  author: kfogel;  state: Exp;  lines: +421 -51
(svn_wc__set_up_new_dir, svn_wc__working_name, svn_wc__read_lock,
svn_wc__write_lock): new funcs, still skeletal.

(add_directory): just call `svn_wc__set_up_new_dir' now.
----------------------------
revision 1.5
date: 2000/07/27 21:12:27;  author: sussman;  state: dead;  lines: +0 -0
Header file reorganization
----------------------------
revision 1.4
date: 2000/07/27 04:17:29;  author: kfogel;  state: Exp;  lines: +10 -10
Run in static space.
----------------------------
revision 1.3
date: 2000/07/13 15:04:16;  author: gstein;  state: Exp;  lines: +8 -8
compile/build fixes
----------------------------
revision 1.2
date: 2000/07/11 06:47:57;  author: kfogel;  state: Exp;  lines: +23 -7
Clean up, add "make test" rule.
----------------------------
revision 1.1
date: 2000/07/11 06:32:09;  author: kfogel;  state: Exp;
Implemented property dumping.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/Makefile.am,v
Working file: libsvn_wc/Makefile.am
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;  lines: +2 -1
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.6
date: 2000/08/24 19:27:32;  author: kfogel;  state: Exp;  lines: +1 -1
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
----------------------------
revision 1.5
date: 2000/08/16 23:01:09;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.4
date: 2000/08/14 23:17:41;  author: kfogel;  state: Exp;  lines: +1 -1
Rewrite to use the callee-push streaming interface.

This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.3
date: 2000/08/08 23:22:13;  author: kfogel;  state: Exp;  lines: +0 -1
Use static where appropriate.

Correct ordering of library dependencies; plus some accidental newline
removals that are easier to commit than revert.
----------------------------
revision 1.2
date: 2000/08/08 17:36:57;  author: kfogel;  state: Exp;  lines: +1 -1
Fix various type and path buglets on way to compilation.
----------------------------
revision 1.1
date: 2000/08/08 16:23:24;  author: kfogel;  state: Exp;
Print out checkout dirs.

Skeleton of a test framework; probably doesn't compile yet, more to
come.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/README,v
Working file: libsvn_wc/README
head: 1.38
branch:
locks: strict
access list:
symbolic names:
	before-big-rewrite: 1.25
keyword substitution: kv
total revisions: 38;	selected revisions: 38
description:
----------------------------
revision 1.38
date: 2000/09/02 04:14:34;  author: kfogel;  state: Exp;  lines: +24 -4
Rewritten.
----------------------------
revision 1.37
date: 2000/08/30 01:22:14;  author: kfogel;  state: Exp;  lines: +68 -68
Start twisting XML format explanations to match new `svn_delta_walk_t'
plans.
----------------------------
revision 1.36
date: 2000/08/29 01:21:44;  author: kfogel;  state: Exp;  lines: +88 -50
Describe XML plans for working copy administrative files.
----------------------------
revision 1.35
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;  lines: +11 -1
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.34
date: 2000/08/24 20:48:56;  author: kfogel;  state: Exp;  lines: +2 -1
Documentation and #include fixes.

Add a top-level file to checkout-1.delta.  Grin.
----------------------------
revision 1.33
date: 2000/08/24 19:27:32;  author: kfogel;  state: Exp;  lines: +26 -8
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
----------------------------
revision 1.32
date: 2000/08/22 21:48:17;  author: kfogel;  state: Exp;  lines: +6 -1
Create more of the working copy, do real locking.
----------------------------
revision 1.31
date: 2000/08/22 00:45:38;  author: kfogel;  state: Exp;  lines: +1 -2
Started locking code.
----------------------------
revision 1.30
date: 2000/08/21 23:37:06;  author: kfogel;  state: Exp;  lines: +2 -2
Many changes to do with creating administrative subdirs.
----------------------------
revision 1.29
date: 2000/08/14 23:17:41;  author: kfogel;  state: Exp;  lines: +35 -18
Rewrite to use the callee-push streaming interface.

This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.28
date: 2000/08/03 21:11:42;  author: kfogel;  state: Exp;  lines: +54 -72
Settled skelta issues w/ Ben, able to describe rest of working copy
format.
----------------------------
revision 1.27
date: 2000/08/03 12:44:56;  author: sussman;  state: Exp;  lines: +29 -0
Added some comments for discussion
----------------------------
revision 1.26
date: 2000/08/01 01:31:38;  author: kfogel;  state: Exp;  lines: +155 -382
Start describing concrete working copy layout and algorithms for
walking around in it.
----------------------------
revision 1.25
date: 2000/07/31 20:44:50;  author: kfogel;  state: Exp;  lines: +35 -20
Scenario 2.
----------------------------
revision 1.24
date: 2000/07/31 18:11:29;  author: kfogel;  state: Exp;  lines: +44 -2
Scenario 1.
----------------------------
revision 1.23
date: 2000/07/31 17:52:24;  author: kfogel;  state: Exp;  lines: +20 -8
Point out the implied redundancy between Tables 2 and 3.
----------------------------
revision 1.22
date: 2000/07/31 17:03:59;  author: kfogel;  state: Exp;  lines: +5 -4
Quick tweak before working on scenarios.
----------------------------
revision 1.21
date: 2000/07/31 17:02:13;  author: kfogel;  state: Exp;  lines: +0 -2
Get rid of the "working here" tag.  Not working there anymore.
----------------------------
revision 1.20
date: 2000/07/31 16:55:25;  author: kfogel;  state: Exp;  lines: +31 -35
The tables don't need to show conflict foldability -- that's just an
optimization, not a fundamental property.
----------------------------
revision 1.19
date: 2000/07/31 16:43:45;  author: kfogel;  state: Exp;  lines: +1 -1
Mark working point more clearly for JimB.
----------------------------
revision 1.18
date: 2000/07/26 21:20:51;  author: sussman;  state: Exp;  lines: +14 -4
a few comments
----------------------------
revision 1.17
date: 2000/07/25 23:55:39;  author: kfogel;  state: Exp;  lines: +92 -168
Clean out a lot of cruft.

Almost at a General Theory of Change Compatibility here.
----------------------------
revision 1.16
date: 2000/07/25 22:16:50;  author: kfogel;  state: Exp;  lines: +97 -82
Justify the Symmetry Principle.  (As close to proof as we're going to
get, probably.)
----------------------------
revision 1.15
date: 2000/07/25 19:43:50;  author: kfogel;  state: Exp;  lines: +138 -75
More expanation fill-in.  Following through examples based on a few of
the table cells (a pain now, will be glad we did it later).

The examples are showing up a need to tweak Table 1, I think.
----------------------------
revision 1.14
date: 2000/07/24 22:07:17;  author: kfogel;  state: Exp;  lines: +67 -29
Explain commit algorithm in full.
----------------------------
revision 1.13
date: 2000/07/24 16:43:19;  author: kfogel;  state: Exp;  lines: +104 -72
Lay out third server decision table (direct changes against direct
changes).

Make earlier parts of text clearer.
----------------------------
revision 1.12
date: 2000/07/22 22:26:30;  author: kfogel;  state: Exp;  lines: +108 -23
Write up conflict tables.
----------------------------
revision 1.11
date: 2000/07/22 00:06:06;  author: kfogel;  state: Exp;  lines: +24 -6
Checkin so can go work at home.
----------------------------
revision 1.10
date: 2000/07/21 22:14:47;  author: kfogel;  state: Exp;  lines: +46 -35
More explanation (writing with Ben, wish commits could have N authors).
----------------------------
revision 1.9
date: 2000/07/21 21:48:35;  author: kfogel;  state: Exp;  lines: +91 -13
Wow.  We are going to *own* this problem by the time we're done.

In progress describing the pre-commit check and
update-delta-generation algorithms.  It's kind of hairy, but Ben has
found a theoretical framework, we are still applying it.
----------------------------
revision 1.8
date: 2000/07/21 17:06:43;  author: kfogel;  state: Exp;  lines: +7 -7
more tweaks
----------------------------
revision 1.7
date: 2000/07/21 16:52:11;  author: kfogel;  state: Exp;  lines: +22 -10
tweaks
----------------------------
revision 1.6
date: 2000/07/21 16:29:14;  author: kfogel;  state: Exp;  lines: +47 -8
Update/commit algorithm described.  Aaaah.
----------------------------
revision 1.5
date: 2000/07/21 16:08:10;  author: kfogel;  state: Exp;  lines: +57 -19
Update/commit algorithm half-described (good checkin point).
----------------------------
revision 1.4
date: 2000/07/21 15:46:45;  author: kfogel;  state: Exp;  lines: +39 -9
List principles involved in the update algorithm (next, describe the
algorithm).
----------------------------
revision 1.3
date: 2000/07/11 07:15:01;  author: kfogel;  state: Exp;  lines: +1 -0
Clean up some loose ends, zzzzz.
----------------------------
revision 1.2
date: 2000/07/11 06:32:09;  author: kfogel;  state: Exp;  lines: +11 -1
Implemented property dumping.
----------------------------
revision 1.1
date: 2000/06/30 23:08:52;  author: kfogel;  state: Exp;
Started working copy management library.

Update other headers and docs to note some `todo' items.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/adm_files.c,v
Working file: libsvn_wc/adm_files.c
head: 1.10
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 10;	selected revisions: 10
description:
----------------------------
revision 1.10
date: 2000/09/02 04:45:59;  author: kfogel;  state: Exp;  lines: +18 -6
Include version number as part of the "context" of a delta application:

(w_baton): new version field.
(svn_wc_apply_delta): take version arg, stuff it into walk baton.
(add_directory, add_file): get version, pass it along.
(svn_wc__ensure_adm, svn_wc__ensure_wc_prepared): accept and pass along
new version arg.
(init_adm): take version, use it during file initialization.
----------------------------
revision 1.9
date: 2000/09/02 04:14:34;  author: kfogel;  state: Exp;  lines: +309 -16
Rewritten.
----------------------------
revision 1.8
date: 2000/09/01 21:54:31;  author: kfogel;  state: Exp;  lines: +11 -8
(chop_admin_thing): replaces `chop_admin_name'.
(svn_wc__make_adm_thing): special case making an empty thing, i.e.,
making the parent directory.
----------------------------
revision 1.7
date: 2000/09/01 21:03:21;  author: kfogel;  state: Exp;  lines: +59 -30
Partially revert my change of 2000-08-31 15:29.  The svn_path library
now side-effects its operands again; all callers changed to account
for this, but not always exactly as they worked before.

* path.c, path.h (add_component_internal): revert to 1.7 behavior, but
also canonicalize result.
(svn_path_add_component_nts, svn_path_add_component): revert to 1.7
behavior.
(svn_path_remove_component): revert to 1.7 behavior and prototype.

* delta_parse.c (maybe_derive_ancestry): dup a new path and add name
to it as a component, to get ancestor.

* adm_files.c: revert to 1.5:
(extend_with_adm_name): back to this name instead of `make_adm_path',
callers changed accordingly.
(chop_admin_name): restored, calls restored as well.

* util.c (svn_wc__ensure_directory): dup a new path, then shorten it,
when recursing.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): dup a new path, then operate on that.

Also, changes to accommodate new names:

* apply_delta.c (svn_wc_apply_delta): it's `svn_XML_parse' now, not
`svn_delta_parse'.
----------------------------
revision 1.6
date: 2000/08/31 20:29:45;  author: kfogel;  state: Exp;  lines: +30 -63
Change path library to always return non-shared results, instead of
side-effecting its arguments (part of making libsvn_wc insensitive to
whether delta traversal happens depth-first vs breadth-first):

* path.c (add_component_internal): make and return a new string,
canonicalizing it before returning.
(svn_path_add_component_nts, svn_path_add_component): return a new
string.
(svn_path_remove_component): return a new string, and take a new pool
arg therefore.

* delta_parse.c (maybe_derive_ancestry): use new svn_path semantics;
tighten up code and comments.

* adm_files.c (make_adm_path): replaces extend_with_adm_name(), no
longer requires the caller to "unmake" the name later.
Callers changed accordingly.
(chop_admin_name): removed, no longer necessary.

* util.c (svn_wc__ensure_directory): use new svn_path semantics,
improve comments.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): use new svn_path semantics.

Also, changes to accommodate new names:

* apply_delta.c (window_handler): it's "txdelta", not "delta".
----------------------------
revision 1.5
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.4
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.3
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;  lines: +3 -3
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.2
date: 2000/08/24 20:48:56;  author: kfogel;  state: Exp;  lines: +0 -2
Documentation and #include fixes.

Add a top-level file to checkout-1.delta.  Grin.
----------------------------
revision 1.1
date: 2000/08/24 19:27:32;  author: kfogel;  state: Exp;
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/adm_ops.c,v
Working file: libsvn_wc/adm_ops.c
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/09/02 04:45:59;  author: kfogel;  state: Exp;  lines: +2 -1
Include version number as part of the "context" of a delta application:

(w_baton): new version field.
(svn_wc_apply_delta): take version arg, stuff it into walk baton.
(add_directory, add_file): get version, pass it along.
(svn_wc__ensure_adm, svn_wc__ensure_wc_prepared): accept and pass along
new version arg.
(init_adm): take version, use it during file initialization.
----------------------------
revision 1.6
date: 2000/09/02 04:14:34;  author: kfogel;  state: Exp;  lines: +13 -96
Rewritten.
----------------------------
revision 1.5
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.4
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.3
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;  lines: +2 -2
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.2
date: 2000/08/24 20:48:57;  author: kfogel;  state: Exp;  lines: +0 -2
Documentation and #include fixes.

Add a top-level file to checkout-1.delta.  Grin.
----------------------------
revision 1.1
date: 2000/08/24 19:27:32;  author: kfogel;  state: Exp;
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/apply_delta.c,v
Working file: libsvn_wc/apply_delta.c
head: 1.34
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 34;	selected revisions: 34
description:
----------------------------
revision 1.34
date: 2000/09/04 20:41:34;  author: kfogel;  state: Exp;  lines: +0 -25
(svn_wc_apply_delta): removed from public interface, as
svn_wc_get_change_walker() is the way to do this now.

* checkout-test.c (apply_delta): new func in test suite, hooks up an
XML delta with a walker to do the checkout.
----------------------------
revision 1.33
date: 2000/09/02 10:03:47;  author: gstein;  state: Exp;  lines: +14 -36
(svn_wc_apply_delta): use svn_wc_get_change_walker() to create walker and
    batons for the XML parse step
(svn_wc_get_change_walker): add repos and version parameters. store them
    into the walk_baton structure.
----------------------------
revision 1.32
date: 2000/09/02 04:45:59;  author: kfogel;  state: Exp;  lines: +15 -3
Include version number as part of the "context" of a delta application:

(w_baton): new version field.
(svn_wc_apply_delta): take version arg, stuff it into walk baton.
(add_directory, add_file): get version, pass it along.
(svn_wc__ensure_adm, svn_wc__ensure_wc_prepared): accept and pass along
new version arg.
(init_adm): take version, use it during file initialization.
----------------------------
revision 1.31
date: 2000/09/02 04:17:41;  author: kfogel;  state: Exp;  lines: +6 -5
(svn_wc_get_change_walker): minor formatting fix.
----------------------------
revision 1.30
date: 2000/09/02 04:14:34;  author: kfogel;  state: Exp;  lines: +72 -81
Rewritten.
----------------------------
revision 1.29
date: 2000/09/01 21:03:21;  author: kfogel;  state: Exp;  lines: +10 -8
Partially revert my change of 2000-08-31 15:29.  The svn_path library
now side-effects its operands again; all callers changed to account
for this, but not always exactly as they worked before.

* path.c, path.h (add_component_internal): revert to 1.7 behavior, but
also canonicalize result.
(svn_path_add_component_nts, svn_path_add_component): revert to 1.7
behavior.
(svn_path_remove_component): revert to 1.7 behavior and prototype.

* delta_parse.c (maybe_derive_ancestry): dup a new path and add name
to it as a component, to get ancestor.

* adm_files.c: revert to 1.5:
(extend_with_adm_name): back to this name instead of `make_adm_path',
callers changed accordingly.
(chop_admin_name): restored, calls restored as well.

* util.c (svn_wc__ensure_directory): dup a new path, then shorten it,
when recursing.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): dup a new path, then operate on that.

Also, changes to accommodate new names:

* apply_delta.c (svn_wc_apply_delta): it's `svn_XML_parse' now, not
`svn_delta_parse'.
----------------------------
revision 1.28
date: 2000/08/31 20:29:45;  author: kfogel;  state: Exp;  lines: +37 -36
Change path library to always return non-shared results, instead of
side-effecting its arguments (part of making libsvn_wc insensitive to
whether delta traversal happens depth-first vs breadth-first):

* path.c (add_component_internal): make and return a new string,
canonicalizing it before returning.
(svn_path_add_component_nts, svn_path_add_component): return a new
string.
(svn_path_remove_component): return a new string, and take a new pool
arg therefore.

* delta_parse.c (maybe_derive_ancestry): use new svn_path semantics;
tighten up code and comments.

* adm_files.c (make_adm_path): replaces extend_with_adm_name(), no
longer requires the caller to "unmake" the name later.
Callers changed accordingly.
(chop_admin_name): removed, no longer necessary.

* util.c (svn_wc__ensure_directory): use new svn_path semantics,
improve comments.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): use new svn_path semantics.

Also, changes to accommodate new names:

* apply_delta.c (window_handler): it's "txdelta", not "delta".
----------------------------
revision 1.27
date: 2000/08/31 13:44:17;  author: gstein;  state: Exp;  lines: +55 -16
(svn_wc_get_change_walker): ADDED. provides a walker structure for effecting
    change against the working copy.

(svn_wc_apply_delta): don't use manual assignments to a walker structure;
    just use a static, constant structure. added "change_walker" struct.
----------------------------
revision 1.26
date: 2000/08/30 09:55:58;  author: gstein;  state: Exp;  lines: +1 -1
wouldn't you know it... the file that I used as a template for the new
    RA/DAV files' license (it was apply_delta.c) happens to be the only file
    with a tweak in it. of all that I could have chosen...
----------------------------
revision 1.25
date: 2000/08/30 00:31:37;  author: kfogel;  state: Exp;  lines: +168 -105
Separate pages for walker callbacks vs their helpers.

Return SVN_NO_ERROR instead of 0 everywhere.

Come into line with the new svn_delta_walk_t interface:
(change_file_prop, change_dir_prop, change_dirent_prop,
apply_textdelta): new callback functions, empty skeletons for now.
(begin_textdelta, finish_textdelta): removed, but code preserved
verbatim in apply_textdelta(), #ifdef'd out.
(svn_wc_apply_delta): set up the new walker appropriately.

Also, unmush all walker callback function declarations, so they look
the same as they do in the definition of `svn_delta_walk_t'.
----------------------------
revision 1.24
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.23
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.22
date: 2000/08/25 19:58:53;  author: kfogel;  state: Exp;  lines: +16 -9
More changes for context-sensitive delta application.

Do path canonicalization.
----------------------------
revision 1.21
date: 2000/08/25 19:08:45;  author: kfogel;  state: Exp;  lines: +12 -7
(delete): call maybe_prepend_dest() here too.
----------------------------
revision 1.20
date: 2000/08/25 19:07:38;  author: kfogel;  state: Exp;  lines: +45 -22
Make sure dest_dir is accounted for in delta application.

(maybe_prepend_dest): new func, makes sure delta activity happens in
the right place.

(svn_path_isempty): new func, helper for above.
----------------------------
revision 1.19
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;  lines: +25 -55
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.18
date: 2000/08/24 20:48:57;  author: kfogel;  state: Exp;  lines: +6 -18
Documentation and #include fixes.

Add a top-level file to checkout-1.delta.  Grin.
----------------------------
revision 1.17
date: 2000/08/24 19:27:32;  author: kfogel;  state: Exp;  lines: +1 -1
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
----------------------------
revision 1.16
date: 2000/08/22 19:55:10;  author: kfogel;  state: Exp;  lines: +4 -4
(SVN_PATH_LOCAL_STYLE, SVN_PATH_REPOS_STYLE): new #defines.

(svn_path_remove_component, svn_path_add_component,
svn_path_add_component_nts, add_path_internal): use them.

All callers changed.

This gives an interface handling both local paths (for files) and
repository paths (for ancestry), though the implementation is all
Unix-style right now, which is the same as repository style.
----------------------------
revision 1.15
date: 2000/08/22 17:30:36;  author: kfogel;  state: Exp;  lines: +7 -5
Put mini-library for path manipulation into libsvn_subr.

(maybe_derive_ancestor): always set to a full ancestry path, derived
from both ancestors and names.
----------------------------
revision 1.14
date: 2000/08/21 23:37:06;  author: kfogel;  state: Exp;  lines: +4 -31
Many changes to do with creating administrative subdirs.
----------------------------
revision 1.13
date: 2000/08/20 02:47:05;  author: kfogel;  state: Exp;  lines: +10 -8
(svn_wc__set_up_new_dir, svn_wc__working_name, svn_wc__read_lock,
svn_wc__write_lock): new funcs, still skeletal.

(add_directory): just call `svn_wc__set_up_new_dir' now.
----------------------------
revision 1.12
date: 2000/08/19 01:31:12;  author: kfogel;  state: Exp;  lines: +21 -15
Fill out the skeleton tree with files and their contents.

(svn_delta_window_t): call it `pool', not `my_pool'.  All references
changed.
----------------------------
revision 1.11
date: 2000/08/19 01:17:47;  author: kfogel;  state: Exp;  lines: +2 -2
(svn_delta_digger_t): call it `pdelta_chunk_parser' instead of
`chunk_parser', just to keep things straight.

Pass the new handler_baton, a.k.a. consumer_baton, as appropriate.
----------------------------
revision 1.10
date: 2000/08/19 00:58:50;  author: kfogel;  state: Exp;  lines: +6 -9
Test suite improvements: make script do something useful, correct the
test delta.
----------------------------
revision 1.9
date: 2000/08/19 00:35:33;  author: kfogel;  state: Exp;  lines: +99 -34
Start building a tree.
----------------------------
revision 1.8
date: 2000/08/19 00:00:05;  author: kfogel;  state: Exp;  lines: +41 -16
Don't drop those batons.
----------------------------
revision 1.7
date: 2000/08/18 22:42:49;  author: kfogel;  state: Exp;  lines: +12 -12
Use `ancestor_path' and `ancestor_version', instead of `base_path' and
`base_version', because less likely to cause confusion.
----------------------------
revision 1.6
date: 2000/08/18 22:37:23;  author: kfogel;  state: Exp;  lines: +23 -24
Use new delta walker interface.

(Fix a few minor things in the delta library, too: missing prototype
and missing return value.  Everything compiles now.)
----------------------------
revision 1.5
date: 2000/08/18 17:00:31;  author: kfogel;  state: Exp;  lines: +14 -2
Start baton usage.

More flexible test program.
----------------------------
revision 1.4
date: 2000/08/18 00:49:57;  author: kfogel;  state: Exp;  lines: +43 -4
Making WC library use the new stuff in delta library:

`svn_text_delta_window_handler_t' replaces `svn_delta_handler_t',
because more specific.  All uses changed.

(svn_delta_op_t): call field `action_code' instead of `op'.  Having
two different things both called "op" was making my brain spin.
All uses changed.

(do_file_callback, do_directory_callback): parenthesize for precedence
clarity.

(svn_vcdiff_parse): increment buffer offset only if ate a byte.

(svn_vcdiff_send_window): check if callback func is null before
calling it.

(check_existence): include APR_READ flag when testing, because
apr_open() always returns APR_EACCES if you fail to request at least
one of reading or writing.  Also, remove the file after testing.

(window_handler): new func in wc library; skeleton, everything will
depend on the baton.

(add_file, replace_file): store window_handler in *handler.

(checkout-test.c:main): be robuster.

(test_read_fn): interpret results of apr_full_read() correctly.
----------------------------
revision 1.3
date: 2000/08/16 23:01:09;  author: kfogel;  state: Exp;  lines: +36 -12
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.2
date: 2000/08/14 23:19:10;  author: kfogel;  state: Exp;  lines: +7 -0
Plug in new finish_file() callback.
----------------------------
revision 1.1
date: 2000/08/14 23:17:41;  author: kfogel;  state: Exp;
Rewrite to use the callee-push streaming interface.

This commit is _not_ going to compile, so don't even try.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/Attic/deltaparse.c,v
Working file: libsvn_wc/deltaparse.c
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/04 19:23:58;  author: sussman;  state: dead;  lines: +0 -0
moving files around
----------------------------
revision 1.1
date: 2000/08/04 18:50:42;  author: sussman;  state: Exp;
deltaparser started
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/Attic/hashdump.c,v
Working file: libsvn_wc/hashdump.c
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/07/27 20:25:05;  author: sussman;  state: dead;  lines: +0 -0
Movin' stuff around
----------------------------
revision 1.6
date: 2000/07/27 06:00:16;  author: kfogel;  state: Exp;  lines: +7 -0
Document hash dump format more accurately, too.
----------------------------
revision 1.5
date: 2000/07/27 05:57:47;  author: kfogel;  state: Exp;  lines: +2 -2
(read_length_line): document better.
----------------------------
revision 1.4
date: 2000/07/27 05:53:43;  author: kfogel;  state: Exp;  lines: +77 -4
(hash_read): started.

(read_length_line): helper for above.
----------------------------
revision 1.3
date: 2000/07/27 05:18:09;  author: kfogel;  state: Exp;  lines: +21 -21
Call return values `err', not `status', and deprolicize accordingly.

Jim was right, we don't need the SVN_NO_ERROR mnemonic.  If we just
use a variable named `err', then the clearest thing to do is test it
as a boolean directly.
----------------------------
revision 1.2
date: 2000/07/27 04:17:29;  author: kfogel;  state: Exp;  lines: +40 -178
Run in static space.
----------------------------
revision 1.1
date: 2000/07/26 22:35:25;  author: sussman;  state: Exp;

PR:hash_write() is now generalized, taking a helper function.
TODO:  hack the test program to use svn_unpack_bytestring() as the
       helper function, and print out a property hash.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/lock.c,v
Working file: libsvn_wc/lock.c
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.2
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.1
date: 2000/08/24 19:27:32;  author: kfogel;  state: Exp;
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/Attic/propdump.c,v
Working file: libsvn_wc/propdump.c
head: 1.16
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 16;	selected revisions: 16
description:
----------------------------
revision 1.16
date: 2000/08/04 16:42:13;  author: kfogel;  state: dead;  lines: +0 -0
obsoleted by ../libsvn_subr/hashdump.c
----------------------------
revision 1.15
date: 2000/08/03 14:39:46;  author: sussman;  state: Exp;  lines: +39 -39
whoa, APR has changed.  s/ap_/apr_
----------------------------
revision 1.14
date: 2000/07/18 21:23:19;  author: kfogel;  state: Exp;  lines: +14 -16
Fix buglet noticed by JimB (that of not being handling the
most-negative number).
----------------------------
revision 1.13
date: 2000/07/14 00:44:28;  author: gstein;  state: Exp;  lines: +19 -18
*) there are easier ways to concatenate C strings
*) note: svn_wc_proplist_write() should probably take a const char *
*) tweaks for new error handling
----------------------------
revision 1.12
date: 2000/07/13 15:04:16;  author: gstein;  state: Exp;  lines: +13 -5
compile/build fixes
----------------------------
revision 1.11
date: 2000/07/12 20:53:03;  author: kfogel;  state: Exp;  lines: +1 -1
Correct path to svn-dev.el in emacs local vars.
----------------------------
revision 1.10
date: 2000/07/12 19:09:35;  author: kfogel;  state: Exp;  lines: +3 -3
Use suggested "" vs <> #include convention everywhere.
----------------------------
revision 1.9
date: 2000/07/12 02:00:15;  author: kfogel;  state: Exp;  lines: +3 -4
Hmm.  Not sure if this bug isn't in apr_hash.c itself, now...

After this code

  /* Test overwriting: same key both times, but different values. */
  key = svn_string_create ("twice-used property name", pool);
  ap_hash_set (proplist, key->data, key->len,
               svn_string_create ("This is the FIRST value.", pool));
  ap_hash_set (proplist, key->data, key->len,
               svn_string_create ("This is the SECOND value.", pool));

there should be no way for the "FIRST" value to still be in the hash
table, right?  Why is it still appearing in the dump, and not
"SECOND"?
----------------------------
revision 1.8
date: 2000/07/12 01:33:45;  author: kfogel;  state: Exp;  lines: +3 -3
Eliminate typedef of `svn_proplist_t' to `ap_hash_t'.

Change all references to use `ap_hash_t'.

We'll be good, GCC.  Promise.
----------------------------
revision 1.7
date: 2000/07/12 01:26:26;  author: kfogel;  state: Exp;  lines: +22 -16
Hash on (svn_string_t).data now.

There's still a bug, though; see the final two entries in the test
main() function.
----------------------------
revision 1.6
date: 2000/07/11 07:15:01;  author: kfogel;  state: Exp;  lines: +3 -3
Clean up some loose ends, zzzzz.
----------------------------
revision 1.5
date: 2000/07/11 06:47:57;  author: kfogel;  state: Exp;  lines: +1 -1
Clean up, add "make test" rule.
----------------------------
revision 1.4
date: 2000/07/11 06:40:00;  author: kfogel;  state: Exp;  lines: +0 -4
Remove debugging code.
----------------------------
revision 1.3
date: 2000/07/11 06:38:31;  author: kfogel;  state: Exp;  lines: +1 -1
Be even more readable than that.
----------------------------
revision 1.2
date: 2000/07/11 06:37:13;  author: kfogel;  state: Exp;  lines: +1 -1
Be more readable in num_into_string().
----------------------------
revision 1.1
date: 2000/07/11 06:32:09;  author: kfogel;  state: Exp;
Implemented property dumping.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/questions.c,v
Working file: libsvn_wc/questions.c
head: 1.3
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
----------------------------
revision 1.3
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.2
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.1
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/Attic/update.c,v
Working file: libsvn_wc/update.c
head: 1.12
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 12;	selected revisions: 12
description:
----------------------------
revision 1.12
date: 2000/08/14 23:17:41;  author: kfogel;  state: dead;  lines: +0 -0
Rewrite to use the callee-push streaming interface.

This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.11
date: 2000/08/09 15:29:32;  author: sussman;  state: Exp;  lines: +10 -1
comments
----------------------------
revision 1.10
date: 2000/08/09 04:31:48;  author: kfogel;  state: Exp;  lines: +3 -3
(delta_stack_to_path): fix iteration.
----------------------------
revision 1.9
date: 2000/08/08 23:22:13;  author: kfogel;  state: Exp;  lines: +23 -33
Use static where appropriate.

Correct ordering of library dependencies; plus some accidental newline
removals that are easier to commit than revert.
----------------------------
revision 1.8
date: 2000/08/08 17:36:57;  author: kfogel;  state: Exp;  lines: +25 -21
Fix various type and path buglets on way to compilation.
----------------------------
revision 1.7
date: 2000/08/08 16:23:24;  author: kfogel;  state: Exp;  lines: +7 -11
Print out checkout dirs.

Skeleton of a test framework; probably doesn't compile yet, more to
come.
----------------------------
revision 1.6
date: 2000/08/08 00:49:56;  author: kfogel;  state: Exp;  lines: +4 -5
(delta_stack_to_path): throw out hysterical raisin.
----------------------------
revision 1.5
date: 2000/08/08 00:40:50;  author: kfogel;  state: Exp;  lines: +60 -8
(delta_stack_to_path): replaces delta_to_path(), extracts file or
directory paths with equal alacrity.
----------------------------
revision 1.4
date: 2000/08/05 22:56:04;  author: kfogel;  state: Exp;  lines: +12 -3
Codus Interruptus, saving state:

Implementing svn_walk_delta() before implementing delta_to_path()
before implementing update_dir_handler().

Someone remind me to read this log entry to figure what to do next.

(svn_walk_delta): in progress.

(update_dir_handler): waiting on above and delta_to_path().
----------------------------
revision 1.3
date: 2000/08/05 22:18:14;  author: kfogel;  state: Exp;  lines: +68 -12
(check_existence): new func, helper for update() and later for callbacks.

(update): use above.

(update_data_handler, update_dir_handler): replace
`svn_update_data_handler' and `svn_update_data_handler' respectively,
albeit not respectfully.
----------------------------
revision 1.2
date: 2000/08/05 21:33:35;  author: kfogel;  state: Exp;  lines: +9 -9
(update): set up digger before passing it to the parser creator; this is more intuitive although not technically necessary.
----------------------------
revision 1.1
date: 2000/08/05 21:21:47;  author: kfogel;  state: Exp;
(update): new function, entry point.

(svn_update_data_handler, svn_update_dir_handler): started helpers for
`update()'.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/util.c,v
Working file: libsvn_wc/util.c
head: 1.7
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 7;	selected revisions: 7
description:
----------------------------
revision 1.7
date: 2000/09/01 21:03:21;  author: kfogel;  state: Exp;  lines: +5 -5
Partially revert my change of 2000-08-31 15:29.  The svn_path library
now side-effects its operands again; all callers changed to account
for this, but not always exactly as they worked before.

* path.c, path.h (add_component_internal): revert to 1.7 behavior, but
also canonicalize result.
(svn_path_add_component_nts, svn_path_add_component): revert to 1.7
behavior.
(svn_path_remove_component): revert to 1.7 behavior and prototype.

* delta_parse.c (maybe_derive_ancestry): dup a new path and add name
to it as a component, to get ancestor.

* adm_files.c: revert to 1.5:
(extend_with_adm_name): back to this name instead of `make_adm_path',
callers changed accordingly.
(chop_admin_name): restored, calls restored as well.

* util.c (svn_wc__ensure_directory): dup a new path, then shorten it,
when recursing.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): dup a new path, then operate on that.

Also, changes to accommodate new names:

* apply_delta.c (svn_wc_apply_delta): it's `svn_XML_parse' now, not
`svn_delta_parse'.
----------------------------
revision 1.6
date: 2000/08/31 20:29:45;  author: kfogel;  state: Exp;  lines: +20 -16
Change path library to always return non-shared results, instead of
side-effecting its arguments (part of making libsvn_wc insensitive to
whether delta traversal happens depth-first vs breadth-first):

* path.c (add_component_internal): make and return a new string,
canonicalizing it before returning.
(svn_path_add_component_nts, svn_path_add_component): return a new
string.
(svn_path_remove_component): return a new string, and take a new pool
arg therefore.

* delta_parse.c (maybe_derive_ancestry): use new svn_path semantics;
tighten up code and comments.

* adm_files.c (make_adm_path): replaces extend_with_adm_name(), no
longer requires the caller to "unmake" the name later.
Callers changed accordingly.
(chop_admin_name): removed, no longer necessary.

* util.c (svn_wc__ensure_directory): use new svn_path semantics,
improve comments.

* apply_delta.c (maybe_prepend_dest, add_directory, add_file,
finish_file): use new svn_path semantics.

Also, changes to accommodate new names:

* apply_delta.c (window_handler): it's "txdelta", not "delta".
----------------------------
revision 1.5
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.4
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.3
date: 2000/08/25 19:59:25;  author: kfogel;  state: Exp;  lines: +0 -45
(check_existence): removed, as no longer used.
----------------------------
revision 1.2
date: 2000/08/25 19:58:53;  author: kfogel;  state: Exp;  lines: +2 -1
More changes for context-sensitive delta application.

Do path canonicalization.
----------------------------
revision 1.1
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/wc.h,v
Working file: libsvn_wc/wc.h
head: 1.11
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 11;	selected revisions: 11
description:
----------------------------
revision 1.11
date: 2000/09/02 04:45:59;  author: kfogel;  state: Exp;  lines: +2 -0
Include version number as part of the "context" of a delta application:

(w_baton): new version field.
(svn_wc_apply_delta): take version arg, stuff it into walk baton.
(add_directory, add_file): get version, pass it along.
(svn_wc__ensure_adm, svn_wc__ensure_wc_prepared): accept and pass along
new version arg.
(init_adm): take version, use it during file initialization.
----------------------------
revision 1.10
date: 2000/09/02 04:14:34;  author: kfogel;  state: Exp;  lines: +25 -2
Rewritten.
----------------------------
revision 1.9
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.8
date: 2000/08/25 20:09:08;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.7
date: 2000/08/25 18:18:47;  author: kfogel;  state: Exp;  lines: +19 -0
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.6
date: 2000/08/24 19:27:32;  author: kfogel;  state: Exp;  lines: +43 -11
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
----------------------------
revision 1.5
date: 2000/08/22 21:48:17;  author: kfogel;  state: Exp;  lines: +15 -8
Create more of the working copy, do real locking.
----------------------------
revision 1.4
date: 2000/08/22 17:30:36;  author: kfogel;  state: Exp;  lines: +0 -9
Put mini-library for path manipulation into libsvn_subr.

(maybe_derive_ancestor): always set to a full ancestry path, derived
from both ancestors and names.
----------------------------
revision 1.3
date: 2000/08/22 00:45:38;  author: kfogel;  state: Exp;  lines: +6 -2
Started locking code.
----------------------------
revision 1.2
date: 2000/08/21 23:37:06;  author: kfogel;  state: Exp;  lines: +34 -3
Many changes to do with creating administrative subdirs.
----------------------------
revision 1.1
date: 2000/08/20 02:47:05;  author: kfogel;  state: Exp;
(svn_wc__set_up_new_dir, svn_wc__working_name, svn_wc__read_lock,
svn_wc__write_lock): new funcs, still skeletal.

(add_directory): just call `svn_wc__set_up_new_dir' now.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/Attic/wc_adm.c,v
Working file: libsvn_wc/wc_adm.c
head: 1.12
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 12;	selected revisions: 12
description:
----------------------------
revision 1.12
date: 2000/08/24 19:27:32;  author: kfogel;  state: dead;  lines: +0 -0
Reorganize code: separate files for locking stuff, adm path/file
stuff, and adm operations.

Document general plan of interrupt-safe operation.
----------------------------
revision 1.11
date: 2000/08/24 02:16:34;  author: kfogel;  state: Exp;  lines: +12 -11
Results of code review by Ben:

(svn_wc__adm_subdir): move static string inside, no reason for it to
be external static.

Everywhere: return SVN_NO_ERROR where formerly returned 0.
----------------------------
revision 1.10
date: 2000/08/23 01:39:43;  author: kfogel;  state: Exp;  lines: +19 -10
(make_adm_thing): restore path and return error correctly in all cases.

(svn_wc__lock): restored error-checking.  Works now, but apr_sleep()
appears to be broken so it's not actually retrying at the rate the
user specifies.
----------------------------
revision 1.9
date: 2000/08/22 22:03:20;  author: kfogel;  state: Exp;  lines: +5 -2
Tweak/test the locking code.
----------------------------
revision 1.8
date: 2000/08/22 21:48:17;  author: kfogel;  state: Exp;  lines: +113 -46
Create more of the working copy, do real locking.
----------------------------
revision 1.7
date: 2000/08/22 20:19:29;  author: kfogel;  state: Exp;  lines: +4 -5
Just use enums `svn_file_kind' and `svn_directory_kind' from
svn_types.h, instead of own enums.  Enough is enough already.
----------------------------
revision 1.6
date: 2000/08/22 19:55:10;  author: kfogel;  state: Exp;  lines: +9 -6
(SVN_PATH_LOCAL_STYLE, SVN_PATH_REPOS_STYLE): new #defines.

(svn_path_remove_component, svn_path_add_component,
svn_path_add_component_nts, add_path_internal): use them.

All callers changed.

This gives an interface handling both local paths (for files) and
repository paths (for ancestry), though the implementation is all
Unix-style right now, which is the same as repository style.
----------------------------
revision 1.5
date: 2000/08/22 17:30:36;  author: kfogel;  state: Exp;  lines: +8 -64
Put mini-library for path manipulation into libsvn_subr.

(maybe_derive_ancestor): always set to a full ancestry path, derived
from both ancestors and names.
----------------------------
revision 1.4
date: 2000/08/22 00:45:38;  author: kfogel;  state: Exp;  lines: +55 -7
Started locking code.
----------------------------
revision 1.3
date: 2000/08/21 23:37:06;  author: kfogel;  state: Exp;  lines: +235 -16
Many changes to do with creating administrative subdirs.
----------------------------
revision 1.2
date: 2000/08/20 02:47:05;  author: kfogel;  state: Exp;  lines: +49 -2
(svn_wc__set_up_new_dir, svn_wc__working_name, svn_wc__read_lock,
svn_wc__write_lock): new funcs, still skeletal.

(add_directory): just call `svn_wc__set_up_new_dir' now.
----------------------------
revision 1.1
date: 2000/08/16 23:01:09;  author: kfogel;  state: Exp;
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/tests/.cvsignore,v
Working file: libsvn_wc/tests/.cvsignore
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/25 21:26:22;  author: jimb;  state: Exp;  lines: +2 -0
Add .deps and .libs directories to the ignore lists.
PR:
Obtained from:
Submitted by:
Reviewed by:
----------------------------
revision 1.1
date: 2000/08/08 16:53:25;  author: kfogel;  state: Exp;
Ignore Makefile.in, Makefile, and ChangeLog* too.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/tests/Makefile.am,v
Working file: libsvn_wc/tests/Makefile.am
head: 1.6
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 6;	selected revisions: 6
description:
----------------------------
revision 1.6
date: 2000/08/30 03:17:07;  author: gstein;  state: Exp;  lines: +1 -1
switch expat-lite over to automake (updates tests for libsvn_delta and
    libsvn_wc to use libexpat.la now)
add some initial work on config/build for Neon
----------------------------
revision 1.5
date: 2000/08/08 23:22:16;  author: kfogel;  state: Exp;  lines: +6 -6
Use static where appropriate.

Correct ordering of library dependencies; plus some accidental newline
removals that are easier to commit than revert.
----------------------------
revision 1.4
date: 2000/08/08 18:15:00;  author: kfogel;  state: Exp;  lines: +1 -1
Add new paths to LD_LIBRARY_PATH.

Don't install test programs in a "make install".
----------------------------
revision 1.3
date: 2000/08/08 17:48:34;  author: sussman;  state: Exp;  lines: +2 -1
Added expat and libsvn_subr dependencies.
----------------------------
revision 1.2
date: 2000/08/08 17:37:00;  author: kfogel;  state: Exp;  lines: +2 -2
Fix various type and path buglets on way to compilation.
----------------------------
revision 1.1
date: 2000/08/08 16:23:28;  author: kfogel;  state: Exp;
Print out checkout dirs.

Skeleton of a test framework; probably doesn't compile yet, more to
come.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/tests/checkout-1.delta,v
Working file: libsvn_wc/tests/checkout-1.delta
head: 1.8
branch:
locks: strict
access list:
symbolic names:
keyword substitution: o
total revisions: 8;	selected revisions: 8
description:
----------------------------
revision 1.8
date: 2000/09/01 22:25:00;  author: kfogel;  state: Exp;  lines: +40 -40
Use "add" as the tagname everywhere, instead of "new".
All sample deltas updated, and:

(svn_delta__tagmap): "add" replaces "new".
(svn_delta__XML_t): svn_delta__XML_add replaces svn_delta__XML_new.
----------------------------
revision 1.7
date: 2000/08/24 20:48:59;  author: kfogel;  state: Exp;  lines: +5 -0
Documentation and #include fixes.

Add a top-level file to checkout-1.delta.  Grin.
----------------------------
revision 1.6
date: 2000/08/19 00:58:52;  author: kfogel;  state: Exp;  lines: +12 -0
Test suite improvements: make script do something useful, correct the
test delta.
----------------------------
revision 1.5
date: 2000/08/05 16:40:14;  author: sussman;  state: Exp;  lines: +1 -1
<new> tag always requires name attribute.
----------------------------
revision 1.4
date: 2000/08/04 20:34:19;  author: kfogel;  state: Exp;  lines: +33 -33
Double quotes for readability (as per Greg Stein's email about XML
accepting either).
----------------------------
revision 1.3
date: 2000/08/04 16:59:53;  author: kfogel;  state: Exp;  lines: +1 -1
Quote the value of the version number attribute, too.
----------------------------
revision 1.2
date: 2000/08/04 16:32:54;  author: kfogel;  state: Exp;  lines: +1 -1
Single quotes, not double quotes (this is XML).
----------------------------
revision 1.1
date: 2000/08/04 16:32:22;  author: kfogel;  state: Exp;
A test delta.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/tests/checkout-1.txt,v
Working file: libsvn_wc/tests/checkout-1.txt
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/04 16:32:22;  author: kfogel;  state: Exp;
A test delta.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/tests/checkout-test.c,v
Working file: libsvn_wc/tests/checkout-test.c
head: 1.12
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 12;	selected revisions: 12
description:
----------------------------
revision 1.12
date: 2000/09/04 20:41:36;  author: kfogel;  state: Exp;  lines: +26 -1
(svn_wc_apply_delta): removed from public interface, as
svn_wc_get_change_walker() is the way to do this now.

* checkout-test.c (apply_delta): new func in test suite, hooks up an
XML delta with a walker to do the checkout.
----------------------------
revision 1.11
date: 2000/09/02 04:46:28;  author: kfogel;  state: Exp;  lines: +8 -6
Include version number as part of the "context" of a delta application:

(w_baton): new version field.
(svn_wc_apply_delta): take version arg, stuff it into walk baton.
(add_directory, add_file): get version, pass it along.
(svn_wc__ensure_adm, svn_wc__ensure_wc_prepared): accept and pass along
new version arg.
(init_adm): take version, use it during file initialization.
----------------------------
revision 1.10
date: 2000/08/28 16:21:59;  author: kfogel;  state: Exp;  lines: +2 -2
Fixed Collab.Net url, and other name change tweaks.
----------------------------
revision 1.9
date: 2000/08/25 20:09:09;  author: kfogel;  state: Exp;  lines: +4 -4
Replace Collab.Net with CollabNet everywhere.
----------------------------
revision 1.8
date: 2000/08/25 18:18:49;  author: kfogel;  state: Exp;  lines: +5 -1
Changes to for delta application to take a destination directory:

(svn_wc_apply_delta): take `dest' and `repos' arguments.

(svn_path_last_component): new func.

(svn_string_find_char_backward): new func, helps out path library.

(svn_wc__working_copy_p): new func.

(svn_wc__ensure_directory): new func.
----------------------------
revision 1.7
date: 2000/08/19 01:17:49;  author: kfogel;  state: Exp;  lines: +1 -1
(svn_delta_digger_t): call it `pdelta_chunk_parser' instead of
`chunk_parser', just to keep things straight.

Pass the new handler_baton, a.k.a. consumer_baton, as appropriate.
----------------------------
revision 1.6
date: 2000/08/19 00:58:52;  author: kfogel;  state: Exp;  lines: +10 -16
Test suite improvements: make script do something useful, correct the
test delta.
----------------------------
revision 1.5
date: 2000/08/18 17:00:33;  author: kfogel;  state: Exp;  lines: +9 -7
Start baton usage.

More flexible test program.
----------------------------
revision 1.4
date: 2000/08/18 00:49:59;  author: kfogel;  state: Exp;  lines: +32 -15
Making WC library use the new stuff in delta library:

`svn_text_delta_window_handler_t' replaces `svn_delta_handler_t',
because more specific.  All uses changed.

(svn_delta_op_t): call field `action_code' instead of `op'.  Having
two different things both called "op" was making my brain spin.
All uses changed.

(do_file_callback, do_directory_callback): parenthesize for precedence
clarity.

(svn_vcdiff_parse): increment buffer offset only if ate a byte.

(svn_vcdiff_send_window): check if callback func is null before
calling it.

(check_existence): include APR_READ flag when testing, because
apr_open() always returns APR_EACCES if you fail to request at least
one of reading or writing.  Also, remove the file after testing.

(window_handler): new func in wc library; skeleton, everything will
depend on the baton.

(add_file, replace_file): store window_handler in *handler.

(checkout-test.c:main): be robuster.

(test_read_fn): interpret results of apr_full_read() correctly.
----------------------------
revision 1.3
date: 2000/08/16 23:01:11;  author: kfogel;  state: Exp;  lines: +19 -23
(svn_delta_read_fn_t): add pool argument.  All callers changed.

(svn_vernum_t): new type.  Callers who formerly used `long int' use
this now.

(svn_wc_apply_delta): correct arguments.  Def and callers changed.

(svn_delta_parse): pass pool to reader function.

(test_read_fn): finished.

Tweaked #includes and Makefiles as appropriate, and defined skeleton
functions.
----------------------------
revision 1.2
date: 2000/08/14 23:17:43;  author: kfogel;  state: Exp;  lines: +35 -1
Rewrite to use the callee-push streaming interface.

This commit is _not_ going to compile, so don't even try.
----------------------------
revision 1.1
date: 2000/08/08 16:23:28;  author: kfogel;  state: Exp;
Print out checkout dirs.

Skeleton of a test framework; probably doesn't compile yet, more to
come.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/tests/checkout-test.sh,v
Working file: libsvn_wc/tests/checkout-test.sh
head: 1.4
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 4;	selected revisions: 4
description:
----------------------------
revision 1.4
date: 2000/08/25 19:58:55;  author: kfogel;  state: Exp;  lines: +1 -1
More changes for context-sensitive delta application.

Do path canonicalization.
----------------------------
revision 1.3
date: 2000/08/25 19:07:40;  author: kfogel;  state: Exp;  lines: +1 -1
Make sure dest_dir is accounted for in delta application.

(maybe_prepend_dest): new func, makes sure delta activity happens in
the right place.

(svn_path_isempty): new func, helper for above.
----------------------------
revision 1.2
date: 2000/08/19 00:58:52;  author: kfogel;  state: Exp;  lines: +3 -15
Test suite improvements: make script do something useful, correct the
test delta.
----------------------------
revision 1.1
date: 2000/08/08 16:23:28;  author: kfogel;  state: Exp;
Print out checkout dirs.

Skeleton of a test framework; probably doesn't compile yet, more to
come.
=============================================================================

RCS file: /cvs/subversion/subversion/libsvn_wc/tests/Attic/deltaparse-test.c,v
Working file: libsvn_wc/tests/deltaparse-test.c
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/04 19:23:58;  author: sussman;  state: dead;  lines: +0 -0
moving files around
----------------------------
revision 1.1
date: 2000/08/04 18:50:42;  author: sussman;  state: Exp;
deltaparser started
=============================================================================

RCS file: /cvs/subversion/subversion/tests-common/.cvsignore,v
Working file: tests-common/.cvsignore
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/30 00:01:17;  author: gstein;  state: Exp;
"Looks like an orange on a toothpick!"
=============================================================================

RCS file: /cvs/subversion/subversion/tests-common/Makefile.am,v
Working file: tests-common/Makefile.am
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/28 20:11:25;  author: sussman;  state: Exp;  lines: +1 -5
Factorized main() out of standard svn test programs.
----------------------------
revision 1.1
date: 2000/08/28 19:27:40;  author: sussman;  state: Exp;
common main() code for test-suite, not quite finished yet
=============================================================================

RCS file: /cvs/subversion/subversion/tests-common/README,v
Working file: tests-common/README
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1
date: 2000/08/28 19:27:40;  author: sussman;  state: Exp;
common main() code for test-suite, not quite finished yet
=============================================================================

RCS file: /cvs/subversion/subversion/tests-common/svn_tests_main.c,v
Working file: tests-common/svn_tests_main.c
head: 1.2
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
----------------------------
revision 1.2
date: 2000/08/28 20:11:25;  author: sussman;  state: Exp;  lines: +32 -9
Factorized main() out of standard svn test programs.
----------------------------
revision 1.1
date: 2000/08/28 19:27:40;  author: sussman;  state: Exp;
common main() code for test-suite, not quite finished yet
=============================================================================