##// END OF EJS Templates
Merge pull request #1155 from minrk/postexec...
Merge pull request #1155 from minrk/postexec Be less aggressive in de-registering failing post-execute functions so that normal errors don't disable them permanently. Two changes: 1. Don't unregister failing post-exec callbacks automatically. Instead, print a message regarding the failure, pointing to new `disable_failing_post_execute` trait for skipping failing callbacks. - When this flag is False (the default), failing callbacks will continue to be called. - When True, behavior is unchanged from previous, where callbacks are only allowed to fail once. 2. protect `flush_figures()` post-exec function from user error. Invalid matplotlib data may raise inside `print_figure()`. flush_figures() is a post-exec function, so user errors should not raise. Instead, call `get_ipython().showtraceback()` if called from IPython, raising as before otherwise. closes #1154

File last commit:

r2498:3eae1372
r5737:2c683b72 merge
Show More
ipy_pydb.py
31 lines | 813 B | text/x-python | PythonLexer
vivainio
merge all from 0.7.3 branch to trunk
r503 import inspect
Brian Granger
ipapi.py => core/ipapi.py and imports updated.
r2027 from IPython.core import ipapi
Brian Granger
Work to address the review comments on Fernando's branch....
r2498 from IPython.utils.process import arg_split
Brian Granger
ipapi.py => core/ipapi.py and imports updated.
r2027 ip = ipapi.get()
vivainio
merge all from 0.7.3 branch to trunk
r503
Brian Granger
Debugger.py => core/debugger.py and updated all imports.
r2015 from IPython.core import debugger
vivainio
merge all from 0.7.3 branch to trunk
r503
def call_pydb(self, args):
"""Invoke pydb with the supplied parameters."""
try:
import pydb
except ImportError:
raise ImportError("pydb doesn't seem to be installed.")
if not hasattr(pydb.pydb, "runv"):
raise ImportError("You need pydb version 1.19 or later installed.")
argl = arg_split(args)
# print argl # dbg
if len(inspect.getargspec(pydb.runv)[0]) == 2:
Brian Granger
Massive, crazy refactoring of everything....
r2202 pdb = debugger.Pdb(color_scheme=self.colors)
Brian Granger
Continuing a massive refactor of everything.
r2205 ip.history_saving_wrapper( lambda : pydb.runv(argl, pdb) )()
vivainio
merge all from 0.7.3 branch to trunk
r503 else:
Brian Granger
Continuing a massive refactor of everything.
r2205 ip.history_saving_wrapper( lambda : pydb.runv(argl) )()
vivainio
merge all from 0.7.3 branch to trunk
r503
Brian Granger
Continuing a massive refactor of everything.
r2205 ip.define_magic("pydb",call_pydb)
vivainio
merge all from 0.7.3 branch to trunk
r503