Re: [PATCH]#2440 svn rm nonexistent exits with success
From: <kfogel_at_collab.net>
Date: 2005-12-12 16:34:27 CET
Julian Foad <julianfoad@btopenworld.com> writes:
True, though in general we've taken the attitude that it's okay to
> 2. Where are we going to write down our policy on whether a command
(Note: whatever we consense on will go into hacking.html, of course.)
Here's a policy proposal:
"A Subversion command should, by default, error when asked to do
Thoughts?
I picked "--force" not because it's a completely natural semantic fit
-Karl
-- www.collab.net <> CollabNet | Distributed Development On Demand > Kamesh Jayachandran wrote: > > [[[ > > Fix issue #2440, svn rm nonexistent returns success. > > * subversion/libsvn_wc/adm_ops.c > > (erase_unversioned_from_wc): Return an error in the case where the > > file is not found. > > * Fix tests > > subversion/tests/svn/basic_tests.py > > (basic_delete): Deleting non-existant unversioned item returns the error so expecting the error. > > subversion/tests/svn/schedule_tests.py > > (unschedule_missing_added):svntest.main.run_svn(None, 'rm', file1_path, dir1_path) fails while deleting file1_path and stops immedeately not trying to delete the dir1_path because of the fix, so seperating the deletion to 2 operations. > > ]]] > > > > Index: subversion/libsvn_wc/adm_ops.c > > =================================================================== > > --- subversion/libsvn_wc/adm_ops.c (revision 17664) > > +++ subversion/libsvn_wc/adm_ops.c (working copy) > > @@ -667,7 +667,8 @@ > > switch (kind) > > { > > case svn_node_none: > > - /* Nothing to do. */ > > + return svn_error_createf (SVN_ERR_WC_NOT_FILE, NULL, > > + _("'%s' not existing in the working copy and repository"), path); > > break; > > default: > > Index: subversion/tests/svn/basic_tests.py > > =================================================================== > > --- subversion/tests/svn/basic_tests.py (revision 17664) > > +++ subversion/tests/svn/basic_tests.py (working copy) > > @@ -1093,7 +1093,7 @@ > > verify_file_deleted("Failed to remove unversioned file foo", foo_path) > > # Deleting non-existant unversioned item > > - svntest.actions.run_and_verify_svn(None, None, [], > > + svntest.actions.run_and_verify_svn(None, None, SVNAnyOutput, > > 'rm', '--force', foo_path) > > What's the point of that action? It no longer tests anything, really. > Might as well remove it. > > > # At one stage deleting an URL dumped core > > Index: subversion/tests/svn/schedule_tests.py > > =================================================================== > > --- subversion/tests/svn/schedule_tests.py (revision 17664) > > +++ subversion/tests/svn/schedule_tests.py (working copy) > > @@ -484,7 +484,8 @@ > > svntest.main.safe_rmtree(dir2_path) > > # Unschedule the additions, using 'svn rm' and 'svn revert'. > > - svntest.main.run_svn(None, 'rm', file1_path, dir1_path) > > + svntest.main.run_svn(SVNAnyOutput, 'rm', file1_path) > > + svntest.main.run_svn(SVNAnyOutput, 'rm', dir1_path) > > svntest.main.run_svn(None, 'revert', file2_path, dir2_path) > > That seems to contradict the comment at the top of the test that says > we should be able to do this with no errors. Maybe the comment is now > deemed wrong ... or something is. > > - Julian > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org > For additional commands, e-mail: dev-help@subversion.tigris.org > -- --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org For additional commands, e-mail: dev-help@subversion.tigris.orgReceived on Mon Dec 12 18:16:51 2005 |
This is an archived mail posted to the Subversion Dev mailing list.
This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.