Rev 1643: Be a little bit less verbose, split up large commit() function. in http://people.samba.org/bzr/jelmer/bzr-svn/trunk

Jelmer Vernooij jelmer at samba.org
Sun Aug 24 20:49:26 BST 2008


At http://people.samba.org/bzr/jelmer/bzr-svn/trunk

------------------------------------------------------------
revno: 1643
revision-id: jelmer at samba.org-20080824194919-zvocpoo6wh0v2bb7
parent: jelmer at samba.org-20080824164702-dlw9zqqvfhwk2al8
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: 0.4
timestamp: Sun 2008-08-24 21:49:19 +0200
message:
  Be a little bit less verbose, split up large commit() function.
modified:
  commit.py                      commit.py-20060607190346-qvq128wgfubhhgm2-1
  logwalker.py                   logwalker.py-20060621215743-c13fhfnyzh1xzwh2-1
=== modified file 'commit.py'
--- a/commit.py	2008-08-24 16:04:04 +0000
+++ b/commit.py	2008-08-24 19:49:19 +0000
@@ -412,24 +412,7 @@
 
         return ret
 
-    def commit(self, message):
-        """Finish the commit.
-
-        """
-        def done(*args):
-            """Callback that is called by the Subversion commit editor 
-            once the commit finishes.
-
-            :param revision_data: Revision metadata
-            """
-            self.revision_metadata = args
-        
-        bp = self.branch.get_branch_path()
-        assert isinstance(bp, str), "%r" % bp
-        bp_parts = bp.split("/")
-        repository_latest_revnum = self.repository.get_latest_revnum()
-        lock = self.repository.transport.lock_write(".")
-
+    def _determine_texts_identity(self):
         # Store file ids
         def _dir_process_file_id(old_inv, new_inv, path, file_id):
             ret = []
@@ -449,6 +432,7 @@
                     ret += _dir_process_file_id(old_inv, new_inv, new_child_path, child_ie.file_id)
             return ret
 
+
         fileids = {}
         text_parents = {}
 
@@ -464,7 +448,27 @@
             fileids[path] = id
             if revid is not None and revid != self.base_revid and revid != self._new_revision_id:
                 text_parents[path] = revid
-                mutter('in %r: overriding text revid for %r -> %r' % (self._new_revision_id, path, revid))
+        return (fileids, text_parents)
+
+    def commit(self, message):
+        """Finish the commit.
+
+        """
+        def done(*args):
+            """Callback that is called by the Subversion commit editor 
+            once the commit finishes.
+
+            :param revision_data: Revision metadata
+            """
+            self.revision_metadata = args
+        
+        bp = self.branch.get_branch_path()
+        assert isinstance(bp, str), "%r" % bp
+        bp_parts = bp.split("/")
+        repository_latest_revnum = self.repository.get_latest_revnum()
+        lock = self.repository.transport.lock_write(".")
+
+        (fileids, text_parents) = self._determine_texts_identity()
 
         self.base_mapping.export_text_parents(self.supports_custom_revprops, text_parents, 
                                               self._svn_revprops, self._svnprops)

=== modified file 'logwalker.py'
--- a/logwalker.py	2008-08-23 17:55:26 +0000
+++ b/logwalker.py	2008-08-24 19:49:19 +0000
@@ -551,7 +551,7 @@
                 if todo_revprops is None:
                     revprops = known_revprops
                 else:
-                    revprops = lazy_dict(known_revprops, self.revprop_list, revnum)
+                    revprops = lazy_dict(known_revprops, self._transport.revprop_list, revnum)
                 yield (revpaths, revnum, revprops)
         except SubversionException, (_, num):
             if num == ERR_FS_NO_SUCH_REVISION:




More information about the bazaar-commits mailing list