ipython/ipython — pull request #1630 by minrk (2012-04-19 04:40:41+00:00)
Title: Merge divergent Kernel implementations

Work in progress.

The principal change is to merge the Kernel implementation used in IPython.parallel into that in ipkernel.

Changes involved in that:

* Use IOLoop/ZMQStreams in the Kernel
* add apply_request handler
* allow multiple input streams (control, mux, task)

Related changes along the way:

* add support for `silent` in `run_cell()`. Previously, execute_requests used run_code, which meant it didn't support IPython syntax.
* parallel `execute()` uses execute_request instead of apply

Changes still to make:

* pykernel has been removed, but various related configuration options remain, and should be scrubbed.

I don't know if this code belongs in 0.13 or should go in first thing in 0.14.dev. It's a pretty big change, and test coverage for this code is still relatively poor.