Rev 3053: (bug #172970) Switch revision.is_ancestor to use a graph search in http://bzr.arbash-meinel.com/branches/bzr/0.93-dev/is_ancestor_fix

John Arbash Meinel john at arbash-meinel.com
Fri Nov 30 03:30:04 GMT 2007


At http://bzr.arbash-meinel.com/branches/bzr/0.93-dev/is_ancestor_fix

------------------------------------------------------------
revno: 3053
revision-id:john at arbash-meinel.com-20071130032923-optbqgq8xxmkplvx
parent: pqm at pqm.ubuntu.com-20071129184101-u9506rihe4zbzyyz
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: is_ancestor_fix
timestamp: Thu 2007-11-29 21:29:23 -0600
message:
  (bug #172970) Switch revision.is_ancestor to use a graph search
  rather than grabing the ancestry and doing a membership test.
modified:
  bzrlib/revision.py             revision.py-20050309040759-e77802c08f3999d5
-------------- next part --------------
=== modified file 'bzrlib/revision.py'
--- a/bzrlib/revision.py	2007-11-21 15:10:44 +0000
+++ b/bzrlib/revision.py	2007-11-30 03:29:23 +0000
@@ -125,6 +125,7 @@
         return self.properties.get('author', self.committer)
 
 
+ at deprecated_function(symbol_versioning.zero_ninetythree)
 def is_ancestor(revision_id, candidate_id, branch):
     """Return true if candidate_id is an ancestor of revision_id.
 
@@ -136,8 +137,7 @@
     """
     if is_null(candidate_id):
         return True
-    return (candidate_id in branch.repository.get_ancestry(revision_id,
-            topo_sorted=False))
+    return branch.repository.get_graph().is_ancestor(candidate_id, revision_id)
 
 
 def iter_ancestors(revision_id, revision_source, only_present=False):



More information about the bazaar-commits mailing list