John Arbash Meinel, Stefan Metzmacher, Andrew Mitchell, Gustavo Niemeyer,
Martin Pool, Garrett Rooney, Johan Rydberg, Peter Samuelson, Mark Shuttleworth,
Adeodato Simó, Mikhail Sobolev and Reinhard Tartler for comments, code reviews,
-funding, bug reports, testing, committing patches/bundles and generally keeping up
-while I was asking annoying questions.
+funding, bug reports, testing, committing patches/bundles and generally keeping
+up while I was asking annoying questions.
SVN_PROP_SVK_MERGE, SVN_PROP_BZR_REVISION_INFO,
SVN_PROP_BZR_REVISION_ID, revision_id_to_svk_feature,
generate_revision_metadata, SvnRepositoryFormat,
- SvnRepository)
+ SvnRepository,
+ SVN_REVPROP_BZR_COMMITTER, SVN_REVPROP_BZR_FILEIDS,
+ SVN_REVPROP_BZR_MERGE, SVN_REVPROP_BZR_REVISION_ID,
+ SVN_REVPROP_BZR_REVPROP_PREFIX, SVN_REVPROP_BZR_ROOT,
+ SVN_REVPROP_BZR_TIMESTAMP, SVN_REVPROP_BZR_TIMEZONE)
import urllib
timestamp, timezone, committer, revprops)
self._svnprops[SVN_PROP_BZR_FILEIDS] = ""
+ self._svn_revprops = {
+ SVN_REVPROP_BZR_FILEIDS: "",
+ SVN_REVPROP_BZR_TIMESTAMP: timestamp,
+ SVN_REVPROP_BZR_TIMEZONE: timezone,
+ SVN_REVPROP_BZR_COMMITTER: committer
+ }
+
+ for name, value in revprops.items():
+ self._svn_revprops[SVN_REVPROP_BZR_REVPROP_PREFIX+name] = value
+
# Gather information about revision on top of which the commit is
# happening
if parents == []:
self._svnprops[SVN_PROP_BZR_REVISION_ID+str(self.base_scheme)] = \
old + "%d %s\n" % (self.base_revno+1, revid)
+ self._svn_revprops[SVN_REVPROP_BZR_REVISION_ID] = revid
def _record_merges(self, merges):
"""Store the extra merges (non-LHS parents) in a file property.
if new != "":
self._svnprops[SVN_PROP_SVK_MERGE] = old + new
+
+ self._svn_revprops[SVN_REVPROP_BZR_MERGE] = "".join(map(lambda x: x + "\n", merges))
def _generate_revision_if_needed(self):
"""See CommitBuilder._generate_revision_if_needed()."""
self.date = date
self.author = author
+ self._svn_revprops[SVN_REVPROP_BZR_ROOT] = self.branch.get_branch_path()
bp_parts = self.branch.get_branch_path().split("/")
repository_latest_revnum = self.repository.transport.get_latest_revnum()
lock = self.repository.transport.lock_write(".")
existing_bp_parts = _check_dirs_exist(self.repository.transport,
bp_parts, -1)
self.revnum = None
- self.editor = self.repository.transport.get_commit_editor(
- {svn.core.SVN_PROP_REVISION_LOG: message.encode("utf-8")},
+ self._svn_revprops[svn.core.SVN_PROP_REVISION_LOG] = message.encode("utf-8")
+ self.editor = self.repository.transport.get_commit_editor(self._svn_revprops,
done, None, False)
root = self.editor.open_root(self.base_revnum)
SVN_REVPROP_BZR_REVISION_ID = 'bzr:revision-id'
SVN_REVPROP_BZR_REVPROP_PREFIX = 'bzr:revprop:'
SVN_REVPROP_BZR_ROOT = 'bzr:root'
-SVN_REVPROP_BZR_SCHEME = 'bzr:scheme'
SVN_REVPROP_BZR_SIGNATURE = 'bzr:gpg-signature'
+SVN_REVPROP_BZR_TIMESTAMP = 'bzr:timestamp'
+SVN_REVPROP_BZR_TIMEZONE = 'bzr:timezone'
# The following two functions don't use day names (which can vary by
# locale) unlike the alternatives in bzrlib.timestamp