[JFIC:MERGE] bzr rm should delete the working file (Bug #82602)

Marius Kruger amanic at gmail.com
Fri Apr 20 11:40:48 BST 2007


On 4/20/07, Martin Pool <mbp at sourcefrog.net> wrote:
>
> If John was ok with this then it seems that all the review comments
> are fixed and we're good to merge it.  I'll wait til tomorrow in case
> anyone comments and do it then.



so just for jonk=john here is a bundle which is even less magical, just for
in case (JFIC)
*** I'm intentionally not letting this go directly to bundle buggy ***
because I'd
rather have v6 merged than v7, but I'm sending it to the list for in case
john or
someone-else prefers v7 (I'm away this weekend).
I made a diff since bundle 5 again for easier reviewing


from google chat (I hope its ok that I pasted it here martin..too late
now..):
==
*Martin: *jonk == john?
a typo i presume  -- so if you talked to him about it and he was ok, it's ok
with me
Sent at 11:14 AM on Friday
*Martin: *and i think aaron's only concern was the normpath, which you've
done?
Sent at 11:15 AM on Friday
*Martin: *ok i am going to go soon
*me: *yip, I removed it
jonk=john
*Martin: *so we're good to go?
*me: *I donno, I don't know if john is 100%
*Martin: *i'll see what he says overnight
he may merge it
*me: *I am wiling to convert to lists for you
for in case
Sent at 11:21 AM on Friday
*Martin: *the only thing that worries me is the inconsistency between
different tests
*me: *like what?
*Martin: *that this syntax works in the remove tests, but not elsewhere
but maybe we can move it to a superclass later
i don't see it as a really big deal
Sent at 11:27 AM on Friday
*Martin: *i should really go...
*me: *in general don't you think 'bzr rm xyz' is nicer than
['bzr','remove,'xyz']?
ok sorry t
thanks
*Martin: *i do
so i would  be happy to have that in the base class
good night!
*me: *bye
*Martin: *i think john's concern was just about merging it at the same time
bye!
Sent at 11:29 AM on Friday
==



regards
marius


-- 

I don't trust a Revision Control System with less than 5900 unit tests.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.ubuntu.com/archives/bazaar/attachments/20070420/ba35605f/attachment-0001.htm 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rm_delete_working_file7.patch
Type: application/octet-stream
Size: 412204 bytes
Desc: not available
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20070420/ba35605f/attachment-0001.obj 
-------------- next part --------------
=== modified file 'bzrlib/tests/__init__.py'
--- bzrlib/tests/__init__.py	2007-04-19 05:59:47 +0000
+++ bzrlib/tests/__init__.py	2007-04-20 07:12:51 +0000
@@ -35,7 +35,6 @@
 import os
 from pprint import pformat
 import re
-import shlex
 import stat
 from subprocess import Popen, PIPE
 import sys
@@ -1240,11 +1239,6 @@
         stdout.encoding = encoding
         stderr.encoding = encoding
 
-        # magically convert commands like 'remove abc' to ['remove', 'abc']
-        if (isinstance(argv, tuple) and len(argv) == 1 and
-            isinstance(argv[0], basestring)):
-            argv = shlex.split(argv[0])
-
         self.log('run bzr: %r', argv)
         # FIXME: don't call into logging here
         handler = logging.StreamHandler(stderr)

=== modified file 'bzrlib/tests/blackbox/test_remove.py'
--- bzrlib/tests/blackbox/test_remove.py	2007-04-19 05:59:47 +0000
+++ bzrlib/tests/blackbox/test_remove.py	2007-04-20 09:51:34 +0000
@@ -64,43 +64,44 @@
             ' or --force to delete them regardless.'
             ])
         self.run_bzr_error(error_regexes,
-            'remove ' + ' '.join(files_to_remove))
+            'remove', *files_to_remove)
         #see if we can force it now
-        self.run_bzr('remove --force ' + ' '.join(files_to_remove))
+        self.run_bzr('remove', '--force', *files_to_remove)
 
     def test_remove_no_files_specified(self):
         tree = self._make_add_and_assert_tree([])
         self.run_bzr_error(["bzr: ERROR: Specify one or more files to remove, "
             "or use --new."], 'remove')
 
-        self.run_bzr_error(["bzr: ERROR: No matching files."], 'remove --new')
+        self.run_bzr_error(["bzr: ERROR: No matching files."],
+            'remove', '--new')
 
         self.run_bzr_error(["bzr: ERROR: No matching files."],
-            'remove --new .')
+            'remove', '--new', '.')
 
     def test_rm_one_file(self):
         tree = self._make_add_and_assert_tree([a])
-        self.run_bzr("commit -m 'added a'")
-        self.run_bzr('rm a', error_regexes=["deleted a"])
+        self.run_bzr('commit', '-m', 'added a')
+        self.run_bzr('rm', 'a', error_regexes=["deleted a"])
         self.assertFilesDeleted([a])
 
     def test_remove_one_file(self):
         tree = self._make_add_and_assert_tree([a])
-        self.run_bzr("commit -m 'added a'")
-        self.run_bzr('remove a', error_regexes=["deleted a"])
+        self.run_bzr('commit', '-m', 'added a')
+        self.run_bzr('remove', 'a', error_regexes=["deleted a"])
         self.assertFilesDeleted([a])
 
     def test_remove_keep_one_file(self):
         tree = self._make_add_and_assert_tree([a])
-        self.run_bzr('remove --keep a', error_regexes=["removed a"])
+        self.run_bzr('remove', '--keep', 'a', error_regexes=["removed a"])
         self.assertFilesUnversioned([a])
 
     def test_remove_one_deleted_file(self):
         tree = self._make_add_and_assert_tree([a])
-        self.run_bzr("commit -m 'added a'")
+        self.run_bzr('commit', '-m', 'added a')
         os.unlink(a)
         self.assertInWorkingTree(a)
-        self.run_bzr('remove a')
+        self.run_bzr('remove', 'a')
         self.assertNotInWorkingTree(a)
 
     def test_remove_invalid_files(self):
@@ -117,14 +118,14 @@
 
     def test_remove_changed_files(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr("commit -m 'added files'")
+        self.run_bzr('commit', '-m', 'added files')
         self.changeFile(a)
         self.changeFile(c)
         self.run_bzr_remove_changed_files(['modified:[.\s]*a[.\s]*b/c'], files)
 
     def test_remove_changed_files_from_child_dir(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr("commit -m 'added files'")
+        self.run_bzr('commit', '-m', 'added files')
         self.changeFile(a)
         self.changeFile(c)
         os.chdir('b')
@@ -137,27 +138,28 @@
     def test_remove_keep_unversioned_files(self):
         self.build_tree(files)
         tree = self.make_branch_and_tree('.')
-        self.run_bzr('remove --keep a', error_regexes=["a is not versioned."])
+        self.run_bzr('remove', '--keep', 'a',
+                     error_regexes=["a is not versioned."])
         self.assertFilesUnversioned(files)
 
     def test_remove_force_unversioned_files(self):
         self.build_tree(files)
         tree = self.make_branch_and_tree('.')
-        self.run_bzr('remove --force ' + ' '.join(files),
+        self.run_bzr('remove', '--force', 
                      error_regexes=["deleted a", "deleted b",
-                                    "deleted b/c", "deleted d"])
+                                    "deleted b/c", "deleted d"], *files)
         self.assertFilesDeleted(files)
 
     def test_remove_deleted_files(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr("commit -m 'added files'")
+        self.run_bzr('commit', '-m', 'added files')
         my_files=[f for f in files]
         my_files.sort(reverse=True)
         for f in my_files:
             osutils.delete_any(f)
         self.assertInWorkingTree(files)
         self.failIfExists(files)
-        self.run_bzr('remove ' + ' '.join(files))
+        self.run_bzr('remove', *files)
         self.assertNotInWorkingTree(a)
         self.failIfExists(files)
 
@@ -167,33 +169,34 @@
 
     def test_remove_keep_non_existing_files(self):
         tree = self._make_add_and_assert_tree([])
-        self.run_bzr('remove --keep b', error_regexes=["b is not versioned."])
+        self.run_bzr('remove', '--keep', 'b',
+                     error_regexes=["b is not versioned."])
 
     def test_remove_files(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr("commit -m 'added files'")
-        self.run_bzr('remove a b b/c d',
+        self.run_bzr('commit', '-m', 'added files')
+        self.run_bzr('remove', 'a', 'b', 'b/c', 'd',
                      error_regexes=["deleted a", "deleted b", "deleted b/c",
                      "deleted d"])
         self.assertFilesDeleted(files)
 
     def test_remove_keep_files(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr("commit -m 'added files'")
-        self.run_bzr('remove --keep a b b/c d',
+        self.run_bzr('commit', '-m', 'added files')
+        self.run_bzr('remove', '--keep', 'a', 'b', 'b/c', 'd',
                      error_regexes=["removed a", "removed b", "removed b/c",
                      "removed d"])
         self.assertFilesUnversioned(files)
 
     def test_remove_with_new(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr('remove --new --keep',
+        self.run_bzr('remove', '--new', '--keep',
                      error_regexes=["removed a", "removed b", "removed b/c"])
         self.assertFilesUnversioned(files)
 
     def test_remove_with_new_in_dir1(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr('remove --new --keep b b/c',
+        self.run_bzr('remove', '--new', '--keep', 'b', 'b/c',
                      error_regexes=["removed b", "removed b/c"])
         tree = WorkingTree.open('.')
         self.assertInWorkingTree(a)
@@ -202,7 +205,7 @@
 
     def test_remove_with_new_in_dir2(self):
         tree = self._make_add_and_assert_tree(files)
-        self.run_bzr('remove --new --keep .',
+        self.run_bzr('remove', '--new', '--keep', '.',
                      error_regexes=["removed a", "removed b", "removed b/c"])
         tree = WorkingTree.open('.')
         self.assertFilesUnversioned(files)


More information about the bazaar mailing list