Rev 6029: (vila) Remove deprecated stuff in bzrlib.log (Vincent Ladeuil) in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Fri Jul 15 15:08:58 UTC 2011


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 6029 [merge]
revision-id: pqm at pqm.ubuntu.com-20110715150852-zin0b58lmxzw0ym6
parent: pqm at pqm.ubuntu.com-20110715141321-v1p6z768o2iqv9by
parent: v.ladeuil+lp at free.fr-20110715135945-6s7lx06c3mg7a523
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Fri 2011-07-15 15:08:52 +0000
message:
  (vila) Remove deprecated stuff in bzrlib.log (Vincent Ladeuil)
modified:
  bzrlib/atomicfile.py           atomicfile.py-20050509044450-dbd24e6c564f7c66
  bzrlib/log.py                  log.py-20050505065812-c40ce11702fe5fb1
  bzrlib/tests/test_atomicfile.py test_atomicfile.py-20060809005022-s7psq6himv0hpm3v-1
  bzrlib/tests/test_log.py       testlog.py-20050728115707-1a514809d7d49309
  doc/en/release-notes/bzr-2.5.txt bzr2.5.txt-20110708125756-587p0hpw7oke4h05-1
=== modified file 'bzrlib/atomicfile.py'
--- a/bzrlib/atomicfile.py	2011-06-28 21:47:24 +0000
+++ b/bzrlib/atomicfile.py	2011-07-15 09:04:54 +0000
@@ -80,13 +80,6 @@
             if stat.S_IMODE(st.st_mode) != new_mode:
                 os.chmod(self.tmpfilename, new_mode)
 
-    def _get_closed(self):
-        symbol_versioning.warn('AtomicFile.closed deprecated in bzr 0.10',
-                               DeprecationWarning, stacklevel=2)
-        return self._fd is None
-
-    closed = property(_get_closed)
-
     def __repr__(self):
         return '%s(%r)' % (self.__class__.__name__,
                            self.realfilename)

=== modified file 'bzrlib/log.py'
--- a/bzrlib/log.py	2011-07-12 11:09:57 +0000
+++ b/bzrlib/log.py	2011-07-15 13:52:32 +0000
@@ -89,10 +89,6 @@
     get_terminal_encoding,
     terminal_width,
     )
-from bzrlib.symbol_versioning import (
-    deprecated_function,
-    deprecated_in,
-    )
 
 
 def find_touching_revisions(branch, file_id):
@@ -292,7 +288,6 @@
       the empty string to match any of the preceding properties. 
       
     """
-    
     # Take care of old style message_search parameter
     if message_search:
         if match:
@@ -302,7 +297,6 @@
                 match['message'] = [message_search]
         else:
             match={ 'message': [message_search] }
-        
     return {
         'direction': direction,
         'specific_fileids': specific_fileids,
@@ -803,25 +797,6 @@
             yield rev_id, '.'.join(map(str, revno)), merge_depth
 
 
- at deprecated_function(deprecated_in((2, 2, 0)))
-def calculate_view_revisions(branch, start_revision, end_revision, direction,
-        specific_fileid, generate_merge_revisions):
-    """Calculate the revisions to view.
-
-    :return: An iterator of (revision_id, dotted_revno, merge_depth) tuples OR
-             a list of the same tuples.
-    """
-    start_rev_id, end_rev_id = _get_revision_limits(branch, start_revision,
-        end_revision)
-    view_revisions = list(_calc_view_revisions(branch, start_rev_id, end_rev_id,
-        direction, generate_merge_revisions or specific_fileid))
-    if specific_fileid:
-        view_revisions = _filter_revisions_touching_file_id(branch,
-            specific_fileid, view_revisions,
-            include_merges=generate_merge_revisions)
-    return _rebase_merge_depth(view_revisions)
-
-
 def _rebase_merge_depth(view_revisions):
     """Adjust depths upwards so the top level is 0."""
     # If either the first or last revision have a merge_depth of 0, we're done
@@ -887,7 +862,7 @@
     """
     if match is None:
         return log_rev_iterator
-    searchRE = [(k, [re.compile(x, re.IGNORECASE) for x in v]) 
+    searchRE = [(k, [re.compile(x, re.IGNORECASE) for x in v])
                 for (k,v) in match.iteritems()]
     return _filter_re(searchRE, log_rev_iterator)
 
@@ -905,9 +880,8 @@
                'author': (rev.get_apparent_authors()),
                'bugs': list(rev.iter_bugs())
                }
-    strings[''] = [item for inner_list in strings.itervalues() 
+    strings[''] = [item for inner_list in strings.itervalues()
                    for item in inner_list]
-    
     for (k,v) in searchRE:
         if k in strings and not _match_any_filter(strings[k], v):
             return False
@@ -1184,50 +1158,6 @@
     return mainline_revs, rev_nos, start_rev_id, end_rev_id
 
 
- at deprecated_function(deprecated_in((2, 2, 0)))
-def _filter_revision_range(view_revisions, start_rev_id, end_rev_id):
-    """Filter view_revisions based on revision ranges.
-
-    :param view_revisions: A list of (revision_id, dotted_revno, merge_depth)
-            tuples to be filtered.
-
-    :param start_rev_id: If not NONE specifies the first revision to be logged.
-            If NONE then all revisions up to the end_rev_id are logged.
-
-    :param end_rev_id: If not NONE specifies the last revision to be logged.
-            If NONE then all revisions up to the end of the log are logged.
-
-    :return: The filtered view_revisions.
-    """
-    if start_rev_id or end_rev_id:
-        revision_ids = [r for r, n, d in view_revisions]
-        if start_rev_id:
-            start_index = revision_ids.index(start_rev_id)
-        else:
-            start_index = 0
-        if start_rev_id == end_rev_id:
-            end_index = start_index
-        else:
-            if end_rev_id:
-                end_index = revision_ids.index(end_rev_id)
-            else:
-                end_index = len(view_revisions) - 1
-        # To include the revisions merged into the last revision,
-        # extend end_rev_id down to, but not including, the next rev
-        # with the same or lesser merge_depth
-        end_merge_depth = view_revisions[end_index][2]
-        try:
-            for index in xrange(end_index+1, len(view_revisions)+1):
-                if view_revisions[index][2] <= end_merge_depth:
-                    end_index = index - 1
-                    break
-        except IndexError:
-            # if the search falls off the end then log to the end as well
-            end_index = len(view_revisions) - 1
-        view_revisions = view_revisions[start_index:end_index+1]
-    return view_revisions
-
-
 def _filter_revisions_touching_file_id(branch, file_id, view_revisions,
     include_merges=True):
     r"""Return the list of revision ids which touch a given file id.
@@ -1312,47 +1242,6 @@
     return result
 
 
- at deprecated_function(deprecated_in((2, 2, 0)))
-def get_view_revisions(mainline_revs, rev_nos, branch, direction,
-                       include_merges=True):
-    """Produce an iterator of revisions to show
-    :return: an iterator of (revision_id, revno, merge_depth)
-    (if there is no revno for a revision, None is supplied)
-    """
-    if not include_merges:
-        revision_ids = mainline_revs[1:]
-        if direction == 'reverse':
-            revision_ids.reverse()
-        for revision_id in revision_ids:
-            yield revision_id, str(rev_nos[revision_id]), 0
-        return
-    graph = branch.repository.get_graph()
-    # This asks for all mainline revisions, which means we only have to spider
-    # sideways, rather than depth history. That said, its still size-of-history
-    # and should be addressed.
-    # mainline_revisions always includes an extra revision at the beginning, so
-    # don't request it.
-    parent_map = dict(((key, value) for key, value in
-        graph.iter_ancestry(mainline_revs[1:]) if value is not None))
-    # filter out ghosts; merge_sort errors on ghosts.
-    rev_graph = _mod_repository._strip_NULL_ghosts(parent_map)
-    merge_sorted_revisions = tsort.merge_sort(
-        rev_graph,
-        mainline_revs[-1],
-        mainline_revs,
-        generate_revno=True)
-
-    if direction == 'forward':
-        # forward means oldest first.
-        merge_sorted_revisions = reverse_by_depth(merge_sorted_revisions)
-    elif direction != 'reverse':
-        raise ValueError('invalid direction %r' % direction)
-
-    for (sequence, rev_id, merge_depth, revno, end_of_merge
-         ) in merge_sorted_revisions:
-        yield rev_id, '.'.join(map(str, revno)), merge_depth
-
-
 def reverse_by_depth(merge_sorted_revisions, _depth=0):
     """Reverse revisions by depth.
 
@@ -1956,12 +1845,6 @@
                               'The committer')
 
 
-def show_one_log(revno, rev, delta, verbose, to_file, show_timezone):
-    # deprecated; for compatibility
-    lf = LongLogFormatter(to_file=to_file, show_timezone=show_timezone)
-    lf.show(revno, rev, delta)
-
-
 def show_changed_revisions(branch, old_rh, new_rh, to_file=None,
                            log_format='long'):
     """Show the change in revision history comparing the old revision history to the new one.

=== modified file 'bzrlib/tests/test_atomicfile.py'
--- a/bzrlib/tests/test_atomicfile.py	2011-05-13 12:51:05 +0000
+++ b/bzrlib/tests/test_atomicfile.py	2011-07-15 09:04:54 +0000
@@ -124,30 +124,3 @@
         f.commit()
         st = os.lstat('test')
         self.assertEqualMode(0666 & ~umask, stat.S_IMODE(st.st_mode))
-
-    def test_closed(self):
-        local_warnings = []
-        def capture_warnings(msg, cls, stacklevel=None):
-            self.assertEqual(cls, DeprecationWarning)
-            local_warnings.append(msg)
-
-        method = symbol_versioning.warn
-        try:
-            symbol_versioning.set_warning_method(capture_warnings)
-            f = atomicfile.AtomicFile('test', mode='wb')
-            self.assertEqual(False, f.closed)
-            f.abort()
-            self.assertEqual(True, f.closed)
-
-            f = atomicfile.AtomicFile('test', mode='wb')
-            f.close()
-            self.assertEqual(True, f.closed)
-
-            f = atomicfile.AtomicFile('test', mode='wb')
-            f.commit()
-            self.assertEqual(True, f.closed)
-        finally:
-            symbol_versioning.set_warning_method(method)
-
-        txt = 'AtomicFile.closed deprecated in bzr 0.10'
-        self.assertEqual([txt]*4, local_warnings)

=== modified file 'bzrlib/tests/test_log.py'
--- a/bzrlib/tests/test_log.py	2011-04-08 03:47:34 +0000
+++ b/bzrlib/tests/test_log.py	2011-07-15 13:49:47 +0000
@@ -983,349 +983,6 @@
             wt.branch, log.GnuChangelogLogFormatter,
             show_log_kwargs=dict(verbose=True))
 
-class TestGetViewRevisions(tests.TestCaseWithTransport, TestLogMixin):
-
-    def _get_view_revisions(self, *args, **kwargs):
-        return self.applyDeprecated(symbol_versioning.deprecated_in((2, 2, 0)),
-                                    log.get_view_revisions, *args, **kwargs)
-
-    def make_tree_with_commits(self):
-        """Create a tree with well-known revision ids"""
-        wt = self.make_branch_and_tree('tree1')
-        self.wt_commit(wt, 'commit one', rev_id='1')
-        self.wt_commit(wt, 'commit two', rev_id='2')
-        self.wt_commit(wt, 'commit three', rev_id='3')
-        mainline_revs = [None, '1', '2', '3']
-        rev_nos = {'1': 1, '2': 2, '3': 3}
-        return mainline_revs, rev_nos, wt
-
-    def make_tree_with_merges(self):
-        """Create a tree with well-known revision ids and a merge"""
-        mainline_revs, rev_nos, wt = self.make_tree_with_commits()
-        tree2 = wt.bzrdir.sprout('tree2').open_workingtree()
-        self.wt_commit(tree2, 'four-a', rev_id='4a')
-        wt.merge_from_branch(tree2.branch)
-        self.wt_commit(wt, 'four-b', rev_id='4b')
-        mainline_revs.append('4b')
-        rev_nos['4b'] = 4
-        # 4a: 3.1.1
-        return mainline_revs, rev_nos, wt
-
-    def make_branch_with_many_merges(self):
-        """Create a tree with well-known revision ids"""
-        builder = self.make_branch_builder('tree1')
-        builder.start_series()
-        builder.build_snapshot('1', None, [
-            ('add', ('', 'TREE_ROOT', 'directory', '')),
-            ('add', ('f', 'f-id', 'file', '1\n'))])
-        builder.build_snapshot('2', ['1'], [])
-        builder.build_snapshot('3a', ['2'], [
-            ('modify', ('f-id', '1\n2\n3a\n'))])
-        builder.build_snapshot('3b', ['2', '3a'], [
-            ('modify', ('f-id', '1\n2\n3a\n'))])
-        builder.build_snapshot('3c', ['2', '3b'], [
-            ('modify', ('f-id', '1\n2\n3a\n'))])
-        builder.build_snapshot('4a', ['3b'], [])
-        builder.build_snapshot('4b', ['3c', '4a'], [])
-        builder.finish_series()
-
-        # 1
-        # |
-        # 2-.
-        # |\ \
-        # | | 3a
-        # | |/
-        # | 3b
-        # |/|
-        # 3c4a
-        # |/
-        # 4b
-
-        mainline_revs = [None, '1', '2', '3c', '4b']
-        rev_nos = {'1':1, '2':2, '3c': 3, '4b':4}
-        full_rev_nos_for_reference = {
-            '1': '1',
-            '2': '2',
-            '3a': '2.1.1', #first commit tree 3
-            '3b': '2.2.1', # first commit tree 2
-            '3c': '3', #merges 3b to main
-            '4a': '2.2.2', # second commit tree 2
-            '4b': '4', # merges 4a to main
-            }
-        return mainline_revs, rev_nos, builder.get_branch()
-
-    def test_get_view_revisions_forward(self):
-        """Test the get_view_revisions method"""
-        mainline_revs, rev_nos, wt = self.make_tree_with_commits()
-        wt.lock_read()
-        self.addCleanup(wt.unlock)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'forward'))
-        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3', '3', 0)],
-                         revisions)
-        revisions2 = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'forward',
-                include_merges=False))
-        self.assertEqual(revisions, revisions2)
-
-    def test_get_view_revisions_reverse(self):
-        """Test the get_view_revisions with reverse"""
-        mainline_revs, rev_nos, wt = self.make_tree_with_commits()
-        wt.lock_read()
-        self.addCleanup(wt.unlock)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'reverse'))
-        self.assertEqual([('3', '3', 0), ('2', '2', 0), ('1', '1', 0), ],
-                         revisions)
-        revisions2 = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'reverse',
-                include_merges=False))
-        self.assertEqual(revisions, revisions2)
-
-    def test_get_view_revisions_merge(self):
-        """Test get_view_revisions when there are merges"""
-        mainline_revs, rev_nos, wt = self.make_tree_with_merges()
-        wt.lock_read()
-        self.addCleanup(wt.unlock)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'forward'))
-        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3', '3', 0),
-                          ('4b', '4', 0), ('4a', '3.1.1', 1)],
-                         revisions)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'forward',
-                include_merges=False))
-        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3', '3', 0),
-                          ('4b', '4', 0)],
-                         revisions)
-
-    def test_get_view_revisions_merge_reverse(self):
-        """Test get_view_revisions in reverse when there are merges"""
-        mainline_revs, rev_nos, wt = self.make_tree_with_merges()
-        wt.lock_read()
-        self.addCleanup(wt.unlock)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'reverse'))
-        self.assertEqual([('4b', '4', 0), ('4a', '3.1.1', 1),
-                          ('3', '3', 0), ('2', '2', 0), ('1', '1', 0)],
-                         revisions)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, wt.branch, 'reverse',
-                include_merges=False))
-        self.assertEqual([('4b', '4', 0), ('3', '3', 0), ('2', '2', 0),
-                          ('1', '1', 0)],
-                         revisions)
-
-    def test_get_view_revisions_merge2(self):
-        """Test get_view_revisions when there are merges"""
-        mainline_revs, rev_nos, b = self.make_branch_with_many_merges()
-        b.lock_read()
-        self.addCleanup(b.unlock)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, b, 'forward'))
-        expected = [('1', '1', 0), ('2', '2', 0), ('3c', '3', 0),
-                    ('3b', '2.2.1', 1), ('3a', '2.1.1', 2), ('4b', '4', 0),
-                    ('4a', '2.2.2', 1)]
-        self.assertEqual(expected, revisions)
-        revisions = list(self._get_view_revisions(
-                mainline_revs, rev_nos, b, 'forward',
-                include_merges=False))
-        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3c', '3', 0),
-                          ('4b', '4', 0)],
-                         revisions)
-
-    def test_file_id_for_range(self):
-        mainline_revs, rev_nos, b = self.make_branch_with_many_merges()
-        b.lock_read()
-        self.addCleanup(b.unlock)
-
-        def rev_from_rev_id(revid, branch):
-            revspec = revisionspec.RevisionSpec.from_string('revid:%s' % revid)
-            return revspec.in_history(branch)
-
-        def view_revs(start_rev, end_rev, file_id, direction):
-            revs = self.applyDeprecated(
-                symbol_versioning.deprecated_in((2, 2, 0)),
-                log.calculate_view_revisions,
-                b,
-                start_rev, # start_revision
-                end_rev, # end_revision
-                direction, # direction
-                file_id, # specific_fileid
-                True, # generate_merge_revisions
-                )
-            return revs
-
-        rev_3a = rev_from_rev_id('3a', b)
-        rev_4b = rev_from_rev_id('4b', b)
-        self.assertEqual([('3c', '3', 0), ('3b', '2.2.1', 1),
-                          ('3a', '2.1.1', 2)],
-                          view_revs(rev_3a, rev_4b, 'f-id', 'reverse'))
-        # Note: 3c still appears before 3a here because of depth-based sorting
-        self.assertEqual([('3c', '3', 0), ('3b', '2.2.1', 1),
-                          ('3a', '2.1.1', 2)],
-                          view_revs(rev_3a, rev_4b, 'f-id', 'forward'))
-
-
-class TestGetRevisionsTouchingFileID(tests.TestCaseWithTransport):
-
-    def get_view_revisions(self, *args):
-        return self.applyDeprecated(symbol_versioning.deprecated_in((2, 2, 0)),
-                                    log.get_view_revisions, *args)
-
-    def create_tree_with_single_merge(self):
-        """Create a branch with a moderate layout.
-
-        The revision graph looks like:
-
-           A
-           |\
-           B C
-           |/
-           D
-
-        In this graph, A introduced files f1 and f2 and f3.
-        B modifies f1 and f3, and C modifies f2 and f3.
-        D merges the changes from B and C and resolves the conflict for f3.
-        """
-        # TODO: jam 20070218 This seems like it could really be done
-        #       with make_branch_and_memory_tree() if we could just
-        #       create the content of those files.
-        # TODO: jam 20070218 Another alternative is that we would really
-        #       like to only create this tree 1 time for all tests that
-        #       use it. Since 'log' only uses the tree in a readonly
-        #       fashion, it seems a shame to regenerate an identical
-        #       tree for each test.
-        # TODO: vila 20100122 One way to address the shame above will be to
-        #       create a memory tree during test parametrization and give a
-        #       *copy* of this tree to each test. Copying a memory tree ought
-        #       to be cheap, at least cheaper than creating them with such
-        #       complex setups.
-        tree = self.make_branch_and_tree('tree')
-        tree.lock_write()
-        self.addCleanup(tree.unlock)
-
-        self.build_tree_contents([('tree/f1', 'A\n'),
-                                  ('tree/f2', 'A\n'),
-                                  ('tree/f3', 'A\n'),
-                                 ])
-        tree.add(['f1', 'f2', 'f3'], ['f1-id', 'f2-id', 'f3-id'])
-        tree.commit('A', rev_id='A')
-
-        self.build_tree_contents([('tree/f2', 'A\nC\n'),
-                                  ('tree/f3', 'A\nC\n'),
-                                 ])
-        tree.commit('C', rev_id='C')
-        # Revert back to A to build the other history.
-        tree.set_last_revision('A')
-        tree.branch.set_last_revision_info(1, 'A')
-        self.build_tree_contents([('tree/f1', 'A\nB\n'),
-                                  ('tree/f2', 'A\n'),
-                                  ('tree/f3', 'A\nB\n'),
-                                 ])
-        tree.commit('B', rev_id='B')
-        tree.set_parent_ids(['B', 'C'])
-        self.build_tree_contents([('tree/f1', 'A\nB\n'),
-                                  ('tree/f2', 'A\nC\n'),
-                                  ('tree/f3', 'A\nB\nC\n'),
-                                 ])
-        tree.commit('D', rev_id='D')
-
-        # Switch to a read lock for this tree.
-        # We still have an addCleanup(tree.unlock) pending
-        tree.unlock()
-        tree.lock_read()
-        return tree
-
-    def check_delta(self, delta, **kw):
-        """Check the filenames touched by a delta are as expected.
-
-        Caller only have to pass in the list of files for each part, all
-        unspecified parts are considered empty (and checked as such).
-        """
-        for n in 'added', 'removed', 'renamed', 'modified', 'unchanged':
-            # By default we expect an empty list
-            expected = kw.get(n, [])
-            # strip out only the path components
-            got = [x[0] for x in getattr(delta, n)]
-            self.assertEqual(expected, got)
-
-    def test_tree_with_single_merge(self):
-        """Make sure the tree layout is correct."""
-        tree = self.create_tree_with_single_merge()
-        rev_A_tree = tree.branch.repository.revision_tree('A')
-        rev_B_tree = tree.branch.repository.revision_tree('B')
-        rev_C_tree = tree.branch.repository.revision_tree('C')
-        rev_D_tree = tree.branch.repository.revision_tree('D')
-
-        self.check_delta(rev_B_tree.changes_from(rev_A_tree),
-                         modified=['f1', 'f3'])
-
-        self.check_delta(rev_C_tree.changes_from(rev_A_tree),
-                         modified=['f2', 'f3'])
-
-        self.check_delta(rev_D_tree.changes_from(rev_B_tree),
-                         modified=['f2', 'f3'])
-
-        self.check_delta(rev_D_tree.changes_from(rev_C_tree),
-                         modified=['f1', 'f3'])
-
-    def assertAllRevisionsForFileID(self, tree, file_id, revisions):
-        """Ensure _filter_revisions_touching_file_id returns the right values.
-
-        Get the return value from _filter_revisions_touching_file_id and make
-        sure they are correct.
-        """
-        # The api for _filter_revisions_touching_file_id is a little crazy.
-        # So we do the setup here.
-        mainline = tree.branch.revision_history()
-        mainline.insert(0, None)
-        revnos = dict((rev, idx+1) for idx, rev in enumerate(mainline))
-        view_revs_iter = self.get_view_revisions(
-            mainline, revnos, tree.branch, 'reverse', True)
-        actual_revs = log._filter_revisions_touching_file_id(
-            tree.branch, file_id, list(view_revs_iter))
-        self.assertEqual(revisions, [r for r, revno, depth in actual_revs])
-
-    def test_file_id_f1(self):
-        tree = self.create_tree_with_single_merge()
-        # f1 should be marked as modified by revisions A and B
-        self.assertAllRevisionsForFileID(tree, 'f1-id', ['B', 'A'])
-
-    def test_file_id_f2(self):
-        tree = self.create_tree_with_single_merge()
-        # f2 should be marked as modified by revisions A, C, and D
-        # because D merged the changes from C.
-        self.assertAllRevisionsForFileID(tree, 'f2-id', ['D', 'C', 'A'])
-
-    def test_file_id_f3(self):
-        tree = self.create_tree_with_single_merge()
-        # f3 should be marked as modified by revisions A, B, C, and D
-        self.assertAllRevisionsForFileID(tree, 'f3-id', ['D', 'C', 'B', 'A'])
-
-    def test_file_id_with_ghosts(self):
-        # This is testing bug #209948, where having a ghost would cause
-        # _filter_revisions_touching_file_id() to fail.
-        tree = self.create_tree_with_single_merge()
-        # We need to add a revision, so switch back to a write-locked tree
-        # (still a single addCleanup(tree.unlock) pending).
-        tree.unlock()
-        tree.lock_write()
-        first_parent = tree.last_revision()
-        tree.set_parent_ids([first_parent, 'ghost-revision-id'])
-        self.build_tree_contents([('tree/f1', 'A\nB\nXX\n')])
-        tree.commit('commit with a ghost', rev_id='XX')
-        self.assertAllRevisionsForFileID(tree, 'f1-id', ['XX', 'B', 'A'])
-        self.assertAllRevisionsForFileID(tree, 'f2-id', ['D', 'C', 'A'])
-
-    def test_unknown_file_id(self):
-        tree = self.create_tree_with_single_merge()
-        self.assertAllRevisionsForFileID(tree, 'unknown', [])
-
-    def test_empty_branch_unknown_file_id(self):
-        tree = self.make_branch_and_tree('tree')
-        self.assertAllRevisionsForFileID(tree, 'unknown', [])
-
 
 class TestShowChangedRevisions(tests.TestCaseWithTransport):
 

=== modified file 'doc/en/release-notes/bzr-2.5.txt'
--- a/doc/en/release-notes/bzr-2.5.txt	2011-07-13 17:36:15 +0000
+++ b/doc/en/release-notes/bzr-2.5.txt	2011-07-15 13:59:45 +0000
@@ -56,6 +56,14 @@
 .. Changes that may require updates in plugins or other code that uses
    bzrlib.
 
+* Remove ``AtomicFile.closed`` which has been deprecated in bzr 0.10.
+  (Vincent Ladeuil)
+
+* Remove log.calculate_view_revisions, log._filter_revision_range,
+  log.get_view_revisions which have been deprecated in bzr 2.1.0. Also
+  remove log.show_one_log which were never properly deprecated but wasn't
+  used and is easy to inline if needed. (Vincent Ladeuil)
+
 Internals
 *********
 




More information about the bazaar-commits mailing list