[PATCH 4 of 5] lsprofcalltree: use print function
Gregory Szorc
gregory.szorc at gmail.com
Sat Jan 2 19:54:46 UTC 2016
# HG changeset patch
# User Gregory Szorc <gregory.szorc at gmail.com>
# Date 1451763929 28800
# Sat Jan 02 11:45:29 2016 -0800
# Node ID eb38a483db6e6cef6f1e9e0c522f6b440f334a21
# Parent 9c26e94a684bd73ae562eace5264f886119c9280
lsprofcalltree: use print function
While I was here, some single element tuples have been removed in
favor of the shorter syntax. Some commented lines of code containing
print statements have also been removed because it was unclear what
purpose they served.
diff --git a/mercurial/lsprofcalltree.py b/mercurial/lsprofcalltree.py
--- a/mercurial/lsprofcalltree.py
+++ b/mercurial/lsprofcalltree.py
@@ -5,84 +5,82 @@ Authors:
* David Allouche <david <at> allouche.net>
* Jp Calderone & Itamar Shtull-Trauring
* Johan Dahlin
This software may be used and distributed according to the terms
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):
return '~' + code # built-in functions ('~' sorts at the end)
else:
return '%s %s:%d' % (code.co_name,
code.co_filename,
code.co_firstlineno)
class KCacheGrind(object):
def __init__(self, profiler):
self.data = profiler.getstats()
self.out_file = None
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)
def _print_summary(self):
max_cost = 0
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:
calls = entry.calls
else:
calls = []
if isinstance(code, str):
lineno = 0
else:
lineno = code.co_firstlineno
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
@@ -93,17 +93,16 @@
hgext/transplant.py not using absolute_import
hgext/win32mbcs.py not using absolute_import
hgext/win32text.py not using absolute_import
hgext/zeroconf/Zeroconf.py not using absolute_import
hgext/zeroconf/Zeroconf.py requires print_function
hgext/zeroconf/__init__.py not using absolute_import
i18n/check-translation.py not using absolute_import
i18n/polib.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
tests/generate-working-copy-states.py requires print_function
tests/get-with-headers.py requires print_function
tests/heredoctest.py requires print_function
tests/hypothesishelpers.py not using absolute_import
tests/hypothesishelpers.py requires print_function
More information about the Mercurial-devel
mailing list