Rev 3788: CommitBuilder.record_iter_changes handles renamed symlinks. in http://people.ubuntu.com/~robertc/baz2.0/commit-iterchanges

Robert Collins robertc at robertcollins.net
Tue Dec 2 01:25:35 GMT 2008


At http://people.ubuntu.com/~robertc/baz2.0/commit-iterchanges

------------------------------------------------------------
revno: 3788
revision-id: robertc at robertcollins.net-20081202012530-6sw4ttk7memrflv6
parent: robertc at robertcollins.net-20081202011752-qa4n9318z1m24gjf
committer: Robert Collins <robertc at robertcollins.net>
branch nick: commit-iterchanges
timestamp: Tue 2008-12-02 12:25:30 +1100
message:
  CommitBuilder.record_iter_changes handles renamed symlinks.
modified:
  bzrlib/repository.py           rev_storage.py-20051111201905-119e9401e46257e3
  bzrlib/tests/per_repository/test_commit_builder.py test_commit_builder.py-20060606110838-76e3ra5slucqus81-1
=== modified file 'bzrlib/repository.py'
--- a/bzrlib/repository.py	2008-12-02 01:17:52 +0000
+++ b/bzrlib/repository.py	2008-12-02 01:25:30 +0000
@@ -599,11 +599,11 @@
                         entry.text_sha1, entry.text_size = self._add_text_to_weave(
                             file_id, lines, heads, None)
                     elif kind == 'symlink':
-                        import pdb;pdb.set_trace()
+                        entry.symlink_target = basis_inv[file_id].symlink_target
+                        self._add_text_to_weave(change[0], [], heads, None)
                     elif kind == 'directory':
                         # Nothing to set.
                         self._add_text_to_weave(change[0], [], heads, None)
-                        pass
                     elif kind == 'tree-reference':
                         import pdb;pdb.set_trace()
                     else:

=== modified file 'bzrlib/tests/per_repository/test_commit_builder.py'
--- a/bzrlib/tests/per_repository/test_commit_builder.py	2008-12-02 01:17:52 +0000
+++ b/bzrlib/tests/per_repository/test_commit_builder.py	2008-12-02 01:25:30 +0000
@@ -566,6 +566,14 @@
         os.symlink('target', 'link')
         self._add_commit_renamed_check_changed(tree, 'link')
 
+    def test_last_modified_revision_after_rename_link_changes_ric(self):
+        # renaming a link changes the last modified.
+        self.requireFeature(tests.SymlinkFeature)
+        tree = self.make_branch_and_tree('.')
+        os.symlink('target', 'link')
+        self._add_commit_renamed_check_changed(tree, 'link',
+            mini_commit=self.mini_commit_record_iter_changes)
+
     def _add_commit_reparent_check_changed(self, tree, name,
         expect_fs_hash=False):
         self.build_tree(['newparent/'])




More information about the bazaar-commits mailing list