##// END OF EJS Templates
Hide dynamically defined metaclass base from Sphinx....
Hide dynamically defined metaclass base from Sphinx. The inheritance diagram extension in Sphinx 1.2 stores class references, which Sphinx then tries to pickle. This chokes on our dynamically defined base classes from the with_metaclass function. Starting the name with an underscore makes Sphinx ignore the class. (Bug obscurity/fix simplicity) ratio is high.

File last commit:

r10285:5e1e98c2
r13584:cbe18349
Show More
client.py
33 lines | 1.3 KiB | text/x-python | PythonLexer
"""Implements a fully blocking kernel client.
Useful for test suites and blocking terminal interfaces.
"""
#-----------------------------------------------------------------------------
# Copyright (C) 2013 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING.txt, distributed as part of this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from IPython.utils.traitlets import Type
from IPython.kernel.client import KernelClient
from .channels import (
BlockingIOPubChannel, BlockingHBChannel,
BlockingShellChannel, BlockingStdInChannel
)
#-----------------------------------------------------------------------------
# Blocking kernel manager
#-----------------------------------------------------------------------------
class BlockingKernelClient(KernelClient):
# The classes to use for the various channels
shell_channel_class = Type(BlockingShellChannel)
iopub_channel_class = Type(BlockingIOPubChannel)
stdin_channel_class = Type(BlockingStdInChannel)
hb_channel_class = Type(BlockingHBChannel)