Chia-liang Kao <clkao@clkao.org> (clkao)


Found Patch Suggested
r863514 r873073, r872852, r872638, r872285, r872284, r872282, r872245, r872240, r872237, r871694, r871620, r870126, r870054, r870014, r864581, r864578, r864571, r864464, r864262, r864261, r862757, r862756, r862755, r862717, r862683, r862644, r862643, r862610, r862385, r862239, r862238, r862237, r861566, r860942, r860934, r860933, r858590, r858589, r858588, r858586, r857825, r857112, r857077, r857075, r857066, r857064, r857063, r857049, r856443, r856440, r856439, r856242, r856171, r855788, r855787, r855775, r855770, r855769, r855684, r855683, r855368, r855296, r855194, r855193, r855191, r855156, r855155, r855154, r855150, r854353, r854290, r853851, r853647, r853244, r853238, r853237, r852965, r852964, r852682, r852681, r852472, r852471, r852219, r852218, r851784, r851704, r851573, r851525, r851062, r850850, r850849, r850786, r850533, r850532, r850531, r850516, r850515, r850514, r850507, r850289, r850189, r850186, r849807, r849806, r849428, r849410, r849218, r849199, r848794, r848784, r848776, r848646, r848455, r848454, r848434, r848369, r848347, r848313, r848312, r848308, r848307, r848233, r848232, r848191, r848031, r848027, r848026, r848022, r848019, r848013, r848012, r848011, r847928, r847927, r847926, r847925, r847917, r847880, r847879, r847753, r847722, r847547, r847527, r847525, r847500, r847468, r847391, r847389, r847323, r847296, r847286, r847207, r847206, r847138, r847074, r847073, r847072, r847071, r847070, r847069, r847066, r847061, r846989, r846977, r846960, r846935, r846926, r846916, r846910, r846909, r846891, r846877, r846876, r846867, r846858, r846846, r846825, r846729, r846724, r844754 r857040, r857027

r844754 | kfogel | 2003-01-30 23:14:03 +0000 (Thu, 30 Jan 2003)

Update cvs2svn for revision 4570.

Patch by: Chia-liang Kao <clkao@clkao.org>
          Marshall White <cscidork@yahoo.com>
(Both submitted the same patch independently.)

* tools/cvs2svn/cvs2svn.py:
  Replace calls to svn_stream_from_stdio with svn_stream_from_aprfile.


r846724 | clkao | 2003-08-05 16:20:27 +0000 (Tue, 05 Aug 2003)

Fix building a real libsvn_swig_perl, which requires proper perl
include paths.

* build/ac-macros/swig.m4: assign SWIG_PL_INCLUDES.
* build/generator/gen_base.py: add custom class for swig-pl.
* Makefile.in: define COMPILE_SWIG_PL, INSTALL_SWIG_PL, and
  INSTALL_SWIG_PL_LIB properly.



r846729 | clkao | 2003-08-06 01:16:42 +0000 (Wed, 06 Aug 2003)

Fix a configure error message introduced in rev 6650.

Reported by: philip

* build/ac-macros/swig.m4: Escape $(SWIG_PL_INCLUDES) so it gets
  into configure verbatim.


r846825 | clkao | 2003-08-16 11:20:26 +0000 (Sat, 16 Aug 2003)

The Perl Bindings for Subversion, and more wrapping to existing swig
maps.

NOTE: the member function invokers (ra, reporter, editor) are only
      enabled for perl. Feel free to remove the ifdef if maintainers
      of other swig language bindings would like to incorporate them.

* INSTALL: build and test instructions for perl.

* apr.i, core.i, svn_client.i, svn_delta.i, svn_fs.i, svn_ra.i,
  svn_repos.i, svn_string.i, svn_types.i, svn_wc.i:
    Typemaps for perl.

* core.i:
    Ignore svn_opt_print_generic_help due to bad pool convention.

    Wrap apr_file_open_std{err,out} and svn_config.

* svn_delta.i:
    Wrap driver side of delta_editor.

* svn_fs.i
* svn_repos.i
* svn_types.i
    Move typemaps of svn_log_message_receiver_t, svn_stream_t ** and
    svn_node_kind_t * to svn_types.i since they are used in other
    places.

* svn_string.i
    Move apr_array_header_t *paths from with svn_log_message_receiver_t
    as it is used in other places.

* svn_types.i:
  (Perl only)
    Default pool handling.

    Wrap svn_opt_revision_t and guess the kind of its union.

* svn_ra.i:
    Ignore svn_ra_{dav,local,svn}_init.

    Wrap ra_plugin and ra_reporter, also create thunk callers for
    ra_callback.

* svn_repos.i:
    Wrap commit_editor.

* swigutil_pl.c
* swigutil_pl.h
* perl/Base.pm
* perl/Client.pm
* perl/Core.pm
* perl/Delta.pm
* perl/Fs.pm
* perl/Makefile.PL
* perl/Ra.pm
* perl/Repos.pm
* perl/Wc.pm
* perl/h2i.pl
* perl/t/1repos.t
* perl/t/2fs.t
* swigutil_pl.h
    New files.



r846846 | clkao | 2003-08-17 19:49:23 +0000 (Sun, 17 Aug 2003)

Fix compiling swigutil_pl.c for threaded Perl.

* swigutil_pl.c
  (perl_callback_thunk): Stop using call_{method,sv} as symbols, as
    they might be defined. Use an enum flag instead. All callers
    changed.

  (convert_array): rename parameter `convert' to
    `converter_func'. Avoid symbol collisions.


r846858 | clkao | 2003-08-18 19:11:55 +0000 (Mon, 18 Aug 2003)

Fix perl bindings crash on svn_fs_revision_prop for undefined
properties.

* swig/svn_string.i
  (RET_STRING): check returned string for null.

* swig/perl/t/2fs.t: regression test.



r846867 | clkao | 2003-08-19 07:35:35 +0000 (Tue, 19 Aug 2003)

Wrap version info for swig bindings.

* swig/core.i: include svn_version.h

* swig/perl/Core.pm: assign $VERSION.


r846876 | clkao | 2003-08-20 04:39:28 +0000 (Wed, 20 Aug 2003)

Bidirectional interpolation between svn_stream_t and perl IO objects.

* svn_types.i: Typemaps for svn_stream_t

* svn_string.i: Properly wrap returned svn_stringbuf_t for perl.

* swigutil_pl.c
* swigutil_pl.h
  (svn_swig_pl_make_stream, svn_swig_pl_from_stream): New.

* perl/Core.pm
  (SVN::Stream): New.

* perl/t/1repos.t
* perl/t/2fs.t
  Update tests.



r846877 | clkao | 2003-08-20 06:18:13 +0000 (Wed, 20 Aug 2003)

Remap the pool API in swig since they are now #define'ed in
svn_pool.h, and swig doesn't take care of them.

* core.i: use %rename to track #define'ed functions


r846891 | clkao | 2003-08-21 17:26:22 +0000 (Thu, 21 Aug 2003)

Default pool support in Perl bindings.

* core.i: wrap the current_pool variable for perl

* svn_types.i: simplify the pool typemaps with svn_swig_pl_make_pool.

* swigutil_pl.c
* swigutil_pl.h
  (svn_swig_pl_make_pool): New.

* perl/Core.pm
  (SVN::Pool): new.



r846909 | clkao | 2003-08-22 18:46:59 +0000 (Fri, 22 Aug 2003)

Convert SVN::Pool to pool for h2i generated interface in perl bindings.

* svn_types.i: add non-default apr_pool_t typemap.


r846910 | clkao | 2003-08-22 18:52:34 +0000 (Fri, 22 Aug 2003)

Allow subclassing native editor in SVN::Delta::Editor with other
parameters.

* perl/Delta.pm:
  (convert_editor): New.
  (new): Treat _editor as native editor after initialization.


r846916 | clkao | 2003-08-24 05:27:16 +0000 (Sun, 24 Aug 2003)

Fix a missing SVN_NO_ERROR in perl io object interpolation.

* swigutil_pl.c
  (io_handle_close): return SVN_NO_ERROR


r846926 | clkao | 2003-08-25 08:40:55 +0000 (Mon, 25 Aug 2003)

Fix a infinite recursion of perl default pool handling caused by rev
6835.

* svn_type.i:
  (apr_pool_t *): do not use make_pool to find deafult pool for
    parent_pool.


r846935 | clkao | 2003-08-25 16:44:18 +0000 (Mon, 25 Aug 2003)

Workaround svn_delta_editor_t for respo_dir_delta not correctly
typemapped in perl.

For some reasons I can't understand, svn_repos.i does not map
svn_delta_editor_t for respo_dir_delta, even if svn_delta.i is
imported in svn_repos.i. This workaround only affects the perl
bindings, since python uses a custom function creating native editors.

* svn_repos.i:
  (svn_delta_editor_t): declare the typemap again in this file.


r846960 | clkao | 2003-08-26 18:13:26 +0000 (Tue, 26 Aug 2003)

Wrap svn_fs's history related function.

* svn_fs.i: declare svn_fs_history_t ** a returned object.


r846977 | clkao | 2003-08-28 14:53:36 +0000 (Thu, 28 Aug 2003)

Wrap more fs functions as object methods in Perl and misc improvement.
This can't be done with SVN::Base like in other namespaces due to the
function naming is not of some convention.

* Perl/Fs.pm:
  (svn_fs_t): Add begin_txn as method.
  (svn_root_t): Add all functions taking svn_root_t * as methods.
  (svn_fs_txn_t): Add commit as method.

* perl/Core.pm: 
  (SVN::Node): New namespace. $SVN::Core::node_none is now
    $SVN::Node::none.

* perl/t/2fs.t: Update test suite to reflect new method calls.


r846989 | clkao | 2003-08-29 09:21:57 +0000 (Fri, 29 Aug 2003)

Avoid warnings in Fs.pm of the perl bindings.

* perl/Fs.pm: Use our instead of my for package variables.


r847061 | clkao | 2003-09-05 21:06:18 +0000 (Fri, 05 Sep 2003)

Fix the case ra->get_commit_editor was not caught by h2i.pl for
generating invoker function of swig bindings.

* perl/h2i.pl: allow blank lines with whitespaces for separating
  member functions.



r847066 | clkao | 2003-09-06 04:54:19 +0000 (Sat, 06 Sep 2003)

Fix $ra->get_commit_editor's returned data being blessed as reporter
object in perl bindings.

* perl/Ra.pm: return verbatim arrayref for get_commit_editor.



r847069 | clkao | 2003-09-06 07:36:10 +0000 (Sat, 06 Sep 2003)

makes SVN::Ra::get_commit_editor returns commit/baton pair as
SVN::Repos::get_commit_editor.

* perl/Ra.pm: fix returned data fof get_commit_editor.



r847070 | clkao | 2003-09-06 11:39:58 +0000 (Sat, 06 Sep 2003)

Document SVN::Base and slightly modify the bootstrapping behavior.

* perl/Base.pm:
  Add POD.
  (import): boostrap the _ module unless its ISA is set to Dynaloader.



r847071 | clkao | 2003-09-06 12:26:06 +0000 (Sat, 06 Sep 2003)

Minor cleanup in perl bindings. Update test suite to use the suggested
calling style.

* perl/Base.pm: Kill a warning.
* perl/Delta.pm: (SVN::TxDelta): New.
* perl/t/0use.t: New.
* perl/t/1repos.t: Change from `use' to `require'. Use SVN::TxDelta.
* perl/t/2fs.t change from `use' to `require'



r847072 | clkao | 2003-09-06 14:17:10 +0000 (Sat, 06 Sep 2003)

Document SVN::Core and SVN::Repos. Wrap more svn_repos_t
functions as methods.

Also move svn_log_changed_path_t from Repos to Core.



r847073 | clkao | 2003-09-06 14:27:25 +0000 (Sat, 06 Sep 2003)

More cleanups for the test suite to use the default pool feature.

* perl/t/1repos.t: make use of default pool.


r847074 | clkao | 2003-09-06 14:28:31 +0000 (Sat, 06 Sep 2003)

Document SVN::Delta, SVN::Ra, SVN::Client. The perl bindings are now
fully documented.

* perl/Delta.pm, perl/Ra.pm, perl/Client.pm:
  Add POD.



r847138 | clkao | 2003-09-15 16:50:47 +0000 (Mon, 15 Sep 2003)

minor cleanups to the perl bindings.

* t/*, Base.pm: cleanup warnings.
* Repos.pm: fix method db_lockfile typo.
* Core.pm (SVN::Stream): only close the stream object if it's
  not destroyed.


r847206 | clkao | 2003-09-22 10:53:58 +0000 (Mon, 22 Sep 2003)

* perl/Delta.pm: kill a warning when debugging is enabled in
  SVN::Delta::Editor


r847207 | clkao | 2003-09-22 10:54:25 +0000 (Mon, 22 Sep 2003)

Wrap the digest output of svn_fs_file_md5_checksum &
svn_io_file_checksum for perl bindings.

* svn_types.i: add char digest[] argout typemaps.
* perl/t/2fs.t: add md5 to regression test.


r847286 | clkao | 2003-09-27 21:48:58 +0000 (Sat, 27 Sep 2003)

allow Makefile to build par with PAR::Dist for packaging perl
bindings.

* perl/Makefile.PL: Add par target.


r847296 | clkao | 2003-09-28 02:45:41 +0000 (Sun, 28 Sep 2003)

Make the digest output from svn_txdelta_send_stream and
svn_txdelta_apply accessible.

* svn_types.i: apply typemaps for digest and result_digest.


r847323 | clkao | 2003-09-30 11:57:25 +0000 (Tue, 30 Sep 2003)

Ignore the result_diegest in txdelta_apply. It is a pointer for later
update, so it makes no sense for perl bindings to take care about it.

* swig/svn_types.i: don't apply result_digest as unsigned char digest[]



r847389 | clkao | 2003-10-06 11:39:02 +0000 (Mon, 06 Oct 2003)

Follow the svn_repos_history api changes for perl bindings.

* swig/swigutil_pl.[ch]: (svn_swig_pl_thunk_history_func): New.

* swig/perl/t/1repos.t
* swig/perl/t/2fs.t: update test suite.

* swig/svn_repos.i: Add perl5 typemap for svn_repos_history_func_t.


r847391 | clkao | 2003-10-06 14:53:45 +0000 (Mon, 06 Oct 2003)

Avoid double-closing of SVN::Stream objects.

* perl/Core.pm: undef svn_stream after close.


r847468 | clkao | 2003-10-13 09:49:23 +0000 (Mon, 13 Oct 2003)

SVN::Delta::Editor improvements:
* do not modify $AUTOLOAD so stacked perl Editors work correctly
* allow initializing perl Editor in addition to C Editor as relayed editor.
* document the stacked perl editor support in pod.


r847500 | clkao | 2003-10-15 10:53:27 +0000 (Wed, 15 Oct 2003)

Support tied glob (perl magic) as svn_stream_t in addition to PerlIO.
Also other misc fixes.

* swigutil_pl.c
  (svn_swig_pl_objs_to_hash): Kill a warning.

  (thunk_open_tmp_file): Follow api change.

  (svn_swig_pl_make_stream): Store IO object instead of IoIFP object
  in stream baton.

  (io_handle_{read,write,close}): Handle the case that IO object is mg.


r847525 | clkao | 2003-10-20 00:39:01 +0000 (Mon, 20 Oct 2003)

Correct the thunked calls to close_{edit,directory} for perl.
This fixes some stack corruption in some stress tests.

* swigutil_pl.c (close_baton): Don't call in scalar context.
  Don't decrease refcnt for baton if not exist.


r847527 | clkao | 2003-10-20 14:28:51 +0000 (Mon, 20 Oct 2003)

minor perl bindings enhancement.

* perl/Fs.pm (svn_fs_txn): Add close method.

* perl/Delta.pm (SVN::Delta::Editor): Catch the error and stack
  when linking to an editor in C for easier debugging.


r847547 | clkao | 2003-10-22 11:31:35 +0000 (Wed, 22 Oct 2003)

Add a method "fs" to fs_root class for retrieving fs in Perl.


r847722 | clkao | 2003-11-06 05:47:13 +0000 (Thu, 06 Nov 2003)

Merge from local for minor perl bindings fixes.

* swig/svn_ra.i: Correctly wrap the output of ra->get_repos_root.

* swig/perl/Fs.pm:
  Add get_uuid and set_uuid as fs methods.
  Add abort as a fs_txn method.
  Follow API change introduced in r7635 (nuke delete_tree and rename).

* swig/perl/Ra.pm:
  Add missing 'require SVN::Core' in the SVN::Ra synopsis.

For the record, this auto merge commit is done by:

    svk merge -a //svn/local //svn/trunk


r847753 | clkao | 2003-11-09 11:09:30 +0000 (Sun, 09 Nov 2003)

Merge from local for catching up API changes:

* swig/swigutil_pl.c, swig/swigutil_pl.h:
  Add thunk callers for absent_{file,directory}, and authz_read_func.

* swig/svn_ra.i: Wrap svn_repos_authz_read_func_t.

* swig/perl/Fs.pm: txn->close is no more.

r847879 | clkao | 2003-11-19 18:40:33 +0000 (Wed, 19 Nov 2003)

Merge from local: catch up svn_stream_readline api change.

* swig/svn_types.i, swig/svn_wc.i: Move boolean_t * typemap to
  svn_types.i.

* swig/perl/Core.pm: Use first returned value of stream->readline
  as buffer.

r847880 | clkao | 2003-11-19 18:55:09 +0000 (Wed, 19 Nov 2003)

Oops, the last merge (r7805) is bogus. Here comes the real one.

The actual change is:

Catch up svn_stream_readline api change.

* swig/svn_types.i, swig/svn_wc.i: Move boolean_t * typemap to
  svn_types.i.

* swig/perl/Core.pm: Use first returned value of stream->readline
  as buffer.


r847917 | clkao | 2003-11-25 08:12:38 +0000 (Tue, 25 Nov 2003)

"Boe naid bain gwannathar, Boe cuil ban firitha."

Fix a bug in perl bindings that SVN::Stream objects are not destroyed
when their scopes end.

* swig/swigutil_pl.c (svn_swig_pl_from_stream):
  Cast the SVN::Stream object into a mortal life.

r847925 | cmpilato | 2003-11-26 05:39:58 +0000 (Wed, 26 Nov 2003)

* subversion/libsvn_fs/tree.c
  (svn_fs_contents_changed): Fix copy-n-pasto in error message.

Patch by: Chia-liang Kao <clkao@clkao.org>


r847926 | cmpilato | 2003-11-26 08:04:15 +0000 (Wed, 26 Nov 2003)

Keep dir-delta from producing no-op apply_textdelta()s when ignoring
ancestry.  This makes many things work better in the case of two
mutually merged branches, since editors now know the source and target
stream are the same without having to construct the fulltext from the
noop txdelta.  As a result, 'svn diff' between the two branches will
no longer show a lot of empty diffs.

Patch by: Chia-liang Kao <clkao@clkao.org>
(Tweaked by me.)

* subversion/libsvn_repos/delta.c
  (compare_files): New.
  (delta_files): Use the new compare_files() instead of
    svn_fs_contents_changed() when ignore_ancestry is on.


r847927 | clkao | 2003-11-26 15:43:47 +0000 (Wed, 26 Nov 2003)

Enable svn_diff library in perl bindings.

* swig/core.i:
  Include svn_diff.h for perl.
  Add svn_diff_t ** to output param list.

* swig/perl/Makefile.PL: Link libsvn_diff.


r847928 | clkao | 2003-11-26 16:07:56 +0000 (Wed, 26 Nov 2003)

Partially wrap apr_file_t input for perl bindings. Currently it just
opens the given path name.

* swig/swigutil_pl.c, swig/swigutil_pl.h
  (svn_swig_pl_make_file): New.

* swig/apr.i: Wrap apr_file_t *


r848011 | clkao | 2003-12-05 16:59:12 +0000 (Fri, 05 Dec 2003)

Build enhacement and better interpolation for svn_stream objects in Perl.

* perl/Makefile.PL
  workaround build problems so Mac OS X and FreeBSD can both build and run.

* perl/Core.pm
  (SVN::Stream::READLINE): Support $/ = \$chunksize.
  (SVN::Stream::getline): Properly return undef upon eof.

* swigutil_pl.c
  (svn_swig_pl_make_stream): Do not double PerlIO-wrap known types
  like SVN::Stream and _p_svn_stream.


r848012 | clkao | 2003-12-05 17:35:40 +0000 (Fri, 05 Dec 2003)

Allow NULL streams to be converted from Perl.

* swigutil_pl.c
  (svn_swig_pl_make_stream): Handle the case that stream is undef.


r848013 | clkao | 2003-12-05 17:45:30 +0000 (Fri, 05 Dec 2003)

* swigutil_pl.c
  (svn_swig_pl_make_stream): Use SvOK to test if stream is defined.


r848019 | clkao | 2003-12-06 15:13:46 +0000 (Sat, 06 Dec 2003)

Fix a segfault when writing to svn_stream that are actually Perl IO
handles.

* swigutil_pl.c
  (io_handle_write): Create a pv with the specified length rather than
  let Perl calculate it with strlen.


r848022 | clkao | 2003-12-07 17:25:10 +0000 (Sun, 07 Dec 2003)

Various fixes for perl bindings, and partial swig 1.3.20 support.

* perl/Makefile.PL: 'make clean' was removing Makefile.PL for some
  reasons, perhaps on case-insensitive platforms. Submitted by:
  Ben Reser <ben@reser.org>

* svn_repos.i: Wrap config and fs_config for svn_repos_create.

* svn_delta.i, svn_fs.i, core.i: Include svn_md5.h.

* svn_string.i: Don't return when we get a null array.

* swigutil_pl.c:
  Refactor perl -> c array convertor to share element convertors
  with hash convertors. Also re-order the functions for readibility.

  (svn_swig_pl_strings_to_hash): New. 

* swigutil_pl.h:
  Add swig 1.3.20 compile support.

  (svn_swig_pl_strings_to_hash): New. 


r848026 | clkao | 2003-12-08 08:22:57 +0000 (Mon, 08 Dec 2003)

Make ra->get_dir work in perl bindings. Also update build instructions.

* perl/Core.pm: Add class wrapper for svn_dirent_t.

* svn_ra.i: Apply apr_hash_t *props as prophash.

* svn_client.i: Move apr_hash_t **dirents map to svn_types.i as it's
  share with svn_ra.i.

* svn_types.i: apr_hash_t **dirents now here, also add perl typemaps.

* INSTALL: Update perl bindings section, in-tree building is supported
  now.


r848027 | clkao | 2003-12-08 11:55:29 +0000 (Mon, 08 Dec 2003)

* perl/Delta.pm: Add high level function mapping
  SVN::TxDelta::new -> svn_txdelta.


r848031 | mbk | 2003-12-08 19:37:43 +0000 (Mon, 08 Dec 2003)

* www/project_links.html: add svk, a decentralized version control
  system based on subversion.

Patch by: Chia-liang Kao <clkao@clkao.org>


r848191 | clkao | 2003-12-30 04:19:09 +0000 (Tue, 30 Dec 2003)

Fix an orphan pool in svn_stream_t typemap that are actually Perl IO
handles. Also improve the default pool handling. Pools passed to
callbacks in perl can now simply be made default with $pool->default
and will be restored when the scope ends.

swigutil_pl.c:
  (io_handle_close): Don't destroy pool or decrease refcount. 
  (io_handle_cleanup): New.
  (svn_swig_pl_make_stream): Register pool cleanup function
    to releasing refcount for wrapped perl io handles. Use default
    pool instead of creating a orphan pool.

perl/Core.pm:
  (SVN::Pool): New helper function _wrap and handle wrapped pools in
    DESTROY.
  (_p_apr_pool_t): New method: default.

perl/t/4pool.t:
  test suite for default pool management.


r848232 | clkao | 2004-01-05 13:17:50 +0000 (Mon, 05 Jan 2004)

Fix unsetting props from Perl bindings.

* swig/svn_string.i:
  Allow svn_string_t to be undef from Perl.


r848233 | clkao | 2004-01-05 13:39:00 +0000 (Mon, 05 Jan 2004)

Nominate perl changes to be merged. build system changes and perl-only
ones are splitted.



r848307 | clkao | 2004-01-11 13:03:31 +0000 (Sun, 11 Jan 2004)

Catch up the authz_func_t rename in r8213 for Perl bindings.

* svn_repos.i
* swigutil_pl.c
* swigutil_pl.h
  Replace svn_repos_authz_read_func_t.


r848308 | clkao | 2004-01-11 13:19:09 +0000 (Sun, 11 Jan 2004)

Nominate r8233 for merging.

r848312 | clkao | 2004-01-11 20:33:26 +0000 (Sun, 11 Jan 2004)

Fix Perl bindings test suite for API change introduced in r8216.

* t/4pool.t: dir_delta's target now takes ' instead of undef.


r848313 | clkao | 2004-01-11 20:34:42 +0000 (Sun, 11 Jan 2004)

Nominate r8238 for merge.

r848347 | clkao | 2004-01-13 12:15:53 +0000 (Tue, 13 Jan 2004)

Vote on r8270

r848369 | clkao | 2004-01-14 23:15:56 +0000 (Wed, 14 Jan 2004)

Unbreak SVN::Ra for the moment.

* core.i: Re-enable io_open_unique_file which is depended on by
  SVN::Ra. Proper typemap for apr_file_t ** is required for
  eliminate this.


r848434 | clkao | 2004-01-17 15:38:08 +0000 (Sat, 17 Jan 2004)

Vote for perl changes i just reviewed and tested.



r848454 | clkao | 2004-01-19 02:20:18 +0000 (Mon, 19 Jan 2004)

Add a simple test for delta to Perl bindings.

t/5delta.t: New.


r848455 | clkao | 2004-01-19 02:21:40 +0000 (Mon, 19 Jan 2004)

Group the test suite addressing the problem with r8348 and cast vote.



r848646 | kfogel | 2004-02-06 16:43:43 +0000 (Fri, 06 Feb 2004)

* contrib/client-side/search-svnlog.pl: Add -v option, adjust header
    comment and usage message.

Patch by: Chia-liang Kao <clkao@clkao.org>
(Doc tweaks by me.)


r848776 | clkao | 2004-02-19 06:51:33 +0000 (Thu, 19 Feb 2004)

Vote on merging r8272,r8295.

r848784 | clkao | 2004-02-19 07:49:43 +0000 (Thu, 19 Feb 2004)

* swig/svn_types.i: Wrap svn_filesize_t as long long for Perl.

* swig/perl/t/2fs.t: Corresponding regression test.


r848794 | clkao | 2004-02-19 11:03:48 +0000 (Thu, 19 Feb 2004)

Cast votes for various perl-related changes.



r849199 | clkao | 2004-03-19 02:46:05 +0000 (Fri, 19 Mar 2004)

Wrap root->paths_change for Perl.

* perl/Fs.pm: Wrapper for svn_fs_path_change_kind_t and svn_fs_path_change_t.

* perl/svn_fs.i: Wrapper for apr_hash_t **changed_paths_p.


r849218 | clkao | 2004-03-19 13:55:11 +0000 (Fri, 19 Mar 2004)

* perl/Delta.pm:
  Fix a problem that apply_textdelta return values are different
  in stacked editors.


r849410 | clkao | 2004-04-12 16:21:19 +0000 (Mon, 12 Apr 2004)

Nominate r8931 and r8902 for 1.0.2.



r849428 | clkao | 2004-04-14 19:09:15 +0000 (Wed, 14 Apr 2004)

Correct nominated perl bindings changes to merge

r849806 | clkao | 2004-05-15 11:30:36 +0000 (Sat, 15 May 2004)

Wrap svn_txdelta_parse_svndiff properly. The function is returning
svn_stream_t * directly instead of having a svn_stream_t ** as argument.

* swig/svn_types.i:
  (wrap returned svn_stream_t *)


r849807 | clkao | 2004-05-15 11:37:04 +0000 (Sat, 15 May 2004)

Nominate r9732 for 1.0.3.



r850186 | clkao | 2004-07-01 11:03:13 +0000 (Thu, 01 Jul 2004)

Fix the reference count of svn_commit_callback_t in Perl Bindings.

* perl/libsvn_swig_perl/swigutil_pl.c
  (cleanup_refcnt, svn_swig_pl_hold_ref_in_pool): New.

* perl/libsvn_swig_perl/swigutil_pl.h
  (svn_swig_pl_hold_ref_in_pool): New.

* perl/native/t/1repos.t
  Test for proper garbage collection for symbols referenced in commit
  callback.

* svn_types.i
  (svn_commit_callback_t):
    Hold the callback reference in pool instead of blindly increase
    its refcount.


r850189 | clkao | 2004-07-01 12:10:52 +0000 (Thu, 01 Jul 2004)

Fix various immortal Perl data that causes leakage.

* core.i:
  (const char *data, apr_size_t *len): Make variable mortal.

* perl/libsvn_swig_perl/swigutil_pl.c:
  (convert_int, convert_hash, convert_array):
    Don't increase reference counts for HV and AV, make RV and IV mortal.


r850289 | clkao | 2004-07-10 16:59:51 +0000 (Sat, 10 Jul 2004)

* perl/native/t/1repos.t:
  Get rid of the Internals requirement incidentally committed.


r850507 | breser | 2004-07-27 23:20:05 +0000 (Tue, 27 Jul 2004)

The new VCP destination driver based on svk is now on CPAN.
Update links accordingly.

Patch by: Chia-liang Kao <clkao@clkao.org>

* www/project_links.html
* www/project_faq.html
  Per clkao's request move links from his web page to CPAN for VCP.


r850514 | clkao | 2004-07-29 19:05:29 +0000 (Thu, 29 Jul 2004)

* perl/native/Ra.pm
  (AUTOLOAD): Don't invoke ra methods with ra's pool. Let the caller
  decide if the default pool should be used. this makes pool usage more
  efficient with ra session that has longer life.


r850515 | clkao | 2004-07-29 19:17:29 +0000 (Thu, 29 Jul 2004)

* perl/native/t/5delta.t
  Do not require IO::String for this test. Use scalar handle since we
  require Perl 5.8 anyway.


r850516 | clkao | 2004-07-29 19:30:28 +0000 (Thu, 29 Jul 2004)

Nominate r10440 and vote.


r850531 | clkao | 2004-08-01 01:13:56 +0000 (Sun, 01 Aug 2004)

Test and vote for r10400, r10401.


r850532 | clkao | 2004-08-01 16:48:50 +0000 (Sun, 01 Aug 2004)

Perl Bindings:
- Fix ra->get_rev to return values properly.
- Allow subclasses of SVN::Ra and SVN::Delta delegate method invokers.
- Use SVN::Pool API.

* perl/native/Delta.pm
  (AUTOLOAD): Be less strict translating $AUTOLOAD so subclasses could
  delegate invokers to SVN::Delta::Editor.

* perl/native/Ra.pm
  (AUTOLOAD): Return SVN::Ra::Reporter only on the 4 do_* methods.
  This allows ra->get_rev to return values properly.

  (new): Don't use create pool directly. Use SVN::Pool API.


r850533 | clkao | 2004-08-01 16:51:35 +0000 (Sun, 01 Aug 2004)

Nominate and vote for r10458.


r850786 | clkao | 2004-08-23 17:34:37 +0000 (Mon, 23 Aug 2004)

Nominate r10711 and cast some votes.


r850849 | clkao | 2004-08-30 17:31:56 +0000 (Mon, 30 Aug 2004)

Wrap svn_config_enumerator_t for Perl bindings.

* core.i:
  Wrap svn_config_enumerator_t.

* perl/libsvn_swig_perl/swigutil_pl.c
* perl/libsvn_swig_perl/swigutil_pl.h
  (svn_swig_pl_thunk_config_enumerator): New.


r850850 | clkao | 2004-08-30 17:42:51 +0000 (Mon, 30 Aug 2004)

Nominate r10775

r851062 | clkao | 2004-09-16 00:32:24 +0000 (Thu, 16 Sep 2004)

Nominate Perl bindings fixes for 1.0.7.

r851525 | clkao | 2004-10-17 12:48:55 +0000 (Sun, 17 Oct 2004)

 r12569@portege:  clkao | 2004-10-17T12:41:38.400533Z
 Fix various stalled references to Perl objects that cause memory leaks.
 
 * libsvn_swig_perl/swigutil_pl.c:
   (thunked_window_handle): Decrease handler refcnt after sending the
   last (NULL) window.
 
   (thunk_apply_textdelta): Decrease the reference to the result holding
   svn_txdelta_window_handler and its baton after deferencing them from
   Perl.
 
   (thunk_open_tmp_file): Decrease the reference to the result after use.
 
   (svn_ra_make_callback): Do not hold an additional reference to the
   ra::callback object, as SVN::Ra is holding it in $self->{callback}
   already.


r851573 | clkao | 2004-10-19 21:15:48 +0000 (Tue, 19 Oct 2004)

Vote on r11290.

r851704 | clkao | 2004-10-26 07:53:51 +0000 (Tue, 26 Oct 2004)

Pool usage fixes for SVN::Ra.

* libsvn_swig_perl/swigutil_pl.c
  (svn_ra_make_callbacks): hold a reference to callback object in the ra pool.

* native/Ra.pm
  (SVN::Ra::new):
    Don't use default pool for get_ra_library.
    Don't hold callback object in $self->{callback}.

  (SVN::Ra::Callbacks::open_tmp_file): Use the pool supplied in function call.



r851784 | clkao | 2004-11-02 03:15:57 +0000 (Tue, 02 Nov 2004)

Nominate r11451 and r11630 for 1.1.2.

r852218 | clkao | 2004-12-04 15:13:55 +0000 (Sat, 04 Dec 2004)

r11300@ab:  clkao | 2004-11-17T15:48:54.151638Z
  Pass pool to methods in Perl for close_baton.
  Use a hash to cache SWIG_TypeQuery results.

  * libsvn_swig_perl/swigutil_pl.c:
    (close_baton): Pass pool to methods in Perl.
      Use svn_swig_pl_callback_thunk.

    (_swig_perl_type_query): New.
    (_SWIG_TYPE): New.
 
    Change callers of SWIG_TypeQuery to use _swig_perl_type_query.



r852219 | clkao | 2004-12-04 15:16:39 +0000 (Sat, 04 Dec 2004)

 r11301@ab:  clkao | 2004-11-17T15:52:06.606759Z
 Improve SVN::* loading time by 5%.
 
 * perl/native/Base.pm:
   (import): Compile the ignore list instead of doing linear
   matching.



r852471 | clkao | 2004-12-19 12:01:39 +0000 (Sun, 19 Dec 2004)

* perl/libsvn_swig_perl/swigutil_pl.c
  (thunk_open_tmp_file): Invoke Perl open_tmp_file with pool.
  (thunk_get_wc_prop): Use POOLINFO macro.


r852472 | clkao | 2004-12-19 12:13:57 +0000 (Sun, 19 Dec 2004)

Nominate r12397 for 1.1.x.


r852681 | clkao | 2005-01-06 05:27:07 +0000 (Thu, 06 Jan 2005)

Unbreak Perl bindings.
 
* swig/core.i:
  Don't ignore svn_io_open_unique_file, which is used by SVN::Ra::Callback.
 
* swig/svn_client.i:
  Fix typo in svn_client_blame_receiver_t typemap.
 
* swig/svn_types.i:
  Revive check_path return value wrapping.
 

r852682 | clkao | 2005-01-06 08:44:01 +0000 (Thu, 06 Jan 2005)

Vote.

r852964 | clkao | 2005-02-01 06:50:48 +0000 (Tue, 01 Feb 2005)

Catch up svn_ra api changes for Perl Bindings.

* perl/Makefile.PL.in:
  Retire ra_plugin.hi.

* perl/native/Ra.pm:
  (AUTOLOAD): Adjust ra method dispatching.
  (new): Use new svn_ra api for opening session.

* perl/native/t/6ra.t: New.

* svn_ra.i:
  Retire session_baton **, and make  svn_ra_session_t ** a returned 


r852965 | clkao | 2005-02-01 06:54:52 +0000 (Tue, 01 Feb 2005)

Oops, this should be part of r12890.

r853237 | clkao | 2005-02-26 06:01:40 +0000 (Sat, 26 Feb 2005)

Veto 1.1.x-new-swig until configure issues are resolved.

r853238 | clkao | 2005-02-26 06:03:42 +0000 (Sat, 26 Feb 2005)

Oops, revert the accidental commit.

* swig/perl/native/t/6ra.t: remove.


r853244 | clkao | 2005-02-26 12:57:25 +0000 (Sat, 26 Feb 2005)

De-veto and Vote for 1.1.x-new-swig after verifying.

r853647 | clkao | 2005-03-22 09:31:58 +0000 (Tue, 22 Mar 2005)

Perl bindings API catchup.

* swig/perl/native/Makefile.PL.in:
  Generate invoker from ra_reporter2 vtable.

* subversion/bindings/swig/perl/native/Ra.pm:
  Thunked reported methods are invoked with reporter2.

* swig/svn_ra.i:
  Make reporter2 a proper returned value.


r853851 | clkao | 2005-03-30 17:06:13 +0000 (Wed, 30 Mar 2005)

* perl/native/Repos.pm:
  Wrap svn_repos_get_commit_editor2 as repos method.


r854290 | clkao | 2005-04-14 18:32:36 +0000 (Thu, 14 Apr 2005)

Perl bindings: Don't leak editor objects on failed editor calls.

* libsvn_swig_perl/swigutil_pl.c:
  (make_baton): Don't increase refcnt for editor.
  (close_baton, thunk_close_file): Don't decrease refcnt for editor.
  (svn_delta_make_editor): Hold a refcnt of editor in the pool being used.

* native/t/7editor.t: New.


r854353 | clkao | 2005-04-17 23:09:59 +0000 (Sun, 17 Apr 2005)

Nominate r14216

r855150 | clkao | 2005-06-17 00:37:47 +0000 (Fri, 17 Jun 2005)

Export functions from svn_utf.h so we can call svn_utf_initialize.

* bindings/swig/core.i:
  Include svn_utf.h.


r855154 | clkao | 2005-06-17 09:13:20 +0000 (Fri, 17 Jun 2005)

Call utf_initialize in BEGIN of SVN::Core.

* perl/native/Core.pm:
  Call utf_initialize.


r855155 | clkao | 2005-06-17 09:14:04 +0000 (Fri, 17 Jun 2005)

Make ra_initialize use the global pool in SVN::Core, rather
than the default pool.

r855156 | clkao | 2005-06-17 15:11:36 +0000 (Fri, 17 Jun 2005)

Perl bindings lock accessors and fs methods support.

* subversion/bindings/swig/perl/native/Core.pm:
  svn_lock_t accessors.

* subversion/bindings/swig/perl/native/Fs.pm:
  svn_fs_access_t accessors.

* subversion/bindings/swig/perl/native/t/8lock.t: New.


r855191 | clkao | 2005-06-20 14:14:05 +0000 (Mon, 20 Jun 2005)

* native/Core.pm:
  Make $gpool the default pool.  A default pool was implicitly
  prepared by Ra.pm before.


r855193 | clkao | 2005-06-20 17:21:16 +0000 (Mon, 20 Jun 2005)

Follow up to r14759.  Fix an off-by-one error in svn_repos_get_logs3.
Note that this bug is not visible from the command line, as it's
probably filtered again in client side.  Direct call to
svn_repos_get_logs3 with limit set to 1 will actually get the receiver
called twice.

Approved by: kfogel

* subversion/libsvn_repos/log.c:
  (svn_repos_get_logs3): Fix an off-by-one error when limit is specified.


r855194 | clkao | 2005-06-20 17:36:51 +0000 (Mon, 20 Jun 2005)

Nominate several changes.

r855296 | clkao | 2005-07-01 17:05:37 +0000 (Fri, 01 Jul 2005)

Add a missing nomination in the perl utf_initalize set of patches.

r855368 | clkao | 2005-07-07 22:39:54 +0000 (Thu, 07 Jul 2005)

Test and vote for r15248.

r855683 | clkao | 2005-08-06 15:37:22 +0000 (Sat, 06 Aug 2005)

 r15160@ab:  clkao | 2005-08-06 16:53:25 +0100
 Make SVN::Delta::Editor friendlier for debugging.
 
 * perl/native/Delta.pm:
   Don't give line number of Delta.pm when showing editor calls.
   Don't confess with stack trace, just due.
 


r855684 | clkao | 2005-08-06 15:42:34 +0000 (Sat, 06 Aug 2005)

Nominate r15609.

r855769 | clkao | 2005-08-12 13:14:54 +0000 (Fri, 12 Aug 2005)

* perl/native/Core.pm:
  (SVN::Core::Stream::READLINE): Fix a bug that content with
    literal "0" will not be read and returned.

Reported by: Pawel Chmielowski <prefiks@civ.pl>


r855770 | clkao | 2005-08-12 13:18:34 +0000 (Fri, 12 Aug 2005)

Nominate r15695.

r855775 | clkao | 2005-08-12 15:46:00 +0000 (Fri, 12 Aug 2005)

Amend r15695 with r15700, hence take out djames' vote.


r855787 | clkao | 2005-08-13 01:28:39 +0000 (Sat, 13 Aug 2005)

Wrap svn_ra_stat properly.

* swig/svn_ra.i:
  Mark dirent_t ** as return type.

r855788 | clkao | 2005-08-13 01:31:19 +0000 (Sat, 13 Aug 2005)

Nominate r15713.

r856171 | cmpilato | 2005-09-09 09:30:51 +0000 (Fri, 09 Sep 2005)

Finish issue #1970 ("History-following algorithm incomplete").

Implement svn_fs_closest_copy(), and use it to fix a correctness bug
in the history-following.

Patch by: ghudson
          cmpilato
          clkao
          kfogel

* subversion/include/svn_fs.h, 
* subversion/libsvn_fs/fs-loader.c
  (svn_fs_closest_copy): New function.

* subversion/libsvn_fs/fs-loader.h
  (root_vtable_t): Add closest_copy entry.

* subversion/libsvn_fs_fs/tree.c
  (fs_closest_copy): New function to implement the new API.
  (root_vtable): Insert fs_closest_copy.

* subversion/libsvn_fs_base/tree.c
  (closest_copy_args, txn_body_closest_copy, base_closest_copy): New
    functions and batons to implement the new API.
  (root_vtable): Insert base_closest_copy.

* subversion/libsvn_repos/rev_hunt.c: Include svn_path.h.
  (svn_repos_trace_node_locations): Rewrite copy-tracing logic to skip
  unrelated interloper node revisions, by using svn_fs_closest_copy.

* subversion/tests/clients/cmdline/history_tests.py
  (test_list): No longer expect cat_avoids_false_identities() to fail.

* subversion/tests/libsvn_fs/fs-test.c
  (test_closest_copy_pair): New helper.
  (closest_copy_test): New test.
  (test_funcs): Add reference to closest_copy_test().

* subversion/bindings/swig/perl/native/Fs.pm
  Make closest_copy() a method of svn_fs_root.


r856242 | clkao | 2005-09-20 11:26:06 +0000 (Tue, 20 Sep 2005)

Add the compatibility layer in SVN::TxDelta::apply for the old API usage.

* swig/perl/native/Delta.pm:
  (TxDelta::apply): Don't just use the plainly wrapped one, but
    inspect @_ first.

* swig/perl/native/t/5delta.t: New.

* swig/perl/native/t/5delta-compat.t: Copied from 5delta.t.


r856439 | djames | 2005-09-30 06:45:25 +0000 (Fri, 30 Sep 2005)

Fix check-swig-py and check-swig-pl failures.

* subversion/libsvn_repos/repos.c
  (create_svn_repos_t): Set repos->fs_type to DEFAULT_FS_TYPE.
  (svn_repos_create): Allow fs_config to be NULL, as documented in svn_repos.h.

Patch by: dlr
          clkao



r856440 | dlr | 2005-09-30 07:50:26 +0000 (Fri, 30 Sep 2005)

A follow-up to r16365, aligning it with the version of the patch which
I actually proposed on the dev list.

* subversion/libsvn_repos/repos.c
  (svn_repos_create): Allow fs_config to be NULL, yet pay attention to
   any file system type configuration it contains when it is not null.

Patch by: me
          clkao
Review by: djames


r856443 | maxb | 2005-09-30 08:51:15 +0000 (Fri, 30 Sep 2005)

Fix API NULL-tolerance as per its documentation.
Revealed by crashes in check-swig-pl, check-swig-py.

Patch by: clkao

* subversion/libsvn_repos/repos.c
  (svn_repos_create): Allow fs_config argument to be NULL, as the API promises.


r857027 | lundblad | 2005-10-24 05:58:36 +0000 (Mon, 24 Oct 2005)

Follow-up to r16046.  Fix regression, making the case where
passing a transaction to svn_repos_get_commit_editor4 didn't work, because
the transaction couldn't be comittted while closing the edit.

Suggested by: clkao

* subversion/tests/libsvn_repos/repos-test.c (dummy_commit_cb): New function.
  (commit_continue_txn): New test.
  (test_funcs): Add it.

* subversion/libsvn_repos/commit.c (close_edit): Don't error if we aren't the
  owner of the transaction.


r857040 | djames | 2005-10-24 20:23:31 +0000 (Mon, 24 Oct 2005)

* subversion/include/svn_md5.h
  (svn_md5_digests_match): Use "const unsigned char", because SWIG cannot
  parse "unsigned const char".

Suggested by: clkao



r857049 | clkao | 2005-10-25 00:03:32 +0000 (Tue, 25 Oct 2005)

Fix perl bindings digest-related function segfault, and actually
populate digest when requested.

* build/generator/swig/header_wrappers.py
  Don't ignore svn_md5.h. 

* swig/core.i
  Include svn_md5.

* swig/include/svn_types.swg
  Varioues changes to typemaps for char digest[] in different uses.

* swig/perl/libsvn_swig_perl/swigutil_pl.[ch]
  New.

* swig/perl/native/Core.pm
  (SVN::MD5): New overloaded class.

* swig/perl/native/Delta.pm
  (apply): Revert to use coderef-goto.

* swig/perl/native/t/5delta.t
  All tests pass.


r857063 | clkao | 2005-10-25 10:37:21 +0000 (Tue, 25 Oct 2005)

Avoid overloading simple returned md5 digest for Perl bindings.

* swig/include/svn_types.swg
  Only wrap result_digest as overloaded md5 object.


r857064 | clkao | 2005-10-25 10:48:24 +0000 (Tue, 25 Oct 2005)

Follow-up to r16989, bind result_digest to digest typemap for
non-Perl bindings.

* swig/include/svn_types.swg
  apply result_digest for non-Perl bindings.


r857066 | clkao | 2005-10-25 11:02:24 +0000 (Tue, 25 Oct 2005)

Nominate r16966, and (r16975, r16989, r16990).
Tested check-swig-{pl,py,rb}


r857075 | clkao | 2005-10-25 12:51:10 +0000 (Tue, 25 Oct 2005)

Include my vote for r16967.

r857077 | clkao | 2005-10-25 12:57:50 +0000 (Tue, 25 Oct 2005)

Right, I am not l33t full committer.

r857112 | clkao | 2005-10-26 18:36:08 +0000 (Wed, 26 Oct 2005)

Correct md5 function in swigutil_pl.h.

* swig/perl/libsvn_swig_perl/swigutil_pl.h
  (void svn_swig_pl_make_md5): Removed.

  (svn_swig_pl_from_md5): New.


r857825 | clkao | 2005-12-12 22:50:32 +0000 (Mon, 12 Dec 2005)

Fix base_path check for copyfrom_path.

* subversion/libsvn_repos/replay.c
  (path_driver_cb_func): Check copyfrom_path+1 instead of
   copyfrom_path, as it's absolute and base_path is relative.


r858586 | clkao | 2006-02-17 22:00:51 +0000 (Fri, 17 Feb 2006)

I guess I am the 'someone' who knows about svk commands.

* www/merge-tracking: fill in svk transcripts.


r858588 | rooneg | 2006-02-18 00:15:03 +0000 (Sat, 18 Feb 2006)

Unbreak Perl bindings, fs->config can be null according to svn_fs.h.

Patch by: clkao
(Ported to libsvn_fs_base by me.)

* subversion/libsvn_fs_fs/fs_fs.c
  (svn_fs_fs__create): Don't assume fs->config is non-null.
   Also remove a variable that is only used in the same test.

* subversion/libsvn_fs_base/fs.c
  (base_create): Ditto.


r858589 | clkao | 2006-02-18 00:30:59 +0000 (Sat, 18 Feb 2006)

Some older perl module build utilities panic on VERSION set on
two lines.

* perl/native/Core.pm:
  Put the version string in one line.


r858590 | clkao | 2006-02-18 00:32:47 +0000 (Sat, 18 Feb 2006)

* swig/core.i:
  Wrap the array input for svn_diff_option_parse.  Note that
  args is probably a bad name though it doesn't match other stuff
  at the moment.


r860933 | clkao | 2006-07-25 20:27:15 +0000 (Tue, 25 Jul 2006)

* perl/native/Client.pm
* perl/native/Core.pm
* perl/native/Core.pm

  Make the quote style for SVN::Base import unified.


r860934 | clkao | 2006-07-25 20:36:15 +0000 (Tue, 25 Jul 2006)

Helper scripts to compile fast SVN::Base, not used yet.

* perl/natives/scripts/compile_all.pl: New.
* perl/natives/scripts/fast_svnbase.pl: New.


r860942 | clkao | 2006-07-26 00:52:49 +0000 (Wed, 26 Jul 2006)

* perl/native/scripts/compile_all.pl: Don't bother compile Base.pm.

r861566 | clkao | 2006-09-14 00:16:52 +0000 (Thu, 14 Sep 2006)

Tweak the initial pool in Perl bindings, so that perl -MSVN::Core -c -e1
won't segfault.

* perl/native/Core.pm:
  (gpool): New function for returning and holding the global pool.
    This is to avoid 'our's which appears to have different destruction
    order.
  (SVN::Pool::DESTROY): Skip destroy for SCALAR-typed SVN::Pool, as they
    appear to be caused by bugs in Perl.

* perl/native/Ra.pm:
  Use the gpool method to get the pool for init_ra_libs.


r862237 | clkao | 2006-10-31 03:33:17 +0000 (Tue, 31 Oct 2006)

Create backport branch for r20666.

r862238 | clkao | 2006-10-31 03:36:56 +0000 (Tue, 31 Oct 2006)

Merge r20666 from trunk.  This fixes svn_ra_replay in Perl bindings.

r862239 | clkao | 2006-10-31 04:00:09 +0000 (Tue, 31 Oct 2006)

Nominate r20666 for 1.4.1.

r862385 | clkao | 2006-11-15 20:01:55 +0000 (Wed, 15 Nov 2006)

Perl bindings: make svn_ra_do_{update,switch,status} work.

* swig/svn_delta.i: 
  Wrap update_editor, switch_editor, and status_editor.


r862610 | clkao | 2006-12-01 21:15:36 +0000 (Fri, 01 Dec 2006)

Nominate r22311

r862643 | clkao | 2006-12-05 02:41:41 +0000 (Tue, 05 Dec 2006)

Branch for r22311 merge.

r862644 | clkao | 2006-12-05 02:46:08 +0000 (Tue, 05 Dec 2006)

Merge r22311 from trunk.  This fixes perl bindings' do_status for RA.


r862683 | cmpilato | 2006-12-08 16:06:24 +0000 (Fri, 08 Dec 2006)

Make svn_repos_replay2 able to send deltas when used with txn roots.

* subversion/libsvn_repos/replay.c:
  (svn_repos_replay2) When used with a txn root, set compare_root in
    the path-driver callback baton to a revision root built on the
    txn's base revision.

Patch by: Chia-liang Kao <clkao@clkao.org>
(Tweaked by me.)

r862717 | clkao | 2006-12-11 06:52:06 +0000 (Mon, 11 Dec 2006)

Vote on r22332 and move to approved section.

r862755 | clkao | 2006-12-13 04:34:39 +0000 (Wed, 13 Dec 2006)

Revert my vote on the wrong branch.

r862756 | clkao | 2006-12-13 04:36:42 +0000 (Wed, 13 Dec 2006)

Vote on r22332.

r862757 | clkao | 2006-12-13 04:44:59 +0000 (Wed, 13 Dec 2006)

Nominate r22609 and vote for glasser (as mentioned on irc).

r863514 | glasser | 2007-02-20 20:12:00 +0000 (Tue, 20 Feb 2007)

Make FSFS's implementation of svn_fs_change_rev_prop use the FSFS
write lock, to avoid a race condition.

* subversion/libsvn_svn_fs/fs_fs.c:
  (change_rev_prop_baton): New baton type for change_rev_prop_body.
  (change_rev_prop_body): New function, formerly the guts 
   of svn_fs_fs__change_rev_prop.
  (svn_fs_fs__change_rev_prop): Replace guts with a write-lock-wrapped
   call to change_rev_prop_body.

Found by: clkao
Suggested by: sussman
              malcolm


r864261 | clkao | 2007-03-27 09:00:54 +0000 (Tue, 27 Mar 2007)

backport branch for r22311.

r864262 | clkao | 2007-03-27 09:04:19 +0000 (Tue, 27 Mar 2007)

* subversion/bindings/swig/svn_delta.i:
  Back port the necessary bit in r20667 that is required but missing
  in the r22311 backport committed to 1.4.x.


r864464 | clkao | 2007-04-04 01:22:51 +0000 (Wed, 04 Apr 2007)

Vote on r20667 and move to the approved section.

r864571 | clkao | 2007-04-08 06:42:51 +0000 (Sun, 08 Apr 2007)

* subversion/bindings/swig/svn_delta.i: Add wrapper for invoking
  svn_txdelta_window_handler_t.


r864578 | clkao | 2007-04-09 05:22:47 +0000 (Mon, 09 Apr 2007)

Allow Perl-based txdelta window handler to be used by window generators.

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c
  subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h
  subversion/bindings/swig/svn_delta.i
  (svn_delta_wrap_window_handler): New wrapped helper function.


r864581 | clkao | 2007-04-09 21:05:15 +0000 (Mon, 09 Apr 2007)

Nominate r24497 and r24504.

r870014 | clkao | 2008-03-17 08:18:46 +0000 (Mon, 17 Mar 2008)

r27506 accidentally removed a few SVN::Repos methods.

Submitted by: Cheng-Lung Sung <clsung@bestpractical.com>

* swig/perl/native/Repos.pm:
  Bring back methods: get_commit_editor, get_commit_editor2,
    fs_commit_txn.
 


r870054 | clkao | 2008-03-21 12:55:05 +0000 (Fri, 21 Mar 2008)

* bindings/swig/perl/native/Makefile.PL.in:
  Include libsvn_{fs_util,ra_neon,ra_serf} libtool directories
  for `make test', so the tests run against in-tree libraries.



r870126 | clkao | 2008-03-26 03:20:09 +0000 (Wed, 26 Mar 2008)

Vote for r29980

r871620 | clkao | 2008-06-01 02:06:50 +0000 (Sun, 01 Jun 2008)

Binding test fixes for Perl 5.10.

* subversion/bindings/swig/perl/native/t/6ra.t
  Fix the test for Perl 5.10, which doesn't like in-memory
  filehandle opened with a reference variable.



r871694 | stsp | 2008-06-07 10:36:30 +0000 (Sat, 07 Jun 2008)

* subversion/libsvn_repos/hooks.c
  (svn_repos__hooks_start_commit): Don't blindly assume that the
    capabilities parameter is non-NULL. It is NULL if the client
    does not bother to call svn_repos_remember_client_capabilities(),
    which does not seem to be required.
    Also, the private API doc for svn_repos_t says it can be NULL.

Patch by: clkao
(log message tweaked by me)

Review by: danielsh
           me


r872237 | clkao | 2008-07-17 19:46:36 +0000 (Thu, 17 Jul 2008)

Remove code in AS400 #ifdef from libsvn_repos/hook.c, as they are
dead code in trunk.

* subversion/libsvn_repos/hook.c
  Remove #include for AS400 #ifdef.
  (run_hook_cmd): Remove AS400 #ifdef and the code in it.

Approved by: pburba


r872240 | clkao | 2008-07-17 19:58:36 +0000 (Thu, 17 Jul 2008)

Obvious fix: bring back the check_hook_result doc string accidentally
removed in r32163.

* subversion/libsvn_repos/hooks.c
  (check_hook_result): Restore doc string.

Found by: arfrever


r872245 | clkao | 2008-07-18 05:45:06 +0000 (Fri, 18 Jul 2008)

Wrap svn_ra_lock for Perl bindings.

* swig/include/svn_containers.swg
  Add typemap for apr_hash_t *path_revs

* swig/perl/libsvn_swig_perl/swigutil_pl.h
* swig/perl/libsvn_swig_perl/swigutil_pl.c
  (svn_swig_pl_objs_to_hash_of_revnum_t): New.
  (convert_pl_revnum_t): New.
  (svn_swig_pl_ra_lock_callback): New.

* swig/svn_ra.i
  Add perl callable_callback for svn_ra_lock_callback_t.


r872282 | clkao | 2008-07-21 19:20:40 +0000 (Mon, 21 Jul 2008)

Make pre-lock hook take comment and steal_lock as arguments, and
make pre-unlock take token and break_lock as arguments.

* subversion/libsvn_repos/hooks.c
  (svn_repos__hooks_pre_lock): Take comment and steal_lock, pass
   to run_hook_cmd.
  (svn_repos__hooks_pre_unlock): Take token and break_lock, pass
   to run_hook_cmd.

* subversion/libsvn_repos/repos.h
  (svn_repos__hooks_pre_lock, svn_repos__hooks_pre_unlock): Adjust
   prototypes and doc strings.

* subversion/libsvn_repos/fs-wrap.c:
  (svn_repos_fs_lock): Call svn_repos__hooks_pre_lock with the above
   mentioned new arguments.
  (svn_repos_fs_unlock): Call svn_repos__hooks_pre_unlock with the above
   mentioned new arguments.

* subversion/libsvn_repos/repos.c
  (create_hooks): Document the new arguments for the pre-lock and
   pre-unlock hooks in their templates.

Approved by: kfogel


r872284 | clkao | 2008-07-21 20:47:16 +0000 (Mon, 21 Jul 2008)

Trivial fix missed from r32208.

* subversion/libsvn_repos/repos.h
  (svn_repos__hooks_pre_lock): Add docstring about null comment.

* subversion/libsvn_repos/repos.c
  (create_hooks): Fix typo in pre-unlock template.

Found by: kfogel


r872285 | clkao | 2008-07-21 21:00:05 +0000 (Mon, 21 Jul 2008)

* subversion/libsvn_repos/repos.h
  (svn_repos__hooks_pre_unlock): Document that token should
    never be NULL.


r872638 | kfogel | 2008-08-19 21:16:22 +0000 (Tue, 19 Aug 2008)

Make pre-commit hook take lock tokens associated with the commit from stdin.

Patch by: clkao
(Documentation and log message tweaks by me.)

* subversion/include/svn_fs_private.h: Include svn_fs.h.
  (svn_fs__access_get_lock_tokens): New prototype.

* subversion/include/svn_fs.h
  (svn_fs_locks Filesystem locks): Document that lock tokens cannot
   contain newlines. 
  (svn_fs_access_add_lock_token2): New prototype; replaces 
   svn_fs_access_add_lock_token and takes a new path parameter.
  (svn_fs_access_add_lock_token): Deprecate.

* subversion/libsvn_fs/access.c
  (svn_fs_access_add_lock_token2): New function.
  (svn_fs_access_add_lock_token): Deprecate.
  (svn_fs__access_get_lock_tokens): New function.

* subversion/libsvn_ra_local/ra_plugin.c
  (svn_ra_local__get_commit_editor): Call svn_fs_access_add_lock_token2
   instead, with the full paths in repository.

* subversion/libsvn_repos/hooks.c: Include private/svn_fs_private.h.
  (lock_token_content): New function, turns path->lock-token hashes
   into a serialized format used by pre-commit hook.
  (svn_repos__hooks_pre_commit): If there are lock tokens, pass them to
   the pre-commit hook via stdin.

* subversion/libsvn_repos/repos.c
  (create_hooks): Update the pre-commit template to document that
   lock tokens are now passed on stdin.

* subversion/mod_dav_svn/repos.c
  (get_resource): Call svn_fs_access_add_lock_token2 instead.

* subversion/mod_dav_svn/version.c
  (dav_svn__push_locks): Call svn_fs_access_add_lock_token2 instead.

* subversion/svnserve/serve.c
  (add_lock_tokens): Call svn_fs_access_add_lock_token2 instead.


r872852 | kfogel | 2008-08-28 05:00:23 +0000 (Thu, 28 Aug 2008)

Enable pre-lock hook to specify the lock token via stdout.

   ***********************************************************************
   ***                                                                 ***
   ***                            NOTE:                                ***
   ***                                                                 ***
   ***  Existing pre-lock hooks that print to stdout are incompatible  ***
   ***  with this change.  Such output was previously discarded, but   ***
   ***  now it will affect the names of lock tokens.                   ***
   ***                                                                 ***
   ***  This should be mentioned in CHANGES and in the release notes.  ***
   ***                                                                 ***
   ***********************************************************************

Patch by: clkao

* subversion/include/svn_repos.h
* subversion/libsvn_repos/fs-wrap.c
  (svn_repos_fs_lock): Handle returned new_token from pre-lock hook.

* subversion/libsvn_repos/repos.h
  (svn_repos__hooks_pre_lock): New result parameter 'token' to allow
    a lock token name to be returned by reference.

* subversion/libsvn_repos/hooks.c
  (run_hook_cmd): New return parameter 'result' allows stdout of hook
    to be captured and returned.  Update all callers.
  (svn_repos__hooks_pre_lock): Get token from run_hook_cmd.

* subversion/libsvn_repos/repos.c: Document this feature for pre-lock.


r873073 | clkao | 2008-09-09 13:15:45 +0000 (Tue, 09 Sep 2008)

Nominate backport for r31546.