Rev 2161: Make get_appropriate_mapping return the lhs parent mapping too. in http://people.samba.org/bzr/jelmer/bzr-svn/0.5
Jelmer Vernooij
jelmer at samba.org
Fri Dec 5 01:40:23 GMT 2008
At http://people.samba.org/bzr/jelmer/bzr-svn/0.5
------------------------------------------------------------
revno: 2161
revision-id: jelmer at samba.org-20081205014020-p0t575z6c6ev97go
parent: jelmer at samba.org-20081205013953-1kfjtht4omoucia5
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: 0.5
timestamp: Fri 2008-12-05 02:40:20 +0100
message:
Make get_appropriate_mapping return the lhs parent mapping too.
modified:
branch.py svnbranch.py-20051017135706-11c749eb0dab04a7
fetch.py fetch.py-20060625004942-x2lfaib8ra707a8p-1
revmeta.py revmeta.py-20080901215045-n8a6arqybs9ez5hl-1
=== modified file 'branch.py'
--- a/branch.py 2008-12-04 15:07:45 +0000
+++ b/branch.py 2008-12-05 01:40:20 +0000
@@ -324,6 +324,7 @@
if is_null(revision_id):
return 0
revmeta_history = self._revision_meta_history()
+ # FIXME: Maybe we can parse revision_id as a bzr-svn roundtripped revision?
for revmeta in revmeta_history:
if revmeta.get_revision_id(self.mapping) == revision_id:
return len(revmeta_history) - revmeta_history.index(revmeta) - revmeta.get_hidden_lhs_ancestors_count(self.mapping)
=== modified file 'fetch.py'
--- a/fetch.py 2008-12-04 21:05:07 +0000
+++ b/fetch.py 2008-12-05 01:40:20 +0000
@@ -705,7 +705,7 @@
for i, revmeta in enumerate(iter):
if pb is not None:
pb.update("checking revisions to fetch", i)
- #FIXME: mapping = revmeta.get_appropriate_mapping(mapping)
+ #FIXME: (mapping, lhs_parent_mapping) = revmeta.get_appropriate_mapping(mapping)
if self.needs_fetching(revmeta, mapping):
needed.appendleft((revmeta, mapping))
self.checked.add((revmeta.get_foreign_revid(), mapping))
@@ -742,7 +742,7 @@
if pb:
pb.update("determining revisions to fetch",
revnum-revmeta.revnum, revnum)
- mapping = revmeta.get_appropriate_mapping(mapping)
+ mapping, lhs_parent_mapping = revmeta.get_appropriate_mapping(mapping)
if (revmeta.get_foreign_revid(), mapping) in self.checked:
# This revision (and its ancestry) has already been checked
break
@@ -750,14 +750,15 @@
revmetas.appendleft((revmeta, mapping))
for p in revmeta.get_rhs_parents(mapping):
try:
- foreign_revid, mapping = self.source.lookup_revision_id(p, project=project)
+ foreign_revid, rhs_mapping = self.source.lookup_revision_id(p, project=project)
except NoSuchRevision:
pass # Ghost
else:
- extra.append((foreign_revid, project, mapping))
+ extra.append((foreign_revid, project, rhs_mapping))
elif not find_ghosts:
break
self.checked.add((revmeta.get_foreign_revid(), mapping))
+ mapping = lhs_parent_mapping
return revmetas
needed = check_revid(foreign_revid, mapping, project)
=== modified file 'revmeta.py'
--- a/revmeta.py 2008-12-04 20:06:09 +0000
+++ b/revmeta.py 2008-12-05 01:40:20 +0000
@@ -299,16 +299,18 @@
nm = get_next_parent(nm)
return nm
- def get_appropriate_mapping(self, newest_allowed):
+ def get_appropriate_mappings(self, newest_allowed):
"""Find the mapping that's most appropriate for this revision,
taking into account that it shouldn't be newer than 'max_mapping'.
+ :return: Tuple with mapping for current revmeta and mapping for
+ lhs parent revmeta
"""
original = self.get_original_mapping()
if original is not None:
# TODO: Make sure original <= newest_allowed
- return original
- return newest_allowed
+ return (original, original)
+ return (newest_allowed, newest_allowed)
def get_original_mapping(self):
"""Find the original mapping that was used to store this revision
More information about the bazaar-commits
mailing list