Madan U Sreenivasan <madan@collab.net>


Patch Review Suggested
r19856, r19800, r19734, r19701, r19598, r19597, r19594, r19593, r17334, r17312, r17275, r17216, r17208, r16697, r16098, r15930, r15694, r15648, r14778, r13865, r13602, r13369, r13103, r13055, r13027 r19675, r19653, r17122 r19794, r19785

r19856 | djames | 2006-05-30 11:35:18 -0500 (Tue, 30 May 2006)

* subversion/include/svn_string.h
  (svn_cstring_match_glob_list): Remove incorrect documentation for 'pool'
  parameter. This function doesn't accept a 'pool' parameter.

Patch by: Madan U Sreenivasan <madan@collab.net>



r19800 | djames | 2006-05-23 19:44:06 -0500 (Tue, 23 May 2006)

Implement `svnmerge rollback'.
The `rollback' sub-command can be used to rollback previously integrated
revisions.

Patch by: Madan U Sreenivasan <madan@collab.net>

Review by: David James <djames@collab.net>
           Daniel Rall <dlr@collab.net>
           Giovanni Bajo <rasky@develer.com>

* contrib/client-side/svnmerge_test.py
  (TestCase_TestRepo.testRollbackWithoutInit):
  (TestCase_TestRepo.testRollbackOutsidePossibleRange):
  (TestCase_TestRepo.testRollbackWithoutRevisionOpt):
  (TestCase_TestRepo.testInitAndRollbackRecordOnly):
  (TestCase_TestRepo.testInitAndRollback):
  (TestCase_TestRepo.testMergeAndRollbackEmptyRevisionRange):
  (TestCase_TestRepo.testBlockMergeAndRollback):
  (TestCase_TestRepo.testMergeAndRollback):
  (TestCase_TestRepo.testBlockMergeAndRollback): New tests for rollback
   functionality.

* contrib/client-side/svnmerge.py
  (warn): New function to print warning message to stdout.
  (action_rollback): New function. Used to rollback the merges between
   the given revision numbers.
  (command_table): New entry for `rollback'.



r19794 | dlr | 2006-05-23 17:06:10 -0500 (Tue, 23 May 2006)

A formatting follow-up to r19777.

* subversion/tests/cmdline/lock_tests.py
  (examine_lock_encoded_recurse): De-tabify.  Break long line.

Suggested by: Madan U Sreenivasan <madan@collab.net>


r19785 | rooneg | 2006-05-23 12:58:16 -0500 (Tue, 23 May 2006)

Follow up to r19760, verify that the propset actually worked before
we move on to running the diff.

Suggested by: lundblad
              Madan U Sreenivasan <madan@collab.net>

* subversion/tests/cmdline/diff_tests.py
  (diff_weird_author): Verify that our propset actually worked.


r19734 | lundblad | 2006-05-22 01:25:42 -0500 (Mon, 22 May 2006)

* subversion/www/project_tasks.html
  (Summer of Code tasks): Fix typo.

Patch by: Madan U Sreenivasan <madan@collab.net>


r19701 | dlr | 2006-05-17 20:52:54 -0500 (Wed, 17 May 2006)

Fix file header comment in JavaHL code.

* subversion/bindings/java/javahl/native/BlameCallback.cpp
* subversion/bindings/java/javahl/native/BlameCallback.h
  Fix header comment and adjust copyright year.

Patch by: Madan U Sreenivasan <madan@collab.net>


r19675 | rooneg | 2006-05-17 15:01:20 -0500 (Wed, 17 May 2006)

Fix issue 2550, a bug in 'svn log file@BASE'.

Reviewed by: Madan U Sreenivasan <madan@collab.net>
Found by: Stefan Küng <tortoisesvn@gmail.com>

* subversion/libsvn_client/log.c
  (svn_client_log3): Error out gracefully if a base, committed, or previous
   revision is passed along with a URL.  Use a path to root the ra session
   for those types of revisions instead of a url.

* subversion/tests/cmdline/log_tests.py
  (log_base_peg): New test for logging with a peg rev of BASE.
  (test_list): Add new test.


r19653 | giovannibajo | 2006-05-16 07:19:43 -0500 (Tue, 16 May 2006)

Add the uninit command, which removes merge tracking information for a given
head URL, including blocked revision information. This is especially useful
if multiple heads are being tracked -- without uninit, this situation requires
the new property value to be manually set by the user via svn propset.

* svnmerge.py: Added uninit to command table.
  (action_uninit): New method for uninitialization of merge tracking info.

* svnmerge_test.py
  (TestCase_TestRepo.testUninit): New test case, checking that uninit works.
  (TestCase_TestRepo.testUninitForce): New test case.
  (TestCase_TestRepo.getproperty): Prevent array index errors when
    retrieving a property with no value.
  (TestCase_TestRepo.getBlockedProperty): New method to get the value
    of the svnmerge blocked property.

Patch by: Raman Gupta <rocketraman@fastmail.fm>
Review by: Daniel Rall <dlr@collab.net>
           Madan U Sreenivasan <madan@collab.net>
           Giovanni Bajo <rasky@develer.com>


r19598 | dlr | 2006-05-09 17:45:45 -0500 (Tue, 09 May 2006)

Tweak doxygen markup.

* subversion/include/svn_client.h
  (svn_client_add3, svn_client_import2, svn_client_blame3,
   svn_client_blame2, svn_client_export3, svn_client_lock): Markup
   boolean values with @c.

Patch by: Madan U Sreenivasan <madan@collab.net>


r19597 | dlr | 2006-05-09 17:08:56 -0500 (Tue, 09 May 2006)

Internal refactoring of svnmerge.py in preparation for addition of a
'rollback' command.  No functional change.

* contrib/client-side/svnmerge.py
  (get_created_rev): New method factored out of action_integrated()
   which looks up the revision at which the path identified by the
    provided URL was first created.

  (action_integrated): Leverage get_created_rev().

Patch by: Madan U Sreenivasan <madan@collab.net>
          me


r19594 | djames | 2006-05-09 16:07:44 -0500 (Tue, 09 May 2006)

Revert r19553's change for svnmerge.py as it turned out to be unnecessary.

Patch by: Madan U Sreenivasan <madan@collab.net>

* contrib/client-side/svnmerge.py
  (my_getopt)       : Removed.
  (_extract_command): Modified to use getopt.getopt().



r19593 | dlr | 2006-05-09 15:22:35 -0500 (Tue, 09 May 2006)

Stylistic change to svnmerge.py.  No functional change.

* contrib/client-side/svnmerge.py
  (get_latestrev): Renamed to get_latest_rev().

  (analyze_head_revs): Modified to call get_latest_rev().

  (action_init): Modified to call get_latest_rev().

Patch by: Madan U Sreenivasan <madan@collab.net>


r17334 | rooneg | 2005-11-14 13:36:47 -0600 (Mon, 14 Nov 2005)

Follow up improvements to r17216 and r17217.

Patch by: Madan U Sreenivasan <madan@collab.net>

* subversion/libsvn_wc/adm_ops.c
  (svn_wc_delete2): Cleaned up a bit and used a better variable name.

* subversion/tests/clients/cmdline/prop_tests.py
  (removal_schedule_added_props): Modified to be more robust and verify
   that all preparatory steps have succeeded.


r17312 | kfogel | 2005-11-12 01:09:53 -0600 (Sat, 12 Nov 2005)

Regression test for issue #2435: 'mv --force' should not lose local mods.

Patch by: Madan U Sreenivasan <madan@collab.net>
(Tweaked very slightly by me.)

* subversion/tests/clients/cmdline/copy_tests.py
  (force_move): New test.
  (test_list): Run it.


r17275 | djames | 2005-11-09 13:28:13 -0600 (Wed, 09 Nov 2005)

Issue #443: Post-commit hook script (error) output lost.
Fix portability issues in commit_tests 34.

* subversion/tests/clients/cmdline/commit_tests.py
  (post_commit_hook_test): Use the create_python_hook_script function
  for better portability.

* subversion/tests/clients/cmdline/svntest/main.py
  (create_python_hook_script): New function. Creates a portable Python based
  hook script.

Patch by: Madan U Sreenivasan <madan@collab.net>
(Tweaked by me.)

Review by: malcolm
           me



r17216 | dionisos | 2005-11-06 10:04:19 -0600 (Sun, 06 Nov 2005)

Fix issue #2419: 'svn rm' of schedule add leaves working props file.

Patch by: Madan U Sreenivasan <madan@collab.net>
Tweaked by: me


* subversion/libsvn_wc/adm_ops.c
  (svn_wc_delete2): Handle properties on schedule-add files.

* subversion/tests/clients/cmdline/prop_tests.py
  (removal_schedule_added_props): New test for testing prop-file
  removal on the removal of a schedule-add file.


r17208 | rooneg | 2005-11-04 18:50:02 -0600 (Fri, 04 Nov 2005)

Partial fix for Issue #443: post-commit hook script (error) output lost
This is step 6 : Pass the post-commit error from the server to the client
over all three protocols.

Patch by: Madan U Sreenivasan <madan@collab.net>

* subversion/libsvn_subr/constructors.c
  (svn_commit_info_dup): Modified to copy the post_commit_err member.

* subversion/mod_dav_svn/merge.c
  (global): included svn_xml.h.
  (dav_svn__merge_response): Modified to use the new post-commit
   error message parameter.

* subversion/mod_dav_svn/dav_svn.h
  (dav_svn__merge_response): Add new parameter - post_commit_err.

* subversion/mod_dav_svn/version.c
  (dav_svn_merge): Modified to extract the post-commit error message.

* subversion/clients/cmdline/util.c
  (svn_cl__print_commit_info): At last, we can print out the post-commit
   error messages! yoohoo!

* subversion/tests/clients/cmdline/commit_tests.py
  (post_commit_hook_test): New function to test post-commit hook's error
   output.
  (test_list): Added post_commit_hook_test to list of tests.

* subversion/libsvn_repos/hooks.c
  (svn_repos__hooks_post_commit): Pass TRUE for the read_errstream
   parameter of run_hook_cmd.

* subversion/libsvn_repos/commit.c
  (close_edit): Fill the post_commit_err parameter if the child
   error message has one.

* subversion/libsvn_ra_svn/client.c
  (ra_svn_end_commit): Modified to read the extra post-commit error
   message sent out by the server.

* subversion/libsvn_ra_svn/protocol
  (commit_info): Added the optional parameter for post-commit error.

* subversion/libsvn_ra_dav/merge.c
  (merge_elements): Added new member for post-commit error processing.
  (merge_ctx_t): Added new member for post-commit error.
  (validate_element): Added test for the ELEM_post_commit_err.
  (end_element): Added post-commit error handling.
  (svn_ra_dav__merge_activity): Added the post_commit_err parameter
   and its handling.

* subversion/libsvn_ra_dav/ra_dav.h
  (enum): Added a new member ELEM_post_commit_err.
  (svn_ra_dav__merge_activity): Added new parameter for post-commit error
   message.

* subversion/libsvn_ra_dav/commit.c
  (commit_close_edit): Modified call to svn_ra_dav__merge_activity to
   pass the post-commit error message.

* subversion/svnserve/serve.c
  (commit_callback_baton_t): Add a new member to hold the post-commit
   error message.
  (commit_done): Modified to copy the over the post-commit error message
   to the callback baton.
  (commit): Write out the tuple with the post-commit error message.


r17122 | dlr | 2005-10-31 18:47:03 -0600 (Mon, 31 Oct 2005)

Continuing investigation of issue #2306.  Strangely, the reproduction
recipe for a file's read-only-ness only fails the first time the trunk
is switched to a branch.  However, a subsequent switch back to trunk,
then back to the branch again works as expected!

* subversion/tests/clients/cmdline/switch_tests.py
  (refresh_read_only_attribute): Removed stray TODO which snuck in.
   Improved error message.  Added additional WC switch operations
   which demonstrate the unexpected behavior (a work-in-progress).

Review by: madan@collab.net


r16697 | lundblad | 2005-10-13 10:31:15 -0500 (Thu, 13 Oct 2005)

Partial fix for Issue #443: post-commit hook script (error) output lost
This is step 5 : Replace all usage of svn_commit_callback_t with
svn_commit_callback2_t.

Patch by: Madan U Sreenivasan <madan@collab.net>
(Tweaked by me.)

* subversion/libsvn_ra/wrapper_template.h
  (compat_get_commit_editor): Use svn_compat_wrap_commit_callback.

* subversion/libsvn_ra/ra_loader.c: Include svn_types.h.
  (svn_ra_get_commit_editor2): New function using svn_commit_callback2_t.
  (svn_ra_get_commit_editor): Wrap svn_ra_get_commit_editor2.

* subversion/libsvn_ra/ra_loader.h
  (svn_ra__vtable_t): Modified the get_commit_editor member to use
  svn_commit_callback2_t instead of svn_commit_callback_t.

* subversion/include/svn_repos.h
  (svn_repos_get_commit_editor4): New version of svn_repos_get_commit_editor3
  to use svn_commit_callback2_t.
  (svn_repos_get_commit_editor3): Deprecated.

* subversion/include/svn_types.h
  (svn_commit_info_dup): New API.
  (svn_commit_callback2_t): New callback similar to svn_commit_callback_t
   but using the svn_commit_info_t structure and with an new pol argument.
  (svn_commit_callback_t): Deprecated.
  (svn_compat_wrap_commit_callback): New API to wrap commit_baton
  and provide a svn_commit_callback_t type callback.

* subversion/include/svn_ra.h
  (svn_ra_get_commit_editor2): New version of svn_ra_get_commit_editor
   using svn_commit_callback2_t.
  (svn_ra_get_commit_editor): Deprecated.

* subversion/libsvn_subr/constructors.c
  (svn_commit_info_dup): New function.
 
* subversion/libsvn_subr/compat.c: New file to provide compatibility
  for deprecated callback types.

* subversion/libsvn_ra_local/ra_plugin.c
  (deltify_etc_baton): Use svn_commit_callback2_t.
  (deltify_etc): Now uses the svn_commit_callback2_t signature
   and callbacks.
  (svn_ra_local__get_commit_editor): Use svn_client_commit_callback2_t.

* subversion/libsvn_client/delete.c
  (delete_urls): Use svn_ra_get_commit_editor2 instead of
   svn_ra_get_commit_editor.

* subversion/libsvn_client/client.h
  (svn_client__commit_callback): Comply with new svn_commit_callback2_t
  signature.

* subversion/libsvn_client/copy.c
  (repos_to_repos_copy, wc_to_repos_copy): Use svn_ra_get_commit_editor2 instead of
   svn_ra_get_commit_editor.

* subversion/libsvn_client/commit_util.c
  (svn_client__commit_callback): Modified function to use
   svn_commit_info_t.

* subversion/libsvn_client/add.c
  (mkdir_urls): Use svn_ra_get_commit_editor2 instead of
   svn_ra_get_commit_editor.

* subversion/libsvn_client/commit.c
  (get_ra_editor): Use svn_ra_get_commit_editor2.

* subversion/tests/libsvn_repos/repos-test.c
  (commit_editor_authz): Use svn_repos_get_commit_editor4.

* subversion/libsvn_repos/commit.c
  (edit_baton): Now uses svn_commit_callback2_t.
  (close_edit): Use svn_commit_callback2_t based callback.
  (svn_repos_get_commit_editor4): New function.
  (svn_repos_get_commit_editor3): Modified to wrap around the
   svn_repos_get_commit_editor4 function.
  (svn_repos_get_commit_editor2): Modified to wrap around the
   svn_repos_get_commit_editor3 function.
  (svn_repos_get_commit_editor): Modified to wrap around the
   svn_repos_get_commit_editor2 function.

* subversion/libsvn_ra_svn/client.c
  (ra_svn_commit_callback_baton_t): Now uses svn_commit_callback2_t.
  (ra_svn_end_commit): Add pool argument.  Use svn_commit_info_t.
  (ra_svn_commit): Use svn_commit_callback2_t.

* subversion/libsvn_ra_dav/ra_dav.h
  (svn_ra_dav__get_commit_editor): Use svn_commit_callback2_t.

* subversion/libsvn_ra_dav/commit.c
  (commit_ctx_t): Use svn_commit_callback2_t.
  (commit_close_edit): use svn_commit_info_t.
  (svn_ra_dav__get_commit_editor): Use svn_commit_callback2_t.

* subversion/svnserve/serve.c
  (commit_callback_baton_t): Add pool member.
  (commit_done): Use svn_commit_info_t.
  (commit): Use svn_repos_get_commit_editor4.
  Initialize ccb->pool



r16098 | lundblad | 2005-09-09 06:33:40 -0500 (Fri, 09 Sep 2005)

Partial fix for Issue #443: post-commit hook script (error) output lost
This is step 4 : Replace all usage of svn_client_commit_info2_t with
svn_commit_info_t.
Remove svn_client_commit_info2_t and svn_client_create_commit_info.

Patch by: Madan U Sreenivasan <madan@collab.net>

* subversion/include/svn_client.h
  (svn_client_commit_info2_t, svn_client_create_commit_info): Removed.
  (svn_client_mkdir2, svn_client_delete2, svn_client_import2, 
   svn_client_commit3, svn_client_copy2, svn_client_move3):
   Use svn_commit_info_t instead of svn_client_commit_info2_t.

* subversion/libsvn_client/delete.c
  (delete_urls, svn_client_delete2),
* subversion/libsvn_client/client.h
  (svn_client__commit_get_baton),
* subversion/libsvn_client/copy.c
  (repos_to_repos_copy, wc_to_repos_copy, setup_copy,
   svn_client_copy2, svn_client_copy, svn_client_move3,
   svn_client_move2),
* subversion/libsvn_client/commit_util.c
  (commit_baton, svn_client__commit_get_baton,
   svn_client__commit_callback),
* subversion/libsvn_client/add.c
  (mkdir_urls, svn_client_mkdir2, svn_client_mkdir),
* subversion/libsvn_client/commit.c
  (get_ra_editor, svn_client_import2, svn_client_import,
   svn_client_commit3, svn_client_commit2),
* subversion/clients/cmdline/cl.h (svn_cl__print_commit_info),
* subversion/clients/cmdline/move-cmd.c (svn_cl__move),
* subversion/clients/cmdline/mkdir-cmd.c (svn_cl__mkdir),
* subversion/clients/cmdline/copy-cmd.c (svn_cl__copy),
* subversion/clients/cmdline/util.c (svn_cl__print_commit_info),
* subversion/clients/cmdline/commit-cmd.c (svn_cl__commit),
* subversion/clients/cmdline/delete-cmd.c (svn_cl__delete),
* subversion/clients/cmdline/import-cmd.c (svn_cl__import),
   Use svn_commit_info_t instead of svn_client_commit_info2_t.


r15930 | lundblad | 2005-08-26 14:43:57 -0500 (Fri, 26 Aug 2005)

Partial fix for Issue #443: post-commit hook script (error) output lost
This is step 3 : Introduce new type svn_commit_info_t that can hold
all data required about a commit. Create a constructor too.

Patch by: Madan U Sreenivasan <madan@collab.net>

* subversion/include/svn_types.h
  (svn_commit_info_t): New type.
  (svn_create_commit_info): New function. Constructor for
  svn_commit_info_t.

* subversion/libsvn_subr/constructors.c: New file.
  (svn_create_commit_info): New helper function. Constructor for
  svn_commit_info_t.



r15694 | lundblad | 2005-08-12 04:35:05 -0500 (Fri, 12 Aug 2005)

Partial fix for Issue #443: post-commit hook script (error) output lost

This is step 2 : Use svn_client_commit_info2_t everywhere
and the svn_client_create_commit_info() constructor for
creating svn_client_commit_info2_t objects, deprecating
svn_client_commit_info_t and a lot of public svn_client APIs.  Stylistic
tweaks by me.

Patch by: Madan U Sreenivasan <madan@collab.net>

* subversion/include/svn_client.h
  (svn_client_commit_info_t, svn_client_mkdir, svn_client_delete,
  svn_client_commit2, (svn_client_copy, svn_client_move2): Deprecate.
  (svn_client_mkdir2, svn_client_delete2, svn_client_commit3,
  svn_client_copy2, svn_client_move3): New version declarations
  of the above deprecated functions.
  (svn_client_import2): Use svn_client_commit_info2_t.

* subversion/libsvn_client/delete.c
  (delete_urls): Use svn_client_commit_info2_t.
  (svn_client_delete2): New version of svn_client_delete. Now use
  svn_client_commit_info2_t.
  (svn_client_delete): Wrap svn_client_delete2().

* subversion/libsvn_client/client.h
  (svn_client__commit_get_baton): Use svn_client_commit_info2_t.

* subversion/libsvn_client/copy.c
  (repos_to_repos_copy, wc_to_repos_copy, setup_copy):
  Use svn_client_commit_info2_t.
  (svn_client_copy): Wrap svn_client_copy2().
  (svn_client_move2): Wrap svn_client_move3().
  (svn_client_copy2): New version of svn_client_copy(). Now use
  svn_client_commit_info2_t.
  (svn_client_move3): New version of svn_client_move2(). Now use
  svn_client_commit_info2_t.
  (svn_client_move): Use modified setup_copy().

* subversion/libsvn_client/commit_util.c
  (commit_baton): Use svn_client_commit_info2_t.
  (svn_client__commit_get_baton): Use svn_client_commit_info2_t
  and the svn_client_create_commit_info() constructor.

* subversion/libsvn_client/add.c
  (mkdir_urls): Use svn_client_commit_info2_t.
  (svn_client_mkdir): Wrap svn_client_mkdir2().
  (svn_client_mkdir2): New version of svn_client_mkdir. Now use
  svn_client_commit_info2_t.

* subversion/libsvn_client/commit.c
  (get_ra_editor): Use svn_client_commit_info2_t.
  (svn_client_import2): Now use svn_client_commit_info2_t
  and the svn_client_create_commit_info() constructor.
  (svn_client_import): Use a temporary svn_client_commit_info2_t while
  calling svn_client_import2().
  (svn_client_commit3): New version of svn_client_commit2(). Now use
  svn_client_commit_info2_t.
  (svn_client_commit2): Wrap svn_client_commit3().

* subversion/clients/cmdline/cl.h
  (svn_cl__print_commit_info): Use svn_client_commit_info2_t.

* subversion/clients/cmdline/move-cmd.c (svn_cl__move):
* subversion/clients/cmdline/mkdir-cmd.c (svn_cl__mkdir):
* subversion/clients/cmdline/copy-cmd.c (svn_cl__copy):
* subversion/clients/cmdline/util.c (svn_cl__print_commit_info):
* subversion/clients/cmdline/commit-cmd.c (svn_cl__commit): 
* subversion/clients/cmdline/delete-cmd.c (svn_cl__delete):
* subversion/clients/cmdline/import-cmd.c(svn_cl__import):
  Don't use deprecated APIs.

r15648 | lundblad | 2005-08-09 04:46:11 -0500 (Tue, 09 Aug 2005)

Partial fix for Issue #443: post-commit hook script (error) output lost.

This is step 1 : Introduction of svn_client_commit_info2_t and its
constructor.

Patch by: Madan U Sreenivasan <madan@collab.net>
          me

* subversion/include/svn_client.h
  (svn_client_commit_info2_t): New structure to take care of
  post-commit-hook's stderr.
  (svn_client_commit_info_t): Add a note that this will be deprecated soon.
  (svn_client_create_commit_info): New function. Constructor for
  svn_client_commit_info2_t.

* subversion/libsvn_client/commit.c
  (svn_client_create_commit_info): New function.


r14778 | lundblad | 2005-05-19 07:50:15 -0500 (Thu, 19 May 2005)

* tools/test-scripts/svntest/README
  (mod_dav_svn_shared.conf): Added authentication parameters for
  lock tests over ra_dav
  (ramdisk): Changed the ramdisk requirement to 700 MB because
  tests failing due to lack of disk space

Patch by: Madan US <madan@collab.net>


r13865 | julianfoad | 2005-04-02 19:07:41 -0600 (Sat, 02 Apr 2005)

Improve the test for issue #2214 (poor error message when intermediate dir
missing in copy), making it specifically a regression test for the issue as
opposed to a general test for the behaviour.

Patch by: Madan U. Sreenivasan <madan@collab.net>
(Tweaked by me.)

* subversion/tests/clients/cmdline/copy_tests.py
  (url_to_non_existent_url_path): Check for exact error message.


r13602 | julianfoad | 2005-03-22 16:41:26 -0600 (Tue, 22 Mar 2005)

Fix issue #2214: poor error message when intermediate dir missing in copy.
Improve the error message, and also add a test for this behaviour.

Patch by: Madan U Sreenivasan <madan@collab.net>

* subversion/libsvn_repos/commit.c
  (open_directory): Replace "out of date" error with "path not present" error.

* subversion/tests/clients/cmdline/copy_tests.py
  (url_to_non_existent_url_path): New test to ensure that 'svn copy' fails when
    one of the destination URL path components does not exist.
  (test_list): Add the new test.


r13369 | julianfoad | 2005-03-11 09:53:08 -0600 (Fri, 11 Mar 2005)

Fix issue #2219: Canonicalize values in svn:keywords.

Patch by: Madan U Sreenivasan <madan@collab.net>
(Tweaked by me.)

* subversion/libsvn_wc/props.c
  (canonicalize_keywords): New function to canonicalize the input based
    on the canonical values defined for svn:keywords.
  (svn_wc_prop_set2): Changed function to call canonicalize_keywords().

* subversion/tests/clients/cmdline/prop_tests.py
  (prop_value_conversions): Modified function to reflect output changes
    now caused by canonicalization.

* subversion/tests/clients/cmdline/trans_tests.py
  (canonicalize_keywords_prop): New function for testing canonicalization
    of svn:keywords.
  (canonicalized_and_keywords_expanded): New function for testing
    canonicalization of svn:keywords and expansion of keywords.


r13103 | kfogel | 2005-02-21 22:45:34 -0600 (Mon, 21 Feb 2005)

Documentation fix:

* subversion/tests/clients/cmdline/README: Fixed lines about usage of
    URL with the test scripts.  The test case number should follow the
    --url option.

Patch by: Madan U Sreenivasan <madan@collab.net>


r13055 | kfogel | 2005-02-18 09:11:38 -0600 (Fri, 18 Feb 2005)

Follow up to r13027: Make regression test more rigorous.  

Patch by: Madan U Sreenivasan <madan@collab.net>

* subversion/tests/clients/cmdline/trans_tests.py
  (propset_revert_noerror): Added status check after propset and revert.


r13027 | kfogel | 2005-02-15 10:16:31 -0600 (Tue, 15 Feb 2005)

Fix issue #601: Add some new regression tests for keyword expansion.

Patch by: Madan U Sreenivasan <madan@collab.net>
(Tweaked by me.)

* subversion/tests/clients/cmdline/trans_tests.py: Remove comment
    about things that have failed during hand-testing, since those
    tests are written now.
  (propset_commit_checkout_nocrash): New test for propset, commit,
    checkout into another wc.
  (propset_revert_noerror): New test for propset, revert.
  (test_list): Run the new tests.