diff --git a/mercurial/lsprofcalltree.py b/mercurial/lsprofcalltree.py --- a/mercurial/lsprofcalltree.py +++ b/mercurial/lsprofcalltree.py @@ -10,7 +10,7 @@ This software may be used and distribute of the GNU General Public License, incorporated herein by reference. """ -from __future__ import absolute_import +from __future__ import absolute_import, print_function def label(code): if isinstance(code, str): @@ -27,7 +27,7 @@ class KCacheGrind(object): def output(self, out_file): self.out_file = out_file - print >> out_file, 'events: Ticks' + print('events: Ticks', file=out_file) self._print_summary() for entry in self.data: self._entry(entry) @@ -37,24 +37,23 @@ class KCacheGrind(object): for entry in self.data: totaltime = int(entry.totaltime * 1000) max_cost = max(max_cost, totaltime) - print >> self.out_file, 'summary: %d' % (max_cost,) + print('summary: %d' % max_cost, file=self.out_file) def _entry(self, entry): out_file = self.out_file code = entry.code - #print >> out_file, 'ob=%s' % (code.co_filename,) if isinstance(code, str): - print >> out_file, 'fi=~' + print('fi=~', file=out_file) else: - print >> out_file, 'fi=%s' % (code.co_filename,) - print >> out_file, 'fn=%s' % (label(code),) + print('fi=%s' % code.co_filename, file=out_file) + print('fn=%s' % label(code), file=out_file) inlinetime = int(entry.inlinetime * 1000) if isinstance(code, str): - print >> out_file, '0 ', inlinetime + print('0 ', inlinetime, file=out_file) else: - print >> out_file, '%d %d' % (code.co_firstlineno, inlinetime) + print('%d %d' % (code.co_firstlineno, inlinetime), file=out_file) # recursive calls are counted in entry.calls if entry.calls: @@ -69,20 +68,19 @@ class KCacheGrind(object): for subentry in calls: self._subentry(lineno, subentry) - print >> out_file + print(file=out_file) def _subentry(self, lineno, subentry): out_file = self.out_file code = subentry.code - #print >> out_file, 'cob=%s' % (code.co_filename,) - print >> out_file, 'cfn=%s' % (label(code),) + print('cfn=%s' % label(code), file=out_file) if isinstance(code, str): - print >> out_file, 'cfi=~' - print >> out_file, 'calls=%d 0' % (subentry.callcount,) + print('cfi=~', file=out_file) + print('calls=%d 0' % subentry.callcount, file=out_file) else: - print >> out_file, 'cfi=%s' % (code.co_filename,) - print >> out_file, 'calls=%d %d' % ( - subentry.callcount, code.co_firstlineno) + print('cfi=%s' % code.co_filename, file=out_file) + print('calls=%d %d' % ( + subentry.callcount, code.co_firstlineno), file=out_file) totaltime = int(subentry.totaltime * 1000) - print >> out_file, '%d %d' % (lineno, totaltime) + print('%d %d' % (lineno, totaltime), file=out_file) diff --git a/tests/test-check-py3-compat.t b/tests/test-check-py3-compat.t --- a/tests/test-check-py3-compat.t +++ b/tests/test-check-py3-compat.t @@ -100,7 +100,6 @@ i18n/polib.py not using absolute_import mercurial/cmdutil.py not using absolute_import mercurial/commands.py not using absolute_import - mercurial/lsprofcalltree.py requires print_function mercurial/mail.py requires print_function setup.py not using absolute_import tests/filterpyflakes.py requires print_function