Rev 1491: Pass to_revnum in a couple more places. in http://people.samba.org/bzr/jelmer/bzr-svn/trunk

Jelmer Vernooij jelmer at samba.org
Wed Jul 23 01:37:08 BST 2008


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

------------------------------------------------------------
revno: 1491
revision-id: jelmer at samba.org-20080723003707-4nci8v53w0e3yob8
parent: jelmer at samba.org-20080723003503-9j7dwt36h7ceh8qt
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: 0.4
timestamp: Wed 2008-07-23 02:37:07 +0200
message:
  Pass to_revnum in a couple more places.
modified:
  fileids.py                     fileids.py-20060714013623-u5iiyqqnko11grcf-1
  revids.py                      revids.py-20070416220458-36vfa0730cchevp1-1
=== modified file 'fileids.py'
--- a/fileids.py	2008-07-21 20:17:38 +0000
+++ b/fileids.py	2008-07-23 00:37:07 +0000
@@ -27,14 +27,15 @@
 from bzrlib.plugins.svn import changes
 from bzrlib.plugins.svn.mapping import escape_svn_path
 
-def get_local_changes(paths, branch, mapping, generate_revid, 
+def get_local_changes(paths, branch, mapping, layout, generate_revid, 
                       get_children=None):
     """Obtain all of the changes relative to a particular path
     (usually a branch path).
 
     :param paths: Changes
     :param branch: Path under which to select changes
-    :parma mapping: Mapping to use to determine what are valid branch paths
+    :param mapping: Mapping to use to determine what are valid branch paths
+    :param layout: Layout to use 
     :param generate_revid: Function for generating revision id from svn revnum
     :param get_children: Function for obtaining the children of a path
     """
@@ -43,10 +44,10 @@
         if not changes.path_is_child(branch, p):
             continue
         data = paths[p]
-        new_p = mapping.scheme.unprefix(p)[1]
+        new_p = layout.parse(p)[3]
         if data[1] is not None:
             try:
-                (cbp, crp) = mapping.scheme.unprefix(data[1])
+                (pt, proj, cbp, crp) = layout.parse(data[1])
 
                 # Branch copy
                 if (crp == "" and new_p == ""):
@@ -120,6 +121,7 @@
         :param mapping: Mapping
         """
         changes = get_local_changes(global_changes, branch, mapping,
+                    self.repos.get_layout(),
                     self.repos.generate_revision_id, find_children)
         if find_children is not None:
             def get_children(path, revid):

=== modified file 'revids.py'
--- a/revids.py	2008-07-09 02:44:05 +0000
+++ b/revids.py	2008-07-23 00:37:07 +0000
@@ -64,7 +64,7 @@
 
         for entry_revid, branch, revno, mapping in self.discover_revids(layout, 0, self.repos.get_latest_revnum()):
             if revid == entry_revid:
-                return self.bisect_revid_revnum(revid, branch, revno)
+                return self.bisect_revid_revnum(revid, branch, 0, revno)
         raise NoSuchRevision(self, revid)
 
     def discover_revids(self, layout, from_revnum, to_revnum):
@@ -92,10 +92,10 @@
             for ((entry_revno, entry_revid), scheme) in revids:
                 yield (entry_revid, branch, revno, BzrSvnMappingv3FileProps(BranchingScheme.find_scheme(scheme)))
 
-    def bisect_revid_revnum(self, revid, branch_path, max_revnum):
+    def bisect_revid_revnum(self, revid, branch_path, min_revnum, max_revnum):
         # Find the branch property between min_revnum and max_revnum that 
         # added revid
-        for revmeta in self.repos.iter_reverse_branch_changes(branch_path, max_revnum):
+        for revmeta in self.repos.iter_reverse_branch_changes(branch_path, max_revnum, min_revnum):
             for propname, propvalue in revmeta.fileprops.items():
                 if not propname.startswith(SVN_PROP_BZR_REVISION_ID):
                     continue
@@ -185,7 +185,8 @@
             (branch_path, min_revnum, max_revnum, scheme) = self.cache.lookup_revid(revid)
             assert isinstance(branch_path, str)
 
-        return self.actual.bisect_revid_revnum(revid, branch_path, max_revnum)
+        return self.actual.bisect_revid_revnum(revid, branch_path, min_revnum,
+                                               max_revnum)
 
 
 class RevisionIdMapCache(CacheTable):




More information about the bazaar-commits mailing list