Branko Čibej <> (brane)

Found Patch Review Suggested
r18412 r21013, r18855, r15948, r15916, r12983, r12883, r10100, r9982, r8554, r6304, r5965, r5936, r5878, r5825, r5295, r4656 r21277, r20715, r20428, r20108, r19924, r18462, r15848, r15555, r15374, r7245 r22931, r22913, r22162, r22030, r18428, r17561, r16329, r16283, r16008, r16003, r15983, r15855, r15718, r12534, r10042, r1169

r22931 | dlr | 2007-01-08 12:29:48 -0600 (Mon, 08 Jan 2007)

On the merge-tracking branch: Use macros for stringification instead
of duplicating pre-processor definitions.

* subversion/libsvn_fs_util/merge-info-sqlite-index.c

Suggested by: malcolm

r22913 | vgeorgescu | 2007-01-05 04:55:13 -0600 (Fri, 05 Jan 2007)

Enable ra_dav tests to work in conjunction with DLL builds on Windows.

  Construct a list of DLL files instead of just paths to those DLLs.
  (locate_libs): Copy the library DLLs and the Apache modules to the
   root of the build tree, and stop adding the DLL paths to the PATH
   environment variable.
  (Httpd.__init__): Call _svn_module with just the name of the module.
  (Httpd._svn_module): Tell Apache to look for the module at the top of 
   the build tree.

Suggested by: brane

r22162 | jerenkrantz | 2006-10-30 18:24:44 -0600 (Mon, 30 Oct 2006)

Disable ml detection by default as zlib's assembly breaks with VS 2005.
Use --enable-ml to turn it on.

Suggested by: brane

* build/generator/
  (parse_options): Add --enable-ml flag
  (_find_ml): If --enable-ml isn't passed, don't try to look for ML.

r22030 | dlr | 2006-10-18 19:23:07 -0500 (Wed, 18 Oct 2006)

On the merge-tracking branch: Add outcome of discussion with Branko
and Madan on WC -> WC copying.

  The Plan for WC -> WC 'copy'.

Suggested by: brane

r21277 | lgo | 2006-08-26 15:33:01 -0500 (Sat, 26 Aug 2006)

Prepare fix for issue #2556: abstract root folder checks in svn_path_is_root. 
Add support for 'X:/' as a root folder on Windows.

Patch by: me
Review by: brane
(brane & dionisos basically helped me write the patch)
Approved by: dionisos

* subversion/include/svn_path.h
  (svn_path_is_root): New function declaration.
  (svn_path_is_empty): Added comment.

* subversion/libsvn_client/commit.c
  (svn_client_commit4): make sure to abort when the iterating through the 
   parent folders passese the root folder.

* subversion/libsvn_subr/path.c
  (svn_path_is_root): New function. Tests for all forms considered canonical 
   root specs on the platform at hand ('/', 'X:/' etc.)
  (is_canonical): 'X:/' syntax on Windows is canonical.
  (svn_path_join, svn_path_dirname, svn_path_basename, 
   svn_path_join_many, previous_segment, 
   get_path_ancestor_length): Support the new type of root path on Windows, 
    mostly by replacing direct comparisons of path and '/' with a call to 
  (svn_path_canonicalize): don't strip the trailing slash if the path is 
   of the 'X:/' syntax.

* subversion/tests/libsvn_subr/path-test.c
  (test_is_root): New test for validation of svn_path_is_root.
  (test_path_split, test_join, 
   test_basename, test_remove_component): add extra cases for 'X:/'.
  (test_funcs): run the new test test_is_root.

r21013 | rooneg | 2006-08-08 09:10:42 -0500 (Tue, 08 Aug 2006)

Teach the build generator to deal with a new private include area.

We don't actually have one yet, but this is necessary before we can do so.

Patch by: brane

* build/generator/
  (_path_endswith): New helper function.
  (IncludeDependencyInfo._scan_for_includes): Account for relative path

r20715 | rooneg | 2006-07-17 19:59:41 -0500 (Mon, 17 Jul 2006)

Fix another global pool destruction ordering problem in the bdb code.

Previously, we potentially tried to use the bdb cache mutex after its
pool had already been cleared.

Reviewed by: brane

* subversion/libsvn_fs_base/bdb/env.c
  (clear_cache_lock): New cleanup function, NULLs out the bdb cache lock.
  (svn_fs_bdb__init): Set pool cleanup on the bdb cache pool.
  (acquire_cache_mutex, release_cache_mutex): Don't do anything to the
   lock if it's NULL.

r20428 | rooneg | 2006-07-05 12:17:37 -0500 (Wed, 05 Jul 2006)

Clean up some edge cases in the BDB code.

Reviewed by: brane

* subversion/libsvn_fs_base/bdb/env.c
  (cleanup_error_info): New cleanup callback, handles freeing the thread
   local storeage if the thread exits before it's been cleaned up.
  (create_env): Pass cleanup_error_info in to apr_threadkey_private_create.
  (svn_fs_bdb__close): Only clean up the error info if the pool isn't NULL,
   so we avoid double frees in a theoretical edge case during shutdown.

r20108 | djh | 2006-06-14 17:26:13 -0500 (Wed, 14 Jun 2006)

Fix input/output encoding support when built with VC2005.

Newer versions of MS' CRT do the codepage translation for us
so we don't need to do it ourselves if the compiler is new

Found by: Jens Peters <>
Review by: brane

* subversion/libsvn_subr/cmdline.c
  (svn_cmdline_init): VC2005 doesn't need to do special encoding.

r19924 | djh | 2006-06-04 08:35:13 -0500 (Sun, 04 Jun 2006)

Deprecate svn_io_set_file_read_write_carefully and update
the svn_io_set_file_read* functions to handle permissions on
unix or just set the appropriate attributes on Windows.

See these email threads for previous discussion:

Reviewed by: brane

* subversion/include/svn_io.h
  Deprecate svn_io_set_file_read_write_carefully.

* subversion/libsvn_wc/props.c
  (svn_wc_prop_set2): Use appropriate svn_io_set_file_read_* function
  rather than svn_io_set_file_read_write_carefully..

* subversion/libsvn_wc/log.c
  (install_committed_file): Ditto.

* subversion/libsvn_wc/adm_ops.c
  (svn_wc_add_lock, svn_wc_remove_lock): Ditto.

* subversion/libsvn_wc/translate.c
  (svn_wc__maybe_set_read_only): Ditto.

* subversion/libsvn_subr/io.c
  (io_set_file_perms): New function to help deal with file permissions
  on unix.
  (svn_io_set_file_read_write_carefully): Just forward call to appropriate
  svn_io_set_file_read* functions.
  (svn_io_set_file_read_only): Call io_set_file_perms helper on unix but
  just set the appropriate attributes on Windows.
  (svn_io_set_file_read_write): Ditto.
  (svn_io_set_file_executable): Call io_set_file_perms helper on unix but
  just return on Windows.
  (reown_file, get_default_file_perms): Wrap in #ifndef WIN32 with
  io_set_file_perms since they are only used on unix.

r18855 | brane | 2006-03-12 15:21:26 -0600 (Sun, 12 Mar 2006)

Add support to svnserve to run as a native Windows service.  This
allows svnserve to start automatically, at system boot time, without
having a user logged in and without the need for an external service
'wrapper' program.

Patch by: Arlie Davis <>

* subversion/svnserve/main.c (main): Updated to support running as a
   Windows service. Adds new --service run mode.

* subversion/svnserve/winservice.h: New.
   Contains public declarations for service support.

* subversion/svnserve/winservice.c: New.
   Contains implementation of service support.

* notes/windows-service.txt: New.
   Contains notes on how to use service support (install, start, stop,

* build.conf (svnserve): Add dependency on ws2_32.lib for Windows.

r18462 | kfogel | 2006-02-14 15:22:35 -0600 (Tue, 14 Feb 2006)

Fix issue #2398: bogus pointer comparison led to server-side assert failure.

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

* subversion/libsvn_fs_fs/tree.c
  (copy_helper): Use above to check equality of the two filesystems,
  instead of depending on pointer equality.  Handle inequality by
  returning an error, instead of failing an assertion.

* subversion/libsvn_fs_base/tree.c
  (copy_helper): Same.

Review by: brane

See this message/thread for discussion around this change:
   Subject: problem revealed by issue #2398 (server-side assertion)
   Date: Mon, 13 Feb 2006 15:16:11 -0600 (CST)
   Message-Id: <>

r18428 | dlr | 2006-02-10 17:36:19 -0600 (Fri, 10 Feb 2006)

Avoid compilation warning from assigning a float to the return value
of atof().

* subversion/mod_dav_svn/repos.c
  (get_entry): Cast return value of atof() to a float.

Suggested by: brane

r18412 | malcolm | 2006-02-10 06:46:34 -0600 (Fri, 10 Feb 2006)

Fix blame for files whose translated eol-style differs from the
untranslated style.  For example, files with an eol-style of 'native'
on Win32.

Followup to r17513.

Found by: djh

* subversion/libsvn_client/blame.c
  (struct file_rev_baton): Add 'last_filename_translated' to hold the
    name of the translated version of the prior revision.
  (window_handler): Call add_file_blame() with the name of the
    translated version of the prior revision, rather than the untranslated
    version.  Set frb->last_filename to the untranslated version of
    the current revision, rather than the translated version (important
    because this will be the delta source for the next revision), and
    instead set frb->last_filename_translated to the translated version.
  (svn_client_blame2): Initialise frb.last_filename_translated to NULL.

r17561 | dionisos | 2005-11-29 18:13:38 -0600 (Tue, 29 Nov 2005)

Eliminate stdio calls by using the new EOL-translating stream.

Suggested by: brane

* subversion/libsvn_subr/config_file.c
  (parse_context_t): Replace the FILE pointer with a stream.  Also,
  add fields required for emulating ungetc().
  (parser_getc, parser_ungetc):  Emulate behaviour available for FILEs,
  but not for streams, since we switched to streams now.
  (parser_getc, parser_ungetc,
   skip_whitespace, skip_to_eoln): Return svn_error_t pointers and take
  a ctx argument to be able to call parser_getc().
  (parse_value, parse_option, parse_section_name,
   svn_config__parse_file): Replace FILE related with stream related code,
  cleaning up where possible.

r16329 | dionisos | 2005-09-28 15:16:46 -0500 (Wed, 28 Sep 2005)

Follow up to r16293.

Suggested by: brane

* subversion/include/svn_io.h,
  subversion/libsvn_subr/io.c (svn_io_file_move): New. Function to move
  files from one path to another, even across device boundaries. Abstracted
  from the change to libsvn_wc/update_editor.c:install_file in r16293.

* subversion/libsvn_wc/update_editor.c (install_file): Change to use

r16283 | kfogel | 2005-09-26 13:53:10 -0500 (Mon, 26 Sep 2005)

* www/svn_1.3_releasenotes.html: Add important details to the
  SVN_ASP_DOT_NET_HACK documentation.  Also, reformat a bit.

Suggested by: brane
(Just the ASP.NET stuff, not the reformatting.)

r16008 | danderson | 2005-08-30 17:53:31 -0500 (Tue, 30 Aug 2005)

Revert r16000, incomplete fix.  More complete patch coming.

Suggested by: brane

r16003 | kfogel | 2005-08-30 13:51:50 -0500 (Tue, 30 Aug 2005)

* tools/dev/ Use single quotes for strings wherever
  possible, and use 'print' properly.

Suggested by: brane

r15983 | danderson | 2005-08-29 22:41:09 -0500 (Mon, 29 Aug 2005)

Correct the comment in the stock authz file about the authz file

Suggested by: brane

* subversion/libsvn_repos/repos.c
  (create_conf): the authz file format is identical, not similar, to
    that used by mod_authz_svn.

r15948 | brane | 2005-08-28 08:03:41 -0500 (Sun, 28 Aug 2005)

Implement a reduced version of issue #901 for DAV connections.  Add a transfer
progress notification callback to the RA layer and call it from libsvn_ra_dav.

Patch by: Stefan Küng <>

* subversion/include/svn_client.h: Explicitly include svn_ra.h.
  (svn_client_ctx_t): Extend the client context structure with the
   callback function and baton.
  (svn_client_open_ra_session): Update docstring.
* subversion/include/svn_ra.h
  (svn_ra_progress_notify_func_t): New. Notification callback function type.
  (svn_ra_callbacks_t): Deprecate the structure.
  (svn_ra_callbacks2_t): Same as svn_ra_callbacks_t, but with new
   progress notification callback and baton.
  (svn_ra_open2): New prototype.
  (svn_ra_open): Deprecate.
* subversion/libsvn_ra/ra_loader.h
  (svn_ra__vtable_t): Change signature of open() to use svn_ra_callbacks2_t.
* subversion/libsvn_ra/ra_loader.c
  (svn_ra_open): Deprecate function, calls svn_ra_open2().
  (svn_ra_open2): New function which takes an svn_ra_callbacks2_t
   instead of an svn_ra_callback_t.
* subversion/libsvn_client/ra.c (svn_client__open_ra_session_internal):
   Set the progress notification callback and baton, and call svn_ra_open2().
* subversion/libsvn_ra_dav/session.c
  (ra_dav_neonprogress): New function. The callback function neon calls
   during network data transfers.
  (svn_ra_dav__open): Set the neon callback function for the session.
* subversion/libsvn_ra_dav/ra_dav.h
  (svn_ra_dav__session_t): Use new svn_ra_callbacks2_t.
* subversion/libsvn_ra/wrapper_template.h
  (compat_open): Pass a svn_ra_callbacks2_t to the open() function.
* subversion/libsvn_ra_local/ra_local.h (svn_ra_local__session_baton_t),
  subversion/libsvn_ra_local/ra_plugin.c (svn_ra_local__open),
  subversion/libsvn_ra_svn/client.c (ra_svn_open):
  Use new svn_ra_callbacks2_t.
* subversion/libsvn_client/copy.c (repos_to_repos_copy): Correct comment.

r15916 | brane | 2005-08-25 17:11:30 -0500 (Thu, 25 Aug 2005)

Add support for Berkeley DB 4.4 with automatic repository recovery.

Patch by: cmpilato

* build/generator/ (GeneratorBase._find_bdb): Look for libdb44.

* subversion/libsvn_fs_base/bdb/bdb_compat.h (SVN_BDB_AUTO_RECOVER): New.

* subversion/libsvn_fs_base/fs.c
  (base_create, base_open, base_bdb_logfiles,
   check_env_flags, get_db_pagesize): Use SVN_BDB_AUTO_RECOVER when opening
   the BDB environment.

* subversion/svnadmin/main.c (subcommand_crashtest): New command for testing
   automatic repository recovery.

* subversion/libsvn_client/checkout.c (svn_client__checkout_internal): Use
   a subpool for the first session so that the FS environment gets closed
   when it's no longer needed.

r15855 | djames | 2005-08-21 01:24:47 -0500 (Sun, 21 Aug 2005)

Refactor SWIG generator to use a modular architecture, separate from the
Unix / Windows generators.

New features:
- Allow users to specify location of SWIG executable using --with-swig
  configure option.
- Generate SWIG-related headers in the build directory.
- Automatically regenerate SWIG wrapper headers if the underlying Subversion
  header files change.
- Cleanup autogenerated SWIG files in "make clean" targets.

  Use as created by for release builds.
  Delete after we are finished using it.
* build.conf:
  (swig-dirs): Add subversion/bindings/swig/proxy to list of SWIG directories,
  so that the directory will be created by configure if it does not already
  Remove SWIG-related code. The individual Windows and Unix generators now
  handle SWIG-related issues directly.
  (SWIG): Add. Path to SWIG executable.
  (SWIG_INCLUDES): Add $(SWIG_BUILD_DIR)/proxy to list of includes.
  (swig-pl_DEPS): Add autogen-swig-pl to list of dependencies.
  (swig-py): Add autogen-swig-py to list of dependencies.
  (clean-swig-headers): Add. Removes autogenerated SWIG headers.
  (swig-rb): Add autogen-swig-rb to list of dependencies.
* build/ac-macros/swig.m4:
  (SWIG): Detect path to SWIG executable based on --with-swig option.
  (SWIG_VERSION): Require SWIG 1.3.24 in order to regenerate SWIG header files.
  (PYTHON, PERL, RUBY): Ignore SWIG_SUITABLE variable, and build SWIG bindings
  even if SWIG is not installed.
* build/generator/
  Add. Empty file.
* build/generator/
  (Generator.conf): Save path to build.conf in instance variable.
  (Generator.swig): Instantiate default SWIG Generator, which we use to perform
  queries about the installed version of SWIG.
  (IncludeDependencyInfo._scan_for_includes): Use ".h" files for dependency
  information if the "_h.swg" wrapper is not available.
* build/generator/
  (write): Add SWIG header wrappers and SWIG external runtime sections to
  generate necessary SWIG files on demand.
* build/generator/ Delete file.
* build/generator/
  (WinGenerator.__init__): Generate external runtime and header wrappers.
  (WinGenerator._swig_build_opts): Remove. Use generator.swig instead to
  calculate appropriate SWIG options.
* build/generator/swig/ Add file. Base class for SWIG-related
* build/generator/swig/ Add file. Generates SWIG proxy
  wrappers around Subversion header files.
* build/generator/swig/ Add file. Generates external
  runtime files for SWIG.
* build/generator/util/ Add file. Empty file.
* build/generator/util/ Add file. Utilities for dealing with
  external executables.

Suggested by: philip

r15848 | djames | 2005-08-20 12:36:30 -0500 (Sat, 20 Aug 2005)

Merge python-bindings-improvements to trunk, by comparing trunkURL with

New features:
- Automated Test Suite
 * Test suite for memory pools (r15396, r15462)
 * Test suite for FS library (r15590, r15632)
 * In-build-directory testing (r15478)
 * Nightly smoke tests (r15505)
- Automatic Memory Management
 * Autogenerated proxy classes for SVN structs (r15428)
 * Hand-written proxy classes for APR structs (r15484)
 * Real reference counting for Pool objects (r15489, r15495, r15500)
 * Treat svn_string_t objects as Python strings (r15595)
 * Optional Pool Arguments (r15370, r15529)
- Better Documentation and error messages
 * Enabled SWIG autodoc feature (r15490)
 * Report assertion failures when variables are deleted prematurely
   (r15488, r15489, r15492)
 * Python argument numbers in error messages (r15460, r15493, r15525)
- Streamlined build process
 * Release versions of Subversion bindings can be built without SWIG (r15620,
   r15623, r15626, r15635, r15636, r15637, r15642, r15643)
 * Automatic dependency checking for SWIG files (r15381, r15405, r15426,
   r15429, r15430)
 * Makefile rule for clean-swig-py (r15476)
- Other changes
 * Compile-time type lookups for SWIG (r15396, r15407, r15408, r15409, 
   r15412, r15417)
 * Move SWIG includes into include directory (r15407, r15408, r15413)
 * Refactoring (r15411, r15425, r15453, r15521, r15522, r15527, r15559)
 * SWIG bindings compile with Microsoft Visual C++ 6.0 (r15644)
 * Minor bugfixes (r15409, r15494, r15496, r15497, r15498, r15499, r15501,
   r15511, r15519, r15526, r15565, r15566, r15591, r15592, r15603, r15607,
   r15645, r15646, r15653, r15579)

To see commit logs for this feature, examine
/branches/python-bindings-improvements, r15365:15846

Approved by: kfogel
Review by: dberlin
Testing by: Troy Straszheim <>
            Christian Boos <>

r15718 | djh | 2005-08-13 13:15:13 -0500 (Sat, 13 Aug 2005)

Followup to r15715 -- use platform path separator rather than '\'.

Suggested by: brane

  (fix_case): Use os.path.sep rather than '\'.

r15555 | dlr | 2005-08-02 17:27:50 -0500 (Tue, 02 Aug 2005)

* INSTALL: Update URL to zlib 1.2.3.

Patch by: Ivan Zhakov <>
Review by: brane

r15374 | kou | 2005-07-20 22:28:44 -0500 (Wed, 20 Jul 2005)

Fix documentation and coding style.
Follow-up to r15343.

* subversion/include/svn_nls.h
   svn_nls_init): Docstring fixes.

* subversion/libsvn_subr/cmdline.c (svn_cmdline_init),
  subversion/libsvn_subr/nls.c (svn_nls_environment_init):
  - Use err instead of error as svn_error_t * variable name.
  - Fix coding style.

* subversion/libsvn_subr/nls.c(svn_nls_init): Fix coding style.

Approbed by: +1: lundblad
Review by: Peter N. Lundblad <>
           Branko Čibej <>

r12983 | brane | 2005-02-12 12:01:14 -0600 (Sat, 12 Feb 2005)

Treat a Win32 sharing violation as cause for retrying a file op. 

Patch by: me
          Roland Ruedenauer <>

* subversion/libsvn_subr/io.c (WIN32_RETRY_LOOP):

r12883 | brane | 2005-01-31 10:36:12 -0600 (Mon, 31 Jan 2005)

* www/project_packages.html: Note that Win9x/Me can't host a repository,
   and link to the FAQ item.

Patch by: me
          Matthew Ford <>

r12534 | lundblad | 2004-12-29 17:45:05 -0600 (Wed, 29 Dec 2004)

Locking spec tweaks.

Suggested by: Branko Čibej <>
              Philip Martin <>
              Walter Nicholls <>
              Travis P <>

* notes/locking/locking-ui.txt: Specify output for svn st and svn st -u.

r10100 | kfogel | 2004-06-29 00:11:17 -0500 (Tue, 29 Jun 2004)

Resolve issue #1920: Treat XML mime types as text, not binary.

Patch by: Branko Čibej <>

* subversion/libsvn_subr/validate.c
  (svn_mime_type_is_binary): Return false if the mime-type ends in
    "+xml" or "/xml".

There was an alternate patch by Kalle Olavi Niemitalo <> in,
which is a little more robust because it deals with charset addenda to
mime-types.  There was also a general objection by Ben Reser, in,
where he points out that the whole approach is wrong, and that this
should be configurable.  I agree (as probably most developers would),
but it's always been understood that svn_mime_type_is_binary() is
basically a kluge to get the common cases right until such time as we
have a better system.  Incrementally improving what we have, based on
user feedback, is still a good idea IMHO.

See the threads linked to from the issue.

r10042 | rey4 | 2004-06-20 20:15:24 -0500 (Sun, 20 Jun 2004)

Improvements for perl bindings on windows.

Suggested by: Branko Čibej <>

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.c
    use safer macros

* subversion/bindings/swig/perl/libsvn_swig_perl/swigutil_pl.h

* build/generator/
    define snprintf here

r9982 | brane | 2004-06-13 17:13:53 -0500 (Sun, 13 Jun 2004)

Make BDB and FSFS testing conditional, and change REVPREFIX
declaration place in file, so that it could be
scripted. Use REVPREFIX also for log_file printing.

Patch by: Jani Averbach <>

* tools/test-scripts/svntest/ Run BDB and FSFS tests conditionally
  depending on value of TEST_BDB and TEST_FSFS, respectively.

* tools/test-scripts/svntest/,
  tools/test-scripts/svntest/ Use $REVPREFIX variable
  for log_file message

* tools/test-scripts/svntest/
  (TEST_FSFS): New variable which controls BDB backend testing.
  (TEST_FSFS): Same as TEST_BDB, but for the FSFS backend.
  Move REVPREFIX variable after declaration of commands.

r8554 | brane | 2004-02-03 15:17:06 -0600 (Tue, 03 Feb 2004)

Closing issue #1727.

Teach to generate propchange messages. This change
introduces subcommands to the command-line, twists the
implementation into a slightly more object-oriented shape, and makes a
small change to the configuration file format.

The new invocation chant is: commit     REPOS-DIR REVISION [CONFIG-FILE]

The mailer.conf parameter 'subject_prefix' is replaced by two new
parameters, 'commit_subject_prefix' and 'propchange_subject_prefix',
used by the 'commit' and 'propchange' subcommands, respectively.

Patch by: Bastian Blank <>

[in tools/hook-scripts/mailer]
* mailer.conf.example: Rename 'subject_prefix' to 'commit_subject_prefix'.
  Add parameter 'propchange_subject_prefix'.

  (Messenger): New. Base class for message generators.
  (Messenger.determine_output): Converted to a method from determine_output().
  (Commit): New. A Messenger implementation for commit messages.
  (PropChange): New. A Messenger implementation for propchange messages.

  (MailedOutput.__init__): Remove argument 'changelist', add 'prefix_param'.
   Move the directory walking logic into Commit.__init__().
  (MailedOutput.start): Add an optional override for the author name.
  (MailedOutput.generate): Remove; move logic to Commit.generate().
  (MailedOutput.mail_headers): Use 'prefix_param' to find the subject
   prefix parameter.

  (SMTPOutput.__init__): Remove.
  (SMTPOutput.start): Change signature to match MailedOutput.start().
  ( Renamed from run_diff().

  (StandardOutput.__init__, StandardOutput.start, StandardOutput.finish, Adjust names and signatures to match MailedOutput.

  (PipeOutput.__init__, PipeOutput.start, Adjust names
   and signatures to match MailedOutput.

  (main): Add parameters 'cmd', 'author', 'propname'. Move the group
   gathering logic to Commit.__init__(), since it's specific to that
   messenger. Create the messenger instance based on the subcommand.

  (UnknownSubcommand): New exception class.

  (__main__): Interpret the subcommands and parse the command line
   according to the changed syntax.

r7245 | rey4 | 2003-09-29 15:43:59 -0500 (Mon, 29 Sep 2003)

Add a windows specific option to gen-make so that the user can specify
a path to the Berkely DB headers and libs.

Patch by: Chris Foote <>

Review by: Branko Čibej <>
(Pointed out problem using new option on unix.)

  (_usage_exit): Add --with-berkely-db option.
  (__main__): ditto.

* build/generator/
  (parse_options): Add --with-berkely-db option.
  (__init__): Search for libdb4? in the specified dir and then
  the default dirs.
  (map_rootpath): If the path is absolute then use it, else
  prepend the root path.

r6304 | brane | 2003-06-19 21:08:12 -0500 (Thu, 19 Jun 2003)

Make the generated SWIG bindings for Win32 more beautiful.

Patch by: Russell Yanofsky <>

* build.conf: Added description strings for SWIG libraries and two new
  utility targets, __SWIG_PYTHON__ and __SWIG_JAVA__.

* build/generator/msvc_dsp.ezt: For generated targets with the
  shared_dir flag set, append the target name to the Intermediate_Dir
  parameter. This lets each SWIG DLL use its own version resource.

* build/generator/ (GeneratorBase.__init__): Added new parser
  option "language" which is needed for the new __SWIG_*__ targets.

  (TargetSWIG.add_dependencies): Changed to set the description attribute
  on each newly created SWIGLibrary.

  (SWIGLibrary.__init__): Takes new parameter 'desc', which is used to
  initialize the 'desc' member. Init 'shared_dir' to 1.

  (lang_full_name): New; a map of language tags to pretty names for
  tweaking the SWIGLibrary descriptions.

  (Target): Added new member 'shared_dir', defaults to None.

  (TargetSWIG.add_dependencies): Pass 'self.desc' to the SWIGLibrary

  (TargetSWIGUtility): New class; inherits from TargetUtility for SWIG
  utility targets.

  (unique): Moved from and added a docstring.

* build/generator/ (WinGeneratorBase.get_unique_win_depends):
  Aow adds SWIGLibraries as dependencies of TargetSWIGUtility targets.

* build/generator/ (unique): moved to

  (Generator.write_project): no longer assigns None to the SWIGLibraries'
  "desc" attributes. Usee gen_base.unique to uniquify the install targets.

r5965 | brane | 2003-05-18 14:50:03 -0500 (Sun, 18 May 2003)

Describe the WinXP TCP/IP bug that causes data corruption. 

Patch by: François Beausoleil <>

* INSTALL: New section "Platform-Specific Issues". Describe WinXP TCP bug.

r5936 | brane | 2003-05-14 15:37:15 -0500 (Wed, 14 May 2003)

Change neon.dsp and build_neon.bat to assume this directory is the cwd
when the project is invoked, not the neon source directory. This presumably
makes build_neon.bat work with .vcproj files.

Patch by: Stefan Küng <>

* build/win32/build_neon.bat: Change the working dir to ..\..\neon before
  doing anything else.
* build/win32/neon.dsp: Fix all relative paths to build_neon.bat, and
  remove the Target_Dir option.

r5878 | brane | 2003-05-10 04:55:48 -0500 (Sat, 10 May 2003)

Get the MSVC .dsp's to generate files in the right directories, and add
version information to the executables and mod_dav_svn.

Patch by: D.J. Heap <>

* build.conf (svn, svnadmin, svndumpfilter, svnlook, svnserve, svnversion,
  mod_dav_svn): Added description field.

* build/generator/msvc_dsp.ezt: Changed output path of executalbes to
  mirror the source tree. Added version info for projects with a description

* build/generator/ (Target): Added a "desc" parameter to the
  constructor; all callers changed.
  (GeneratorBase.__init__): Send the description field to target class
  (_cfg_defaults): Add default for 'description'.

* build/generator/ Updated for changes in the Target interface.

r5825 | gstein | 2003-05-06 16:16:27 -0500 (Tue, 06 May 2003)

Various changes to get the Windows build working again.

Patch by: Branko Čibej <>
(Tweaked by me.)

  (main): take some additional options from the command line, to pass
    to the selected generator.
  (...): parse the --with-httpd option for specifying the location of
    Apache for Windows builds. accumulate the extra options and pass
    them to main().

* build/generator/
  (GeneratorBase.__init__): take an optional set of (cmdline) options.
    process an optional 'skip_targets' value so that we can ignore
    sections of the build configuration.

* build/generator/
  (WinGeneratorBase.envvars): the APRUTIL libs should include APRICONV.
  (WinGeneratorBase.parse_options): new method to parse the cmdline
    options and store away some state.
  (WinGeneratorBase.__init__): take new options and parse them. the
    copyfile call was moved and commented, but is still disabled.
      WinGeneratorBase.get_win_lib_dirs): use self.httpd_path rather
    than generating values which use the HTTPD environ variable.

* build/generator/
  (Generator.__init__): take and pass options to the parent
  (Generator.write): for test programs, the DSP name should start with
    'test-' for better visual grouping/separation. adjust the
    dependency computation to include the __CONFIG__ project. compute
    a full set of dependencies for executables.

* build/generator/
  (Generator.__init__): take and pass options to the parent
  (Generator.write): generate a UUID for apriconv

* build.conf:
  - change neon to use build/win32/neon.dsp
  - add mod_dav_svn to the __ALL__ (utility) target
  - create an __ALL_TESTS__ utility target for the test proggies
  - rename to the __CONFIG__ project

* build/win32/svn_config.dsp:
  - rename the logical name to __CONFIG__

* build/generator/msvc_dsp.ezt:
  - use the target's "dsp_name" attribute rather than the simple
    "name" attribute.

r5295 | brane | 2003-03-12 13:52:34 -0600 (Wed, 12 Mar 2003)

* subversion/tests/clients/cmdline/
  (strip_or_add_whitespace): Rename to prop_value_conversions. Add more tests
  for whitespace stripping and forcing svn:executable.

Patch by: Alex Waugh <>

(Stuff added by me: Refactor the prop value tests into check_prop, a nested
function within prop_value_conversions.)

r4656 | kevin | 2003-01-29 17:47:09 -0600 (Wed, 29 Jan 2003)

Fix a run-time assertion about accessing uninitialized memory from a certain
nameless compiler.

* subversion/libsvn_wc/status.c (svn_wc_status): Always make sure entry and
  parent_entry are initialized.

Patch by: Branko Čibej <>
Review by: me

r1169 | striker | 2002-02-04 03:43:14 -0600 (Mon, 04 Feb 2002)

Get rid of a warning in svn_error.c.  gcc has a 'feature'
that allows void functions to return void.  Not all
compilers have this 'feature'.

Suggested by: Branko Čibej <>
Review by: Greg Stein <>

* subversion/libsvn_subr/svn_error.c

  (svn_pool_create, svn_pool_create_debug, svn_pool_clear,
   svn_pool_clear_debug): Remove the wrapper macro.  Instead
    write out the code in full.