##// END OF EJS Templates
two-process interactive shell progress...
two-process interactive shell progress * execute payloads (e.g. page/pinfo output) are displayed and paged. * aborted replies don't crash frontend. * intermediate iopub is displayed as it comes * wait for kernel to start before printing first prompt. This gets the right number on the first prompt, and also avoids the log output from being drawn after the first prompt. * protect most of the interact block from keyboard interrupts, which could cause weird errors if ctrl-C was held for a while. * separate restart/wait prompt when kernel dies.

File last commit:

r5408:f19b1316 merge
r5616:7431cd60
Show More
__init__.py
39 lines | 1.5 KiB | text/x-python | PythonLexer
MinRK
cleaner error on pyzmq < 2.0.10.
r3317 #-----------------------------------------------------------------------------
Matthias BUSSONNIER
update copyright to 2011/20xx-2011...
r5390 # Copyright (C) 2010-2011 The IPython Development Team
MinRK
cleaner error on pyzmq < 2.0.10.
r3317 #
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING.txt, distributed as part of this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
MinRK
update zmq dependency to 2.1.4
r4028 # Verify zmq version dependency >= 2.1.4
MinRK
cleaner error on pyzmq < 2.0.10.
r3317 #-----------------------------------------------------------------------------
MinRK
warn on detection of libzmq 3
r4248 import warnings
Szabolcs Horvát
Now using distutils.version instead of setuptools
r5374 from distutils.version import LooseVersion as V
MinRK
warn on detection of libzmq 3
r4248
MinRK
use ROUTER/DEALER socket names instead of XREP/XREQ...
r4725 def check_for_zmq(minimum_version, module='IPython.zmq'):
try:
import zmq
except ImportError:
raise ImportError("%s requires pyzmq >= %s"%(module, minimum_version))
MinRK
cleaner error on pyzmq < 2.0.10.
r3317
MinRK
use ROUTER/DEALER socket names instead of XREP/XREQ...
r4725 pyzmq_version = zmq.__version__
Szabolcs Horvát
Cleaner minimum version comparison using setuptools to reduce chance of breakage (0.11 broke with pyzmq 2.1.10)
r5373
Szabolcs Horvát
Check for dev version of zmq per @minrk's request
r5386 if 'dev' not in pyzmq_version and V(pyzmq_version) < V(minimum_version):
MinRK
use ROUTER/DEALER socket names instead of XREP/XREQ...
r4725 raise ImportError("%s requires pyzmq >= %s, but you have %s"%(
module, minimum_version, pyzmq_version))
MinRK
cleaner error on pyzmq < 2.0.10.
r3317
MinRK
use ROUTER/DEALER socket names instead of XREP/XREQ...
r4725 # fix missing DEALER/ROUTER aliases in pyzmq < 2.1.9
if not hasattr(zmq, 'DEALER'):
zmq.DEALER = zmq.XREQ
if not hasattr(zmq, 'ROUTER'):
zmq.ROUTER = zmq.XREP
MinRK
warn on detection of libzmq 3
r4248
Szabolcs Horvát
Cleaner minimum version comparison using setuptools to reduce chance of breakage (0.11 broke with pyzmq 2.1.10)
r5373 if V(zmq.zmq_version()) >= V('4.0.0'):
MinRK
use ROUTER/DEALER socket names instead of XREP/XREQ...
r4725 warnings.warn("""libzmq 4 detected.
It is unlikely that IPython's zmq code will work properly.
Please install libzmq stable, which is 2.1.x or 2.2.x""",
RuntimeWarning)
MinRK
warn on detection of libzmq 3
r4248
MinRK
use ROUTER/DEALER socket names instead of XREP/XREQ...
r4725 check_for_zmq('2.1.4')