##// END OF EJS Templates
Clarified that 'notebook' also refers to the state of the computation inside the Notebook, but that this is the same as the content of the .ipynb file
Clarified that 'notebook' also refers to the state of the computation inside the Notebook, but that this is the same as the content of the .ipynb file

File last commit:

r11241:87956066
r11555:c260c6a1
Show More
development.txt
54 lines | 2.8 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.
* The input transformation framework has been reworked. This fixes some corner
cases, and adds more flexibility for projects which use IPython, like SymPy &
SAGE. For more details, see :doc:`/config/inputtransforms`.
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>`_.
* The ``InteractiveShell.cache_main_mod()`` method has been removed, and
:meth:`~IPython.core.interactiveshell.InteractiveShell.new_main_mod` has a
different signature, expecting a filename where earlier versions expected
a namespace. See :ghpull:`3555` for details.