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