CVSUtils
view release on metacpan or search on metacpan
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
(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
----------------------------
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
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.
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.
----------------------------
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
(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.
----------------------------
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.
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,
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
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
=============================================================================
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.
----------------------------
(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.
----------------------------
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'.
( run in 0.912 second using v1.01-cache-2.11-cpan-98e64b0badf )