##// END OF EJS Templates
Merge pull request #2432 from bfroehle/revert_1831...
Merge pull request #2432 from bfroehle/revert_1831 Revert #1831, the `__file__` injection in safe_execfile / safe_execfile_ipy. This reverts commit 2717feb, reversing changes made to ea4f608. Pull request #1831 (fix #1814 set __file__ when running .ipy files) has been the source of a lot of grief: #2279: Setting __file__ to None breaks Mayavi import #2429: Using warnings.warn() results in TypeError In general the patch was inappropriate because it: 1. Fails to properly restore the context, by setting __file__ to None rather than deleting it. 2. Sets __file__ in the wrong dictionary (self.user_ns rather than where[0]).

File last commit:

r4872:34c10438
r8509:d3d37a3a merge
Show More
run_ipy_in_profiler.py
23 lines | 622 B | text/x-python | PythonLexer
/ tools / run_ipy_in_profiler.py
#!/usr/bin/env python
"""XXX - What exactly is the use of this script?
I (fperez) tried it quickly and it doesn't work in its current form. Either it
needs to be fixed and documented or removed.
"""
import cProfile as profile
import sys
#import profile
def main():
import IPython.ipapi
print "Entering ipython for profiling. Type 'Exit' for profiler report"
IPython.ipapi.launch_new_instance()
if len(sys.argv) == 1:
profile.run('main()', 'ipython_profiler_results')
import pstats
p = pstats.Stats(len(sys.argv) >1 and sys.argv[1] or 'ipython_profiler_results')
p.sort_stats('time').print_stats(30)