<div dir="ltr"><br><div class="gmail_extra">Why are these functions (get_traces and get_object_traceback) private?</div><div class="gmail_extra"><br></div><div class="gmail_extra">(1)  Is the whole module provisional?  At one point, I had thought so, but I don't see that in the PEP or implementation.  (I'm not sure that it should be provisional, but I want to be sure that the decision is intentional.)</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">(2)  This implementation does lock in certain choices about the nature of traces.  (What data to include for analysis vs excluding to save memory; which events are tracked separately and which combined into a single total; organizing the data that is saved in a hash by certain keys; etc)  </div>

<div class="gmail_extra"><br></div><div class="gmail_extra">While I would prefer more flexibility, the existing code provides a reasonable default, and I can't forsee changing traces so much that these functions *can't* be reasonably supported unless the rest of the module API changes too.</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">(3)  get_object_traceback is the killer app that justifies the specific data-collection choices Victor made; if it isn't public, the implementation starts to look overbuilt.</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">(4) get_traces is about the only way to get at even the all the data that *is* stored, prior to additional summarization.  If it isn't public, those default summarization options become even more locked in..</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">-jJ</div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 25, 2013 at 3:34 AM, victor.stinner <span dir="ltr"><<a href="mailto:python-checkins@python.org" target="_blank">python-checkins@python.org</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><a href="http://hg.python.org/cpython/rev/2e2ec595dc58" target="_blank">http://hg.python.org/cpython/rev/2e2ec595dc58</a><br>


changeset:   87551:2e2ec595dc58<br>
user:        Victor Stinner <<a href="mailto:victor.stinner@gmail.com">victor.stinner@gmail.com</a>><br>
date:        Mon Nov 25 09:33:18 2013 +0100<br>
summary:<br>
  Close #19762: Fix name of _get_traces() and _get_object_traceback() function<br>
name in their docstring. Patch written by Vajrasky Kok.<br>
<br>
files:<br>
  Modules/_tracemalloc.c |  4 ++--<br>
  1 files changed, 2 insertions(+), 2 deletions(-)<br>
<br>
<br>
diff --git a/Modules/_tracemalloc.c b/Modules/_tracemalloc.c<br>
--- a/Modules/_tracemalloc.c<br>
+++ b/Modules/_tracemalloc.c<br>
@@ -1018,7 +1018,7 @@<br>
 }<br>
<br>
 PyDoc_STRVAR(tracemalloc_get_traces_doc,<br>
-    "get_traces() -> list\n"<br>
+    "_get_traces() -> list\n"<br>
     "\n"<br>
     "Get traces of all memory blocks allocated by Python.\n"<br>
     "Return a list of (size: int, traceback: tuple) tuples.\n"<br>
@@ -1083,7 +1083,7 @@<br>
 }<br>
<br>
 PyDoc_STRVAR(tracemalloc_get_object_traceback_doc,<br>
-    "get_object_traceback(obj)\n"<br>
+    "_get_object_traceback(obj)\n"<br>
     "\n"<br>
     "Get the traceback where the Python object obj was allocated.\n"<br>
     "Return a tuple of (filename: str, lineno: int) tuples.\n"<br>
<span class=""><font color="#888888"><br>
--<br>
Repository URL: <a href="http://hg.python.org/cpython" target="_blank">http://hg.python.org/cpython</a><br>
</font></span><br>_______________________________________________<br>
Python-checkins mailing list<br>
<a href="mailto:Python-checkins@python.org">Python-checkins@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-checkins" target="_blank">https://mail.python.org/mailman/listinfo/python-checkins</a><br>
<br></blockquote></div><br></div></div>