Rev 1626: Provide information about custom revprops to mappings. in http://people.samba.org/bzr/jelmer/bzr-svn/trunk
Jelmer Vernooij
jelmer at samba.org
Sat Aug 23 22:41:59 BST 2008
At http://people.samba.org/bzr/jelmer/bzr-svn/trunk
------------------------------------------------------------
revno: 1626
revision-id: jelmer at samba.org-20080823214157-0qjr3cwu8r03likr
parent: jelmer at samba.org-20080823211940-o396sas9io7qq3be
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: 0.4
timestamp: Sat 2008-08-23 23:41:57 +0200
message:
Provide information about custom revprops to mappings.
modified:
commit.py commit.py-20060607190346-qvq128wgfubhhgm2-1
mapping.py mapping.py-20080128201303-6cp01phc0dmc0kiv-1
mapping3/__init__.py __init__.py-20080502174630-9324zh25kka98vlw-1
tests/test_mapping.py test_mapping.py-20080201131338-0zd86eznn4bojtee-1
=== modified file 'commit.py'
--- a/commit.py 2008-08-23 20:18:49 +0000
+++ b/commit.py 2008-08-23 21:41:57 +0000
@@ -184,7 +184,10 @@
base_branch_props = {}
else:
base_branch_props = lazy_dict({}, self.repository.branchprop_list.get_properties, self.base_path, self.base_revnum)
- (self._svn_revprops, self._svnprops) = self.base_mapping.export_revision(self.branch.get_branch_path(), timestamp, timezone, committer, revprops, revision_id, self.base_revno+1, merges, base_branch_props)
+ self.supports_custom_revprops = self.repository.transport.has_capability("commit-revprops")
+ (self._svn_revprops, self._svnprops) = self.base_mapping.export_revision(self.supports_custom_revprops,
+ self.branch.get_branch_path(), timestamp, timezone, committer, revprops,
+ revision_id, self.base_revno+1, merges, base_branch_props)
if len(merges) > 0:
new_svk_merges = update_svk_features(base_branch_props.get(SVN_PROP_SVK_MERGE, ""), merges)
@@ -463,10 +466,13 @@
text_parents[path] = revid
mutter('in %r: overriding text revid for %r -> %r' % (self._new_revision_id, path, revid))
- self.base_mapping.export_text_parents(text_parents, self._svn_revprops, self._svnprops)
- self.base_mapping.export_fileid_map(fileids, self._svn_revprops, self._svnprops)
+ self.base_mapping.export_text_parents(self.supports_custom_revprops, text_parents,
+ self._svn_revprops, self._svnprops)
+ self.base_mapping.export_fileid_map(self.supports_custom_revprops, fileids,
+ self._svn_revprops, self._svnprops)
if self._config.get_log_strip_trailing_newline():
- self.base_mapping.export_message(message, self._svn_revprops, self._svnprops)
+ self.base_mapping.export_message(self.supports_custom_revprops, message,
+ self._svn_revprops, self._svnprops)
message = message.rstrip("\n")
if not self.push_metadata:
self._svn_revprops = {}
@@ -479,7 +485,7 @@
for prop in self._svn_revprops:
if not properties.is_valid_property_name(prop):
warning("Setting property %r with invalid characters in name", prop)
- if self.repository.transport.has_capability("commit-revprops"):
+ if self.supports_custom_revprops:
self.editor = self.repository.transport.get_commit_editor(
self._svn_revprops, done, None, False)
self._svn_revprops = {}
=== modified file 'mapping.py'
--- a/mapping.py 2008-08-23 14:55:24 +0000
+++ b/mapping.py 2008-08-23 21:41:57 +0000
@@ -357,7 +357,7 @@
"""
raise NotImplementedError(self.import_fileid_map)
- def export_fileid_map(self, fileids, revprops, fileprops):
+ def export_fileid_map(self, can_use_custom_revprops, fileids, revprops, fileprops):
"""Adjust the properties for a file id map.
:param fileids: Dictionary
@@ -374,7 +374,7 @@
"""
raise NotImplementedError(self.import_text_parents)
- def export_text_parents(self, text_parents, revprops, fileprops):
+ def export_text_parents(self, can_use_custom_revprops, text_parents, revprops, fileprops):
"""Store a text parent map.
:param text_parents: Text parent map
@@ -383,14 +383,14 @@
"""
raise NotImplementedError(self.export_text_parents)
- def export_revision(self, branch_root, timestamp, timezone, committer, revprops,
+ def export_revision(self, can_use_custom_revprops, branch_root, timestamp, timezone, committer, revprops,
revision_id, revno, merges, fileprops):
"""Determines the revision properties and branch root file
properties.
"""
raise NotImplementedError(self.export_revision)
- def export_message(self, log, revprops, fileprops):
+ def export_message(self, can_use_custom_revprops, log, revprops, fileprops):
raise NotImplementedError(self.export_message)
def get_revision_id(self, branch_path, revprops, fileprops):
@@ -494,7 +494,7 @@
return {}
return parse_text_parents_property(metadata)
- def export_text_parents(self, text_parents, svn_revprops, fileprops):
+ def export_text_parents(self, can_use_custom_revprops, text_parents, svn_revprops, fileprops):
if text_parents != {}:
fileprops[SVN_PROP_BZR_TEXT_PARENTS] = generate_text_parents_property(text_parents)
else:
@@ -530,7 +530,7 @@
return svnprops
- def export_revision(self, branch_root, timestamp, timezone, committer, revprops, revision_id, revno, merges, old_fileprops):
+ def export_revision(self, can_use_custom_revprops, branch_root, timestamp, timezone, committer, revprops, revision_id, revno, merges, old_fileprops):
# Keep track of what Subversion properties to set later on
fileprops = {}
@@ -567,7 +567,7 @@
mutter(str(e))
return (None, None)
- def export_fileid_map(self, fileids, revprops, fileprops):
+ def export_fileid_map(self, can_use_custom_revprops, fileids, revprops, fileprops):
if fileids != {}:
file_id_text = generate_fileid_property(fileids)
fileprops[SVN_PROP_BZR_FILEIDS] = file_id_text
@@ -595,7 +595,7 @@
return {}
return parse_text_parents_property(svn_revprops[SVN_REVPROP_BZR_TEXT_PARENTS])
- def export_text_parents(self, text_parents, svn_revprops, fileprops):
+ def export_text_parents(self, can_use_custom_revprops, text_parents, svn_revprops, fileprops):
svn_revprops[SVN_REVPROP_BZR_TEXT_PARENTS] = generate_text_parents_property(text_parents)
def get_rhs_parents(self, branch_path, svn_revprops,
@@ -616,10 +616,10 @@
return (revno, revid)
return (None, None)
- def export_message(self, message, revprops, fileprops):
+ def export_message(self, can_use_custom_revprops, message, revprops, fileprops):
revprops[SVN_REVPROP_BZR_LOG] = message.encode("utf-8")
- def export_revision(self, branch_root, timestamp, timezone, committer,
+ def export_revision(self, can_use_custom_revprops, branch_root, timestamp, timezone, committer,
revprops, revision_id, revno, merges,
fileprops):
svn_revprops = {SVN_REVPROP_BZR_MAPPING_VERSION: str(MAPPING_VERSION)}
@@ -645,7 +645,7 @@
return (svn_revprops, {})
- def export_fileid_map(self, fileids, revprops, fileprops):
+ def export_fileid_map(self, can_use_custom_revprops, fileids, revprops, fileprops):
revprops[SVN_REVPROP_BZR_FILEIDS] = generate_fileid_property(fileids)
def get_rhs_ancestors(self, branch_path, revprops, fileprops):
=== modified file 'mapping3/__init__.py'
--- a/mapping3/__init__.py 2008-08-22 20:41:03 +0000
+++ b/mapping3/__init__.py 2008-08-23 21:41:57 +0000
@@ -368,21 +368,21 @@
else:
return self.fileprops.import_fileid_map(svn_revprops, fileprops)
- def export_revision(self, branch_root, timestamp, timezone, committer, revprops, revision_id,
+ def export_revision(self, can_use_custom_revprops, branch_root, timestamp, timezone, committer, revprops, revision_id,
revno, merges, fileprops):
- (_, fileprops) = self.fileprops.export_revision(branch_root, timestamp, timezone, committer,
+ (_, fileprops) = self.fileprops.export_revision(can_use_custom_revprops, branch_root, timestamp, timezone, committer,
revprops, revision_id, revno, merges, fileprops)
- (revprops, _) = self.revprops.export_revision(branch_root, timestamp, timezone, committer,
+ (revprops, _) = self.revprops.export_revision(can_use_custom_revprops, branch_root, timestamp, timezone, committer,
revprops, revision_id, revno, merges, fileprops)
return (revprops, fileprops)
- def export_fileid_map(self, fileids, revprops, fileprops):
- self.fileprops.export_fileid_map(fileids, revprops, fileprops)
- self.revprops.export_fileid_map(fileids, revprops, fileprops)
+ def export_fileid_map(self, can_use_custom_revprops, fileids, revprops, fileprops):
+ self.fileprops.export_fileid_map(can_use_custom_revprops, fileids, revprops, fileprops)
+ self.revprops.export_fileid_map(can_use_custom_revprops, fileids, revprops, fileprops)
- def export_text_parents(self, text_parents, revprops, fileprops):
- self.fileprops.export_text_parents(text_parents, revprops, fileprops)
- self.revprops.export_text_parents(text_parents, revprops, fileprops)
+ def export_text_parents(self, can_use_custom_revprops, text_parents, revprops, fileprops):
+ self.fileprops.export_text_parents(can_use_custom_revprops, text_parents, revprops, fileprops)
+ self.revprops.export_text_parents(can_use_custom_revprops, text_parents, revprops, fileprops)
def import_revision(self, svn_revprops, fileprops, uuid, branch, revnum, rev):
self.fileprops.import_revision(svn_revprops, fileprops, uuid, branch, revnum, rev)
=== modified file 'tests/test_mapping.py'
--- a/tests/test_mapping.py 2008-08-23 17:55:26 +0000
+++ b/tests/test_mapping.py 2008-08-23 21:41:57 +0000
@@ -155,7 +155,7 @@
revprops = {}
fileprops = {}
fileids = {"": "some-id", "bla/blie": "other-id"}
- self.mapping.export_fileid_map(fileids, revprops, fileprops)
+ self.mapping.export_fileid_map(True, fileids, revprops, fileprops)
revprops["svn:date"] = "2008-11-03T09:33:00.716938Z"
self.assertEquals(fileids,
self.mapping.import_fileid_map(revprops, fileprops))
@@ -166,18 +166,18 @@
revprops = {}
fileprops = {}
text_parents = {"bla": "bloe", "ll": "12"}
- self.mapping.export_text_parents(text_parents, revprops, fileprops)
+ self.mapping.export_text_parents(True, text_parents, revprops, fileprops)
self.assertEquals(text_parents,
self.mapping.import_text_parents(revprops, fileprops))
def test_message(self):
if not self.mapping.supports_roundtripping():
raise TestNotApplicable
- (revprops, fileprops) = self.mapping.export_revision("branchp", 432432432.0, 0, "somebody",
+ (revprops, fileprops) = self.mapping.export_revision(True, "branchp", 432432432.0, 0, "somebody",
{"arevprop": "val"}, "arevid", 4, ["merge1"], dict())
revprops["svn:date"] = "2008-11-03T09:33:00.716938Z"
try:
- self.mapping.export_message("My Commit message", revprops, fileprops)
+ self.mapping.export_message(True, "My Commit message", revprops, fileprops)
except NotImplementedError:
raise TestNotApplicable
targetrev = Revision(None)
@@ -187,7 +187,7 @@
def test_revision(self):
if not self.mapping.supports_roundtripping():
raise TestNotApplicable
- (revprops, fileprops) = self.mapping.export_revision("branchp", 432432432.0, 0, "somebody",
+ (revprops, fileprops) = self.mapping.export_revision(True, "branchp", 432432432.0, 0, "somebody",
{"arevprop": "val" }, "arevid", 4, ["merge1"], dict())
targetrev = Revision(None)
revprops["svn:date"] = "2008-11-03T09:33:00.716938Z"
@@ -200,7 +200,7 @@
def test_revision_id(self):
if not self.mapping.supports_roundtripping():
raise TestNotApplicable
- (revprops, fileprops) = self.mapping.export_revision("branchp", 432432432.0, 0, "somebody", {}, "arevid", 4, ["merge1"], dict())
+ (revprops, fileprops) = self.mapping.export_revision(True, "branchp", 432432432.0, 0, "somebody", {}, "arevid", 4, ["merge1"], dict())
self.assertEquals((4, "arevid"), self.mapping.get_revision_id("branchp", revprops, fileprops))
def test_revision_id_none(self):
More information about the bazaar-commits
mailing list