[issue11822] Improve disassembly to show embedded code objects

2017-06-12 Thread STINNER Victor
STINNER Victor added the comment: Thanks Serhiy, it works and I like the result :-) >>> def f(): ... def g(): ... return 3 ... return g ... >>> import dis; dis.dis(f) 2 0 LOAD_CONST 1 (", line 2>) 2 LOAD_CONST 2 ('f..g')

[issue11822] Improve disassembly to show embedded code objects

2017-06-11 Thread Serhiy Storchaka
Changes by Serhiy Storchaka : -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker

[issue11822] Improve disassembly to show embedded code objects

2017-06-11 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: New changeset 1efbf92e90ed2edf3f5bb5323340b26f318ff61e by Serhiy Storchaka in branch 'master': bpo-11822: Improve disassembly to show embedded code objects. (#1844) https://github.com/python/cpython/commit/1efbf92e90ed2edf3f5bb5323340b26f318ff61e

[issue11822] Improve disassembly to show embedded code objects

2017-06-04 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: Could you please look at the patch Raymond? Is this what you wanted? -- ___ Python tracker ___

[issue11822] Improve disassembly to show embedded code objects

2017-05-30 Thread Serhiy Storchaka
Changes by Serhiy Storchaka : -- assignee: -> serhiy.storchaka ___ Python tracker ___

[issue11822] Improve disassembly to show embedded code objects

2017-05-28 Thread Raymond Hettinger
Raymond Hettinger added the comment: > Would it help if pipe the output of dis() through a pager > if the output file and stdin are attached to a terminal? -1 for adding a pager. -- ___ Python tracker

[issue11822] Improve disassembly to show embedded code objects

2017-05-28 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: PR 1844 implements Nick's suggestion, but I don't like it. This complicates both the interface and the implementation. help() also can produce very noisy output if request the documentation of the whole module. But the output of help() usually is piped

[issue11822] Improve disassembly to show embedded code objects

2017-05-28 Thread Serhiy Storchaka
Changes by Serhiy Storchaka : -- pull_requests: +1931 ___ Python tracker ___ ___

[issue11822] Improve disassembly to show embedded code objects

2017-04-16 Thread Nick Coghlan
Nick Coghlan added the comment: Yeah, I was mixing this up with getargspec (et al), which get used by IDEs and similar tools. While third party tools do use the disassembler, they typically won't use its display logic directly unless they're just dumping the output to a terminal equivalent.

[issue11822] Improve disassembly to show embedded code objects

2017-04-16 Thread Raymond Hettinger
Raymond Hettinger added the comment: > if we modify dis() instead of adding a new function, then > the default behaviour needs to be non-recursive for > backwards compatibility reasons I don't see how we have any backward compatibility issues. The dis() function is purely informational like

[issue11822] Improve disassembly to show embedded code objects

2017-04-15 Thread Nick Coghlan
Nick Coghlan added the comment: The problem I see is that we have conflicting requirements for the default behaviour: - if we modify dis() instead of adding a new function, then the default behaviour needs to be non-recursive for backwards compatibility reasons - if we allow the depth to be

[issue11822] Improve disassembly to show embedded code objects

2017-04-15 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: The problem with the *depth* parameter is that it adds a burden of choosing the value for the end user. "Oh, there are more deeper code objects, I must increase the depth and rerun dis()!" I think in most cases when that parameter is specified it would be

[issue11822] Improve disassembly to show embedded code objects

2017-04-15 Thread Nick Coghlan
Nick Coghlan added the comment: +1 for listing the nested code objects after the original one. In reviewing Serhiy's patch, the core technical implementation looks OK to me, but I think we may want to go with a "depth" argument rather than a simple "recursive" flag. My rationale for that

[issue11822] Improve disassembly to show embedded code objects

2017-04-15 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: The issue was open 6 years ago. The feature could be added in 3.3. But it still not implemented. Since there are problems with outputting the disassembly of internal code objects expanded in-line, proposed patch just outputs them after the disassembly of

[issue11822] Improve disassembly to show embedded code objects

2017-04-15 Thread Serhiy Storchaka
Changes by Serhiy Storchaka : -- pull_requests: +1286 ___ Python tracker ___ ___

[issue11822] Improve disassembly to show embedded code objects

2016-07-18 Thread Stéphane Wirtel
Stéphane Wirtel added the comment: hello, we can continue the discussion on this issue ? -- ___ Python tracker ___

[issue11822] Improve disassembly to show embedded code objects

2016-06-05 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: I like Stéphane's idea about placing the output for nested code object at the same level after the output for the main code object. -- nosy: +serhiy.storchaka ___ Python tracker

[issue11822] Improve disassembly to show embedded code objects

2015-12-03 Thread Todd Dembrey
Changes by Todd Dembrey : -- nosy: +Todd Dembrey ___ Python tracker ___ ___

[issue11822] Improve disassembly to show embedded code objects

2015-11-09 Thread Raymond Hettinger
Changes by Raymond Hettinger : -- assignee: rhettinger -> ___ Python tracker ___

[issue11822] Improve disassembly to show embedded code objects

2015-11-06 Thread Stéphane Wirtel
Stéphane Wirtel added the comment: Hi all, For this feature, I have an other output: stephane@sg1 /tmp> python3 dump_bytecode.py 3 0 LOAD_BUILD_CLASS 1 LOAD_CONST 0 (", line 3>) 4 LOAD_CONST 1 ('User')

[issue11822] Improve disassembly to show embedded code objects

2015-01-25 Thread Berker Peksag
Changes by Berker Peksag berker.pek...@gmail.com: -- nosy: +berker.peksag ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___ ___

[issue11822] Improve disassembly to show embedded code objects

2014-09-06 Thread Nick Coghlan
Nick Coghlan added the comment: Sorry for the long delay in doing anything with this patch. Unfortunately, trunk has moved on quite a bit since this patch was submitted, and it's no longer directly applicable. However, the basic principle is sound, so this is a new patch that aligns with the

[issue11822] Improve disassembly to show embedded code objects

2014-09-06 Thread Nick Coghlan
Nick Coghlan added the comment: I didn't want to add a second argument to turn off the new behaviour, so I changed it such that passing a value 0 for nested turns off the new feature entirely. Levels = 0 enable it, defining which level to start with. The default level is 0 so there's no

[issue11822] Improve disassembly to show embedded code objects

2014-08-16 Thread STINNER Victor
Changes by STINNER Victor victor.stin...@gmail.com: -- nosy: +haypo ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___ ___ Python-bugs-list

[issue11822] Improve disassembly to show embedded code objects

2014-08-12 Thread Josh Lee
Changes by Josh Lee jlee...@gmail.com: -- nosy: +jleedev ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___ ___ Python-bugs-list mailing list

[issue11822] Improve disassembly to show embedded code objects

2014-08-12 Thread Raymond Hettinger
Changes by Raymond Hettinger raymond.hettin...@gmail.com: -- stage: needs patch - patch review versions: +Python 3.5 -Python 3.4 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___

[issue11822] Improve disassembly to show embedded code objects

2013-07-12 Thread Raymond Hettinger
Changes by Raymond Hettinger raymond.hettin...@gmail.com: -- stage: - needs patch versions: +Python 3.4 -Python 3.3 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___

[issue11822] Improve disassembly to show embedded code objects

2011-12-10 Thread Torsten Landschoff
Torsten Landschoff t.landsch...@gmx.net added the comment: I offer the attached patch as a starting point to fulfill this feature request. The patch changes the output to insert the disassembly of local code objects on the referencing line. As that made the output unreadable to me, I added

[issue11822] Improve disassembly to show embedded code objects

2011-12-10 Thread Raymond Hettinger
Raymond Hettinger raymond.hettin...@gmail.com added the comment: Thank you :-) -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___ ___

[issue11822] Improve disassembly to show embedded code objects

2011-05-31 Thread Nick Coghlan
Nick Coghlan ncogh...@gmail.com added the comment: Note that Yaniv Aknin (author of the Python's Innards series of blog posts) has a recursive dis variant that may be useful for inspiration: https://bitbucket.org/yaniv_aknin/pynards/src/c4b61c7a1798/common/blog.py As shown there, this

[issue11822] Improve disassembly to show embedded code objects

2011-04-12 Thread Raymond Hettinger
Changes by Raymond Hettinger raymond.hettin...@gmail.com: -- assignee: - rhettinger ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___ ___

[issue11822] Improve disassembly to show embedded code objects

2011-04-11 Thread Alexander Belopolsky
Changes by Alexander Belopolsky belopol...@users.sourceforge.net: -- nosy: +belopolsky ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue11822 ___ ___

[issue11822] Improve disassembly to show embedded code objects

2011-04-11 Thread Alexander Belopolsky
Alexander Belopolsky belopol...@users.sourceforge.net added the comment: Would you like to display lambdas as well? dis('lambda x: x**2') 1 0 LOAD_CONST 0 (code object lambda at 0x1005c9ad0, file dis, line 1) 3 MAKE_FUNCTION0

[issue11822] Improve disassembly to show embedded code objects

2011-04-11 Thread Antoine Pitrou
Antoine Pitrou pit...@free.fr added the comment: I think it should be enabled with an optional argument. Otherwise in some cases you'll get lots of additional output while you're only interested in the top-level code. -- nosy: +pitrou ___ Python

[issue11822] Improve disassembly to show embedded code objects

2011-04-11 Thread Raymond Hettinger
Raymond Hettinger raymond.hettin...@gmail.com added the comment: If you disassemble a function, you typically want to see all the code in that function. This isn't like pdb where you're choosing to step over or into another function outside the one being viewed. --

[issue11822] Improve disassembly to show embedded code objects

2011-04-11 Thread Antoine Pitrou
Antoine Pitrou pit...@free.fr added the comment: If you disassemble a function, you typically want to see all the code in that function. That depends on the function. If you do event-driven programming (say, Twisted deferreds with addCallback()), you don't necessarily want to see the

[issue11822] Improve disassembly to show embedded code objects

2011-04-11 Thread Alexander Belopolsky
Alexander Belopolsky belopol...@users.sourceforge.net added the comment: On Mon, Apr 11, 2011 at 5:21 PM, Antoine Pitrou rep...@bugs.python.org wrote: .. Raymond If you disassemble a function, you typically want to see all the code Raymond [defined] in that function. +1 (with clarification in

[issue11822] Improve disassembly to show embedded code objects

2011-04-10 Thread Raymond Hettinger
New submission from Raymond Hettinger raymond.hettin...@gmail.com: Now that list comprehensions mask run their internals in code objects (the same way that genexps do), it is getting harder to use dis() to see what code is generated. For example, the pow() call isn't shown in the following