Rev 3774: Sufficient fixes to allow bzr-search to index a dev3 format repository. in http://people.ubuntu.com/~robertc/baz2.0/repository

Robert Collins robertc at robertcollins.net
Fri Nov 14 00:12:10 GMT 2008


At http://people.ubuntu.com/~robertc/baz2.0/repository

------------------------------------------------------------
revno: 3774
revision-id: robertc at robertcollins.net-20081114001152-kyi3rh0c0a96f1g1
parent: robertc at robertcollins.net-20081113075631-4hqnjahhfd3mr8p1
committer: Robert Collins <robertc at robertcollins.net>
branch nick: repository
timestamp: Fri 2008-11-14 11:11:52 +1100
message:
  Sufficient fixes to allow bzr-search to index a dev3 format repository.
modified:
  bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
  bzrlib/repofmt/pack_repo.py    pack_repo.py-20070813041115-gjv5ma7ktfqwsjgn-1
=== modified file 'bzrlib/chk_map.py'
--- a/bzrlib/chk_map.py	2008-11-13 04:06:26 +0000
+++ b/bzrlib/chk_map.py	2008-11-14 00:11:52 +0000
@@ -360,6 +360,9 @@
         # The pointers/values this node has - meaning defined by child classes.
         self._items = {}
 
+    def key(self):
+        return self._key
+
     def __len__(self):
         return self._len
 
@@ -430,9 +433,6 @@
             for item in self._items.iteritems():
                 yield item
 
-    def key(self):
-        return self._key
-
     def map(self, store, key, value):
         """Map key to value."""
         if key in self._items:

=== modified file 'bzrlib/repofmt/pack_repo.py'
--- a/bzrlib/repofmt/pack_repo.py	2008-11-13 07:56:31 +0000
+++ b/bzrlib/repofmt/pack_repo.py	2008-11-14 00:11:52 +0000
@@ -2202,7 +2202,8 @@
         # pointers pruned, common trees with different pointers examined
         # further.
         for idx, inv in enumerate(self.iter_inventories(revision_ids)):
-            pb.update('fetch', idx, len(revision_ids))
+            if pb is not None:
+                pb.update('fetch', idx, len(revision_ids))
             inv_chk_map = inv.id_to_entry
             inv_chk_map._ensure_root()
             pending_nodes = set([inv_chk_map._root_node])
@@ -2214,7 +2215,7 @@
                     uninteresting_chk_refs.add(node.key())
                     if not isinstance(node, chk_map.InternalNode):
                         # Leaf node: pull out its contents:
-                        for name, bytes in node.iteritems():
+                        for name, bytes in node.iteritems(self):
                             entry = inv._bytes_to_entry(bytes)
                             if entry.name == '' and not rich_root:
                                 continue
@@ -2224,7 +2225,7 @@
                     # Recurse deeper
                     # Two-pass; api fixup needed to allow exclusion
                     wanted_keys = set()
-                    for key, value in node._items.iteritems:
+                    for key, value in node._items.iteritems():
                         if key in uninteresting_chk_refs:
                             continue
                         wanted_keys.add((key,))




More information about the bazaar-commits mailing list