##// END OF EJS Templates
Merge pull request #1480 from minrk/npmagic...
Merge pull request #1480 from minrk/npmagic Fix %notebook magic, etc. nbformat unicode tests and fixes. * json.writes always gives unicode, so that `current.writes` can be trusted to give the same interface * setup base TestCase for nbformat tests, to consolidate code, and better test both file formats * add tests for reading/writing to files * allow `name` as kwarg to new_notebook to avoid unnecessary breakage of previous API. * remove fallback to xml, which would hide corrupt notebook files behind a nonsensical 'xml unsupported' message. Closes #1545, #1487.

File last commit:

r2524:4fe04245
r6479:c4cf9403 merge
Show More
ipgraph.txt
61 lines | 1.7 KiB | text/plain | TextLexer
Brian Granger
Continuing work on ipcontroller.
r2288 ====================================================
Notes on code execution in :class:`InteractiveShell`
====================================================
Overview
========
This section contains information and notes about the code execution
system in :class:`InteractiveShell`. This system needs to be refactored
and we are keeping notes about this process here.
Current design
==============
Here is a script that shows the relationships between the various
methods in :class:`InteractiveShell` that manage code execution::
import networkx as nx
import matplotlib.pyplot as plt
exec_init_cmd = 'exec_init_cmd'
interact = 'interact'
runlines = 'runlines'
runsource = 'runsource'
runcode = 'runcode'
push_line = 'push_line'
mainloop = 'mainloop'
embed_mainloop = 'embed_mainloop'
ri = 'raw_input'
prefilter = 'prefilter'
g = nx.DiGraph()
g.add_node(exec_init_cmd)
g.add_node(interact)
g.add_node(runlines)
g.add_node(runsource)
g.add_node(push_line)
g.add_node(mainloop)
g.add_node(embed_mainloop)
g.add_node(ri)
g.add_node(prefilter)
g.add_edge(exec_init_cmd, push_line)
g.add_edge(exec_init_cmd, prefilter)
g.add_edge(mainloop, exec_init_cmd)
g.add_edge(mainloop, interact)
g.add_edge(embed_mainloop, interact)
g.add_edge(interact, ri)
g.add_edge(interact, push_line)
g.add_edge(push_line, runsource)
g.add_edge(runlines, push_line)
g.add_edge(runlines, prefilter)
g.add_edge(runsource, runcode)
g.add_edge(ri, prefilter)
nx.draw_spectral(g, node_size=100, alpha=0.6, node_color='r',
font_size=10, node_shape='o')
plt.show()
Brian Granger
Work on the development docs....
r2524