profiling: introduce limit configuration option
authorMads Kiilerich <madski@unity3d.com>
Mon, 04 Feb 2013 02:46:53 +0100
changeset 18548 e71c2ff93167
parent 18547 2e3ec9e6ee6e
child 18550 db3a3a65e0db
profiling: introduce limit configuration option The number of output lines was hardcoded to 30. There was a 'nested' configuration options that controlled something else related to counting the number of output lines. This introduces the profiling.limit configuration option for controlling the number of profiling output to show.
mercurial/dispatch.py
mercurial/help/config.txt
--- a/mercurial/dispatch.py	Thu Jan 24 23:57:44 2013 +0100
+++ b/mercurial/dispatch.py	Mon Feb 04 02:46:53 2013 +0100
@@ -748,6 +748,7 @@
 def lsprofile(ui, func, fp):
     format = ui.config('profiling', 'format', default='text')
     field = ui.config('profiling', 'sort', default='inlinetime')
+    limit = ui.configint('profiling', 'limit', default=30)
     climit = ui.configint('profiling', 'nested', default=5)
 
     if format not in ['text', 'kcachegrind']:
@@ -776,7 +777,7 @@
             # format == 'text'
             stats = lsprof.Stats(p.getstats())
             stats.sort(field)
-            stats.pprint(limit=30, file=fp, climit=climit)
+            stats.pprint(limit=limit, file=fp, climit=climit)
 
 def statprofile(ui, func, fp):
     try:
--- a/mercurial/help/config.txt	Thu Jan 24 23:57:44 2013 +0100
+++ b/mercurial/help/config.txt	Mon Feb 04 02:46:53 2013 +0100
@@ -996,6 +996,10 @@
     ``inlinetime``.
     Default: inlinetime.
 
+``limit``
+    Number of lines to show. Specific to the ``ls`` instrumenting profiler.
+    Default: 30.
+
 ``nested``
     Show at most this number of lines of drill-down info in a tree structure
     after each main entry. This can help explain the difference between Total