##// END OF EJS Templates
Document need to call doctest_reload() with older Python versions
Document need to call doctest_reload() with older Python versions

File last commit:

r10135:eee3d3bf
r10135:eee3d3bf
Show More
development.txt
46 lines | 2.3 KiB | text/plain | TextLexer
=====================
Development version
=====================
This document describes in-flight development work.
The CodeMirror js library has been updated fron 2.23 to 2.32
this might induce a few changes in behavior of keymaps in the notebook,
especially intenting/deindenting blocks that is now bound to Ctrl+] and ctr+[
* Exception types can now be displayed with a custom traceback, by defining a
``_render_traceback_()`` method which returns a list of strings, each
containing one line of the traceback.
* A new command, ``ipython history trim`` can be used to delete everything but
the last 1000 entries in the history database.
In-process kernels
------------------
The Python-language frontends, particularly the Qt console, may now communicate
with in-process kernels, in addition to the traditional out-of-process
kernels. An in-process kernel permits direct access to the kernel namespace,
which is necessary in some applications. It should be understood, however, that
the in-process kernel is not robust to bad user input and will block the main
(GUI) thread while executing. Developers must decide on a case-by-case basis
whether this tradeoff is appropriate for their application.
Backwards incompatible changes
------------------------------
* Calling :meth:`InteractiveShell.prefilter` will no longer perform static
transformations - the processing of escaped commands such as ``%magic`` and
``!system``, and stripping input prompts from code blocks. This functionality
was duplicated in :mod:`IPython.core.inputsplitter`, and the latter version
was already what IPython relied on. A new API to transform input will be ready
before release.
* Functions from :mod:`IPython.lib.inputhook` to control integration with GUI
event loops are no longer exposed in the top level of :mod:`IPython.lib`.
Code calling these should make sure to import them from
:mod:`IPython.lib.inputhook`.
* For all kernel managers, the ``sub_channel`` attribute has been renamed to
``iopub_channel``.
* Users on Python versions before 2.6.6, 2.7.1 or 3.2 will now need to call
:func:`IPython.utils.doctestreload.doctest_reload` to make doctests run
correctly inside IPython. Python releases since those versions are unaffected.
For details, see :ghpull:`3068` and `Python issue 8048 <http://bugs.python.org/issue8048>`_.