[issue20888] tracemalloc: add getline() method to Traceback and Frame

2014-03-11 Thread Roundup Robot

Roundup Robot added the comment:

New changeset 14c1ff6a8086 by Victor Stinner in branch 'default':
Issue #20888: improve Pretty Top example of tracemalloc, use linecache
http://hg.python.org/cpython/rev/14c1ff6a8086

--
nosy: +python-dev

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20888
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20888] tracemalloc: add getline() method to Traceback and Frame

2014-03-10 Thread STINNER Victor

New submission from STINNER Victor:

Is it too late in Python 3.4 release process to add a new method to classes of 
the tracemalloc module?

Here is a patch which adds unit tests and uses the new method in the 
documentation.

Example before:

Top 10 lines
#1: collections/__init__.py:368: 291.9 KiB
#2: Lib/doctest.py:1291: 200.2 KiB
#3: unittest/case.py:571: 160.3 KiB
#4: Lib/abc.py:133: 99.8 KiB
#5: urllib/parse.py:476: 71.8 KiB
#6: string:5: 62.7 KiB
#7: Lib/base64.py:140: 59.8 KiB
#8: Lib/_weakrefset.py:37: 51.8 KiB
#9: collections/__init__.py:362: 50.6 KiB
#10: test/test_site.py:56: 48.0 KiB
7496 other: 4161.9 KiB
Total allocated size: 5258.8 KiB

Example after:

Top 10 lines
#1: Lib/base64.py:414: 419.8 KiB
_b85chars2 = [(a + b) for a in _b85chars for b in _b85chars]
#2: Lib/base64.py:306: 419.8 KiB
_a85chars2 = [(a + b) for a in _a85chars for b in _a85chars]
#3: collections/__init__.py:368: 293.6 KiB
exec(class_definition, namespace)
#4: Lib/abc.py:133: 115.2 KiB
cls = super().__new__(mcls, name, bases, namespace)
#5: unittest/case.py:574: 103.1 KiB
testMethod()
#6: Lib/linecache.py:127: 95.4 KiB
lines = fp.readlines()
#7: urllib/parse.py:476: 71.8 KiB
for a in _hexdig for b in _hexdig}
#8: string:5: 62.0 KiB
#9: Lib/_weakrefset.py:37: 60.0 KiB
self.data = set()
#10: Lib/base64.py:142: 59.8 KiB
_b32tab2 = [a + b for a in _b32tab for b in _b32tab]
6220 other: 3602.8 KiB
Total allocated size: 5303.1 KiB

The getline() is convinient.

Sorry for being late, but the need of the new method came when I started to 
work again on tracemalloc to prepare my conference for Pycon US.

--
files: tracemalloc_getline.patch
keywords: patch
messages: 213113
nosy: haypo, larry
priority: normal
severity: normal
status: open
title: tracemalloc: add getline() method to Traceback and Frame
versions: Python 3.4
Added file: http://bugs.python.org/file34349/tracemalloc_getline.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20888
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue20888] tracemalloc: add getline() method to Traceback and Frame

2014-03-10 Thread R. David Murray

R. David Murray added the comment:

Yes it is too late.  The only reason any code changes should be made to the 
final RC is if we would otherwise have a brown bag release.

--
nosy: +r.david.murray

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20888
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com