Rev 2268: Track through the new Branch6 code, and make sure revision ids are utf8 in http://bzr.arbash-meinel.com/branches/bzr/0.15-dev/knit_utf8_revision_ids

John Arbash Meinel john at arbash-meinel.com
Sat Feb 17 02:33:53 GMT 2007


At http://bzr.arbash-meinel.com/branches/bzr/0.15-dev/knit_utf8_revision_ids

------------------------------------------------------------
revno: 2268
revision-id: john at arbash-meinel.com-20070217023345-vhrz7igv9q7kd762
parent: john at arbash-meinel.com-20070217020241-cy6wl3oa17mvnvax
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: knit_utf8_revision_ids
timestamp: Fri 2007-02-16 20:33:45 -0600
message:
  Track through the new Branch6 code, and make sure revision ids are utf8
modified:
  bzrlib/branch.py               branch.py-20050309040759-e4baf4e0d046576e
  bzrlib/tests/branch_implementations/test_branch.py testbranch.py-20050711070244-121d632bc37d7253
-------------- next part --------------
=== modified file 'bzrlib/branch.py'
--- a/bzrlib/branch.py	2007-02-17 01:42:57 +0000
+++ b/bzrlib/branch.py	2007-02-17 02:33:45 +0000
@@ -1247,6 +1247,7 @@
     @needs_write_lock
     def append_revision(self, *revision_ids):
         """See Branch.append_revision."""
+        revision_ids = [osutils.safe_revision_id(r) for r in revision_ids]
         for revision_id in revision_ids:
             _mod_revision.check_not_reserved_id(revision_id)
             mutter("add {%s} to revision-history" % revision_id)
@@ -1285,6 +1286,7 @@
 
     @needs_write_lock
     def set_last_revision_info(self, revno, revision_id):
+        revision_id = osutils.safe_revision_id(revision_id)
         history = self._lefthand_history(revision_id)
         assert len(history) == revno, '%d != %d' % (len(history), revno)
         self.set_revision_history(history)
@@ -1697,8 +1699,9 @@
 
     @needs_read_lock
     def last_revision_info(self):
-        revision_string = self.control_files.get_utf8('last-revision').read()
+        revision_string = self.control_files.get('last-revision').read()
         revno, revision_id = revision_string.rstrip('\n').split(' ', 1)
+        revision_id = cache_utf8.get_cached_utf8(revision_id)
         revno = int(revno)
         return revno, revision_id
 
@@ -1725,6 +1728,7 @@
 
     @needs_write_lock
     def set_last_revision_info(self, revno, revision_id):
+        revision_id = osutils.safe_revision_id(revision_id)
         if self._get_append_revisions_only():
             self._check_history_violation(revision_id)
         self._write_last_revision_info(revno, revision_id)
@@ -1766,6 +1770,7 @@
 
     @needs_write_lock
     def append_revision(self, *revision_ids):
+        revision_ids = [osutils.safe_revision_id(r) for r in revision_ids]
         if len(revision_ids) == 0:
             return
         prev_revno, prev_revision = self.last_revision_info()

=== modified file 'bzrlib/tests/branch_implementations/test_branch.py'
--- a/bzrlib/tests/branch_implementations/test_branch.py	2007-02-17 01:42:57 +0000
+++ b/bzrlib/tests/branch_implementations/test_branch.py	2007-02-17 02:33:45 +0000
@@ -111,6 +111,10 @@
         last = br.last_revision()
         self.assertEqual('rev3', last)
         self.assertIsInstance(last, str)
+        revno, last = br.last_revision_info()
+        self.assertEqual(3, revno)
+        self.assertEqual('rev3', last)
+        self.assertIsInstance(last, str)
 
     def test_fetch_revisions(self):
         """Test fetch-revision operation."""



More information about the bazaar-commits mailing list