~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/annotate.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2007-06-21 05:22:37 UTC
  • mfrom: (2490.2.33 graphwalker)
  • Revision ID: pqm@pqm.ubuntu.com-20070621052237-2phm1z5dg4arrwnk
Avoid topological sorting in Repository.get_ancestry where possible

Show diffs side-by-side

added added

removed removed

Lines of Context:
30
30
 
31
31
from bzrlib import (
32
32
    errors,
33
 
    osutils,
34
33
    patiencediff,
35
34
    tsort,
36
35
    )
80
79
            anno = "%-*s %-7s " % (max_revno_len, revno_str, author[:7])
81
80
 
82
81
        if anno.lstrip() == "" and full: anno = prevanno
83
 
        try:
84
 
            to_file.write(anno)
85
 
        except UnicodeEncodeError:
86
 
            # cmd_annotate should be passing in an 'exact' object, which means
87
 
            # we have a direct handle to sys.stdout or equivalent. It may not
88
 
            # be able to handle the exact Unicode characters, but 'annotate' is
89
 
            # a user function (non-scripting), so shouldn't die because of
90
 
            # unrepresentable annotation characters. So encode using 'replace',
91
 
            # and write them again.
92
 
            encoding = getattr(to_file, 'encoding', None) or \
93
 
                    osutils.get_terminal_encoding()
94
 
            to_file.write(anno.encode(encoding, 'replace'))
95
 
        print >>to_file, '| %s' % (text,)
 
82
        print >>to_file, '%s| %s' % (anno, text)
96
83
        prevanno=anno
97
84
 
98
85