Previously `^C` would register as a regular test failure, and the test suite would continue, in which case halting `iptest` meant hitting `^C` nine times.
This change makes iptest take notice of sigint in a test runner, and aborts the run.
There's nothing there we should be running python tests on, and
occasionally python files may appear there that cause problems to nose
(e.g. mathjax ships a non-py3 valid conf.py that breaks py3 testing).
Add %%octave, %octave, %octave_pull and %octave_push magics to facilitate interaction with Octave via oct2py. This is similar in spirit to the R magic extension.
Rmagic extension to use R (the statistical package) seamlessly from IPython.
The rmagic extension allows R inline code as well as cell level magics. An example notebook is provided in docs/examples/notebooks/rmagic_extension.ipynb to demonstrate its usage.
Main points:
1) Allows capture of plots to R via inline png plots (like --pylab inline)
2) Allows capture of R's stdout() connection to the notebook
3) Allows simple push/pull for array data to/from R (via rpy2) with copy only on push to R -- this seems necessary.
Cython related magic functions: offers the new cell magics %%cython_inline, %%cython_pyximport and %%cython to make it very easy to put cython-accelerated code in a cell and have it loaded interactively.
The History will always appear empty, so history magics, etc. don't do anything. Readline history for a single session works fine.
Test suite should now pass without sqlite
* test_for uses import_item, instead of __import__
* test_for now allows a callback, for processing the result of import_item prior to comparison with min_zmq
* callback is only called when min_zmq is defined
* callback's default is to just return mod.__version__
* use this to check tornado version, and zmq as a version tuple
* fix pexpect check to use external.pexpect
IPDoctest replaces the normal doctest plugin. Previously we did this by
initializing the builtin plugins but skipping the doctest plugin.
However, if the user has a noserc file with 'with-doctest=1' or the
environment variable 'NOSE_WITH_DOCTEST', then nose will try and
initialize the doctest plugin when it isn't there, and barf. This
commit defers the removal of the doctest plugin to the configuration
stage, so doctest can be enabled before it is thrown away by us.
* use index on msg_id in mongodb backend (_table prevented some methods from working outside the session)
* purge_request improved to use fewer db calls
* mongodb testcase split into its own file
* Fix equality testing, NULL handling, in SQLiteDB backend
Before, calling figure() would produce a big blank area. This ensures
output is only returned if the figure has content.
Also added basic testing for pylabtools, for which we had none.
ported from numpy.testing.noseclasses, with the equivalent code
extracted into _numpy_testing_noseclasses in case numpy is not
installed.
removed some unused imports throughout
This will give us an easy way for users to report platform details,
without trying to cram lots of data into the version string.
Now, the version information in release.py is simple and doesn't
attempt to read version control data at runtime. We expose sys_info()
as a top-level function so it's very easy to remember/direct for new
users.
Minor doc/copyright notices updates in the same files.
* Renamed CachedOutput to displayhook.DisplayHook.
* Added methods that DisplayHook.__call__ uses to do its work.
These methods can now be overridden for the ZMQ kernel.
* Removed all hooks (result_display and generate_output_prompt)
that the outputcache was using. We need to add these back in
once we figure out what to do about hooks in general.