Terry J. Reedy added the comment:

Since there is currently no '_RPCFile' in idlelib, I presume it was the 
predecessor of PyShell.PseudoFile.  Was it in run.py rather than PyShell.py?  
Stepping through print (only 1 is needed) steps through the two 'if's and 
'return' statements of PyShell.PseudoOutputFile.write.

I agree with Martin that this is not a bug. [step] is supposed to step into 
python-coded functions and skip over non-python functions and that is what it 
is doing. Whether *any* stdlib function is coded in python, or something else, 
or something else and wrapped in python, and therefore whether it will be 
stepped into or over, is a matter of implementation, version, and local setup. 
In particular, 'print' was changed from statement keyword to builtin name 
partly so it could be wrapped or replaced.

However, I agree that stepping through .write is not especially desirable and 
would not mind if the class were moved from PyShell.py to rpc.py.  I think it 
fits there better anyway.  

I wrote a 'rpc.py', not in idlelib, and tried to debug it. Debugger silently 
ran the whole module and quit, as if I had hit [run] with no breakpoints. This, 
I think, *is* a bug; in_rpc_code() should only skip over idlelib.rpc code.

----------
stage:  -> test needed
title: IDLE - debugger steps through run.py internals -> IDLE - debugger steps 
into print and over rpc.py code

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue15335>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to