Rev 6446: Merge 2.5 into trunk in http://bazaar.launchpad.net/~vila/bzr/integration/

Vincent Ladeuil v.ladeuil+lp at free.fr
Thu Jan 26 09:38:45 UTC 2012


At http://bazaar.launchpad.net/~vila/bzr/integration/

------------------------------------------------------------
revno: 6446 [merge]
revision-id: v.ladeuil+lp at free.fr-20120126093844-ovxl7ghjr6mf2r89
parent: pqm at pqm.ubuntu.com-20120123194347-5002stbrf1s57jqk
parent: pqm at pqm.ubuntu.com-20120124102258-dz7syv2g62srmnpr
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: trunk
timestamp: Thu 2012-01-26 10:38:44 +0100
message:
  Merge 2.5 into trunk
modified:
  bzrlib/__init__.py             __init__.py-20050309040759-33e65acf91bbcd5d
  bzrlib/tests/per_repository/test_commit_builder.py test_commit_builder.py-20060606110838-76e3ra5slucqus81-1
-------------- next part --------------
=== modified file 'bzrlib/__init__.py'
--- a/bzrlib/__init__.py	2012-01-16 17:57:43 +0000
+++ b/bzrlib/__init__.py	2012-01-26 09:38:44 +0000
@@ -148,13 +148,10 @@
     """
     try:
         import ctypes
-    except ImportError:
-        return
-    pythonapi = getattr(ctypes, "pythonapi", None)
-    if pythonapi is None:
-        # Not CPython ctypes implementation
-        return
-    old_ptr = ctypes.c_void_p.in_dll(pythonapi, "Py_FileSystemDefaultEncoding")
+        old_ptr = ctypes.c_void_p.in_dll(ctypes.pythonapi,
+            "Py_FileSystemDefaultEncoding")
+    except (ImportError, ValueError):
+        return # No ctypes or not CPython implementation, do nothing
     new_ptr = ctypes.cast(ctypes.c_char_p(intern(new_enc)), ctypes.c_void_p)
     old_ptr.value = new_ptr.value
     if sys.getfilesystemencoding() != new_enc:

=== modified file 'bzrlib/tests/per_repository/test_commit_builder.py'
--- a/bzrlib/tests/per_repository/test_commit_builder.py	2011-12-22 16:17:28 +0000
+++ b/bzrlib/tests/per_repository/test_commit_builder.py	2012-01-23 01:57:07 +0000
@@ -284,6 +284,7 @@
             if not builder.supports_record_entry_contents:
                 raise tests.TestNotApplicable("CommitBuilder doesn't support "
                     "record_entry_contents")
+            builder.will_record_deletes()
             ie = inventory.make_entry('directory', '', None,
                     tree.get_root_id())
             delta, version_recorded, fs_hash = builder.record_entry_contents(
@@ -299,7 +300,7 @@
             if got_new_revision:
                 self.assertEqual(('', '', ie.file_id, ie), delta)
                 # The delta should be tracked
-                self.assertEqual(delta, builder._basis_delta[-1])
+                self.assertEqual(delta, builder.get_basis_delta()[-1])
             else:
                 self.assertEqual(None, delta)
             # Directories do not get hashed.
@@ -441,7 +442,7 @@
                 # the delta should be returned, and recorded in _basis_delta
                 delta = builder.record_delete("foo", "foo-id")
                 self.assertEqual(("foo", None, "foo-id", None), delta)
-                self.assertEqual(delta, builder._basis_delta[-1])
+                self.assertEqual(delta, builder.get_basis_delta()[-1])
                 builder.finish_inventory()
                 rev_id2 = builder.commit('delete foo')
             except:
@@ -463,13 +464,14 @@
         try:
             builder = tree.branch.get_commit_builder([rev_id])
             try:
+                builder.will_record_deletes()
                 delete_change = ('foo-id', ('foo', None), True, (True, False),
                     (tree.path2id(''), None), ('foo', None), ('file', None),
                     (False, None))
                 list(builder.record_iter_changes(tree, rev_id,
                     [delete_change]))
                 self.assertEqual(("foo", None, "foo-id", None),
-                    builder._basis_delta[0])
+                    builder.get_basis_delta()[0])
                 self.assertTrue(builder.any_changes())
                 builder.finish_inventory()
                 rev_id2 = builder.commit('delete foo')
@@ -866,6 +868,7 @@
                 if not builder.supports_record_entry_contents:
                     raise tests.TestNotApplicable("CommitBuilder doesn't "
                         "support record_entry_contents")
+                builder.will_record_deletes()
                 parent_tree = tree.basis_tree()
                 parent_tree.lock_read()
                 self.addCleanup(parent_tree.unlock)
@@ -913,7 +916,8 @@
                 if delta_against_basis:
                     expected_delta = (name, new_name, file_id, new_entry)
                     # The delta should be recorded
-                    self.assertEqual(expected_delta, builder._basis_delta[-1])
+                    self.assertEqual(expected_delta,
+                        builder.get_basis_delta()[-1])
                 else:
                     expected_delta = None
                 self.assertEqual(expected_delta, delta)
@@ -954,6 +958,7 @@
             # record_entry_contents.
             parent_ids = tree.get_parent_ids()
             builder = tree.branch.get_commit_builder(parent_ids)
+            builder.will_record_deletes()
             parent_tree = tree.basis_tree()
             parent_tree.lock_read()
             self.addCleanup(parent_tree.unlock)
@@ -975,15 +980,6 @@
                 self.assertEqualStat(result[2][1], tree_file_stat[1])
             else:
                 self.assertEqual([], result)
-            delta = builder._basis_delta
-            delta_dict = dict((change[2], change) for change in delta)
-            version_recorded = (file_id in delta_dict and
-                delta_dict[file_id][3] is not None and
-                delta_dict[file_id][3].revision == builder._new_revision_id)
-            if records_version:
-                self.assertTrue(version_recorded)
-            else:
-                self.assertFalse(version_recorded)
             self.assertIs(None, builder.new_inventory)
             builder.finish_inventory()
             if tree.branch.repository._format.supports_full_versioned_files:
@@ -993,6 +989,16 @@
                 self.assertEqual(inv_sha1, builder.inv_sha1)
             self.assertIs(None, builder.new_inventory)
             rev2 = builder.commit('')
+            delta = builder.get_basis_delta()
+            delta_dict = dict((change[2], change) for change in delta)
+            version_recorded = (file_id in delta_dict and
+                delta_dict[file_id][3] is not None and
+                delta_dict[file_id][3].revision == rev2)
+            if records_version:
+                self.assertTrue(version_recorded)
+            else:
+                self.assertFalse(version_recorded)
+
             new_inventory = builder.revision_tree().inventory
             new_entry = new_inventory[file_id]
             if delta_against_basis:



More information about the bazaar-commits mailing list