mirror of https://github.com/python/cpython
Issue 1106316. post_mortem()'s parameter, traceback, is now
optional: it defaults to the traceback of the exception that is currently being handled.
This commit is contained in:
parent
372d55e3e6
commit
c54aec1fda
|
@ -107,9 +107,12 @@ slightly different way:
|
|||
being debugged (e.g. when an assertion fails).
|
||||
|
||||
|
||||
.. function:: post_mortem(traceback)
|
||||
.. function:: post_mortem([traceback])
|
||||
|
||||
Enter post-mortem debugging of the given *traceback* object.
|
||||
Enter post-mortem debugging of the given *traceback* object. If no
|
||||
*traceback* is given, it uses the one of the exception that is currently
|
||||
being handled (an exception must be being handled if the default is to be
|
||||
used).
|
||||
|
||||
|
||||
.. function:: pm()
|
||||
|
|
11
Lib/pdb.py
11
Lib/pdb.py
|
@ -1198,7 +1198,16 @@ def set_trace():
|
|||
|
||||
# Post-Mortem interface
|
||||
|
||||
def post_mortem(t):
|
||||
def post_mortem(t=None):
|
||||
# handling the default
|
||||
if t is None:
|
||||
# sys.exc_info() returns (type, value, traceback) if an exception is
|
||||
# being handled, otherwise it returns None
|
||||
t = sys.exc_info()[2]
|
||||
if t is None:
|
||||
raise ValueError("A valid traceback must be passed if no "
|
||||
"exception is being handled")
|
||||
|
||||
p = Pdb()
|
||||
p.reset()
|
||||
while t.tb_next is not None:
|
||||
|
|
|
@ -21,6 +21,11 @@ Core and builtins
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #1106316: pdb.post_mortem()'s parameter, "traceback", is now
|
||||
optional: it defaults to the traceback of the exception that is currently
|
||||
being handled (is mandatory to be in the middle of an exception, otherwise
|
||||
it raises ValueError).
|
||||
|
||||
- Issue #1193577: A .shutdown() method has been added to SocketServers
|
||||
which terminates the .serve_forever() loop.
|
||||
|
||||
|
|
Loading…
Reference in New Issue